Jiri Slaby ef7db2
From: Mario Limonciello <mario.limonciello@amd.com>
Jiri Slaby ef7db2
Date: Wed, 11 Jan 2023 15:52:31 -0600
Jiri Slaby ef7db2
Subject: [PATCH] drm/amd: Avoid ASSERT for some message failures
Jiri Slaby ef7db2
References: bsc#1012628
Jiri Slaby ef7db2
Patch-mainline: 6.2.3
Jiri Slaby ef7db2
Git-commit: 3e5019ee67760cd61b2a5fd605e1289c2f92d983
Jiri Slaby ef7db2
Jiri Slaby ef7db2
[ Upstream commit 3e5019ee67760cd61b2a5fd605e1289c2f92d983 ]
Jiri Slaby ef7db2
Jiri Slaby ef7db2
On DCN314 when resuming from s0i3 an ASSERT is shown indicating that
Jiri Slaby ef7db2
`VBIOSSMC_MSG_SetHardMinDcfclkByFreq` returned `VBIOSSMC_Result_Failed`.
Jiri Slaby ef7db2
Jiri Slaby ef7db2
This isn't a driver bug; it's a BIOS/configuration bug. To make this
Jiri Slaby ef7db2
easier to triage, add an explicit warning when this issue happens.
Jiri Slaby ef7db2
Jiri Slaby ef7db2
This matches the behavior utilized for failures with
Jiri Slaby ef7db2
`VBIOSSMC_MSG_TransferTableDram2Smu` configuration.
Jiri Slaby ef7db2
Jiri Slaby ef7db2
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Jiri Slaby ef7db2
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Jiri Slaby ef7db2
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Jiri Slaby ef7db2
Signed-off-by: Sasha Levin <sashal@kernel.org>
Jiri Slaby ef7db2
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Jiri Slaby ef7db2
---
Jiri Slaby ef7db2
 drivers/gpu/drm/amd/display/dc/clk_mgr/dcn314/dcn314_smu.c | 3 +++
Jiri Slaby ef7db2
 1 file changed, 3 insertions(+)
Jiri Slaby ef7db2
Jiri Slaby ef7db2
diff --git a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn314/dcn314_smu.c b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn314/dcn314_smu.c
Jiri Slaby ef7db2
index f47cfe6b..0765334f 100644
Jiri Slaby ef7db2
--- a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn314/dcn314_smu.c
Jiri Slaby ef7db2
+++ b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn314/dcn314_smu.c
Jiri Slaby ef7db2
@@ -146,6 +146,9 @@ static int dcn314_smu_send_msg_with_param(struct clk_mgr_internal *clk_mgr,
Jiri Slaby ef7db2
 		if (msg_id == VBIOSSMC_MSG_TransferTableDram2Smu &&
Jiri Slaby ef7db2
 		    param == TABLE_WATERMARKS)
Jiri Slaby ef7db2
 			DC_LOG_WARNING("Watermarks table not configured properly by SMU");
Jiri Slaby ef7db2
+		else if (msg_id == VBIOSSMC_MSG_SetHardMinDcfclkByFreq ||
Jiri Slaby ef7db2
+			 msg_id == VBIOSSMC_MSG_SetMinDeepSleepDcfclk)
Jiri Slaby ef7db2
+			DC_LOG_WARNING("DCFCLK_DPM is not enabled by BIOS");
Jiri Slaby ef7db2
 		else
Jiri Slaby ef7db2
 			ASSERT(0);
Jiri Slaby ef7db2
 		REG_WRITE(MP1_SMN_C2PMSG_91, VBIOSSMC_Result_OK);
Jiri Slaby ef7db2
-- 
Jiri Slaby ef7db2
2.35.3
Jiri Slaby ef7db2