Commit 4f5bdde3 authored by Nicholas Kazlauskas's avatar Nicholas Kazlauskas Committed by Alex Deucher
Browse files

drm/amd/display: Update PMFW z-state interface for DCN314



[Why]
Request from PMFW to change the messaging format to specify whether we
support z-state via individual bits.

[How]
Update the args we pass in the support message.

Fixes: d5c6909e ("drm/amd/display: Add DCN314 clock manager")
Tested-by: default avatarDaniel Wheeler <daniel.wheeler@amd.com>
Reviewed-by: default avatarCharlene Liu <Charlene.Liu@amd.com>
Reviewed-by: default avatarMario Limonciello <mario.limonciello@amd.com>
Acked-by: default avatarQingqing Zhuo <qingqing.zhuo@amd.com>
Signed-off-by: default avatarNicholas Kazlauskas <nicholas.kazlauskas@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org # 6.0
parent 6094b913
Loading
Loading
Loading
Loading
+3 −8
Original line number Diff line number Diff line
@@ -339,29 +339,24 @@ void dcn314_smu_set_zstate_support(struct clk_mgr_internal *clk_mgr, enum dcn_zs
	if (!clk_mgr->smu_present)
		return;

	if (!clk_mgr->base.ctx->dc->debug.enable_z9_disable_interface &&
			(support == DCN_ZSTATE_SUPPORT_ALLOW_Z10_ONLY))
		support = DCN_ZSTATE_SUPPORT_DISALLOW;


	// Arg[15:0] = 8/9/0 for Z8/Z9/disallow -> existing bits
	// Arg[16] = Disallow Z9 -> new bit
	switch (support) {

	case DCN_ZSTATE_SUPPORT_ALLOW:
		msg_id = VBIOSSMC_MSG_AllowZstatesEntry;
		param = 9;
		param = (1 << 10) | (1 << 9) | (1 << 8);
		break;

	case DCN_ZSTATE_SUPPORT_DISALLOW:
		msg_id = VBIOSSMC_MSG_AllowZstatesEntry;
		param = 8;
		param = 0;
		break;


	case DCN_ZSTATE_SUPPORT_ALLOW_Z10_ONLY:
		msg_id = VBIOSSMC_MSG_AllowZstatesEntry;
		param = 0x00010008;
		param = (1 << 10);
		break;

	default: //DCN_ZSTATE_SUPPORT_UNKNOWN
+2 −1
Original line number Diff line number Diff line
@@ -881,7 +881,8 @@ static const struct dc_plane_cap plane_cap = {
};

static const struct dc_debug_options debug_defaults_drv = {
	.disable_z10 = true, /*hw not support it*/
	.disable_z10 = false,
	.enable_z9_disable_interface = true,
	.disable_dmcu = true,
	.force_abm_enable = false,
	.timing_trace = false,