From: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
To: <amd-gfx@lists.freedesktop.org>
Cc: stylon.wang@amd.com, Sunpeng.Li@amd.com, Harry.Wentland@amd.com,
qingqing.zhuo@amd.com, Rodrigo.Siqueira@amd.com,
roman.li@amd.com, solomon.chiu@amd.com, jerry.zuo@amd.com,
Aurabindo.Pillai@amd.com, hamza.mahfooz@amd.com,
wayne.lin@amd.com, Chaitanya Dhere <chaitanya.dhere@amd.com>,
Bhawanpreet.Lakha@amd.com, agustin.gutierrez@amd.com,
pavle.kotarac@amd.com
Subject: [PATCH 28/31] drm/amd/display: Implement a pme workaround function
Date: Fri, 17 Jun 2022 15:35:09 -0400 [thread overview]
Message-ID: <20220617193512.3471076-29-Rodrigo.Siqueira@amd.com> (raw)
In-Reply-To: <20220617193512.3471076-1-Rodrigo.Siqueira@amd.com>
From: Chaitanya Dhere <chaitanya.dhere@amd.com>
[Why]
For DCN32 we do not have a pme workaround function defined that sends a
BacoAudio message. Default code had uses the DCN30 function for pme
workaround. PMFW headers are inconsistent with their message ID
definitions which cause ID's to clash leading to inconsistent system
behaviour. There is a clash with FCLK message due to inconsitent PMFW
headers.
[How]
Implement a new BacoAudio function to workaround the problem of
inconsistent PMFW headers in order to avoid BacoAudio message clasing
with FCLK Enable message.
Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: Chaitanya Dhere <chaitanya.dhere@amd.com>
---
.../gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c | 2 +-
.../amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.c | 8 ++++++++
.../amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.h | 1 +
3 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c
index e3abadeca0a6..b31adf5238d0 100644
--- a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c
+++ b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c
@@ -757,7 +757,7 @@ static void dcn32_enable_pme_wa(struct clk_mgr *clk_mgr_base)
if (!clk_mgr->smu_present)
return;
- dcn30_smu_set_pme_workaround(clk_mgr);
+ dcn32_smu_set_pme_workaround(clk_mgr);
}
static bool dcn32_is_smu_present(struct clk_mgr *clk_mgr_base)
diff --git a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.c b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.c
index d7c99e9179be..67ed8bf4510b 100644
--- a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.c
+++ b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.c
@@ -115,6 +115,14 @@ void dcn32_smu_transfer_wm_table_dram_2_smu(struct clk_mgr_internal *clk_mgr)
DALSMC_MSG_TransferTableDram2Smu, TABLE_WATERMARKS, NULL);
}
+void dcn32_smu_set_pme_workaround(struct clk_mgr_internal *clk_mgr)
+{
+ smu_print("SMU Set PME workaround\n");
+
+ dcn32_smu_send_msg_with_param(clk_mgr,
+ DALSMC_MSG_BacoAudioD3PME, 0, NULL);
+}
+
/* Returns the actual frequency that was set in MHz, 0 on failure */
unsigned int dcn32_smu_set_hard_min_by_freq(struct clk_mgr_internal *clk_mgr, uint32_t clk, uint16_t freq_mhz)
{
diff --git a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.h b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.h
index 352435edbd79..a68038a41972 100644
--- a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.h
+++ b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.h
@@ -39,6 +39,7 @@
void
dcn32_smu_send_fclk_pstate_message(struct clk_mgr_internal *clk_mgr, bool enable);
void dcn32_smu_transfer_wm_table_dram_2_smu(struct clk_mgr_internal *clk_mgr);
+void dcn32_smu_set_pme_workaround(struct clk_mgr_internal *clk_mgr);
void dcn32_smu_send_cab_for_uclk_message(struct clk_mgr_internal *clk_mgr, unsigned int num_ways);
void dcn32_smu_transfer_wm_table_dram_2_smu(struct clk_mgr_internal *clk_mgr);
unsigned int dcn32_smu_set_hard_min_by_freq(struct clk_mgr_internal *clk_mgr, uint32_t clk, uint16_t freq_mhz);
--
2.25.1
next prev parent reply other threads:[~2022-06-17 19:36 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-17 19:34 [PATCH 00/31] DC Patches June 17, 2022 Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 01/31] drm/amd/display: Remove compiler warning Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 02/31] drm/amd/display: Revert "drm/amd/display: Add flag to detect dpms force off during HPD" Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 03/31] drm/amd/display: Revert "drm/amd/display: turn DPMS off on connector unplug" Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 04/31] drm/amd/display: Release remote dc_sink under mst scenario Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 05/31] drm/amd/display: Take emulated dc_sink into account for HDCP Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 06/31] drm/amd/display: Drop unnecessary detect link code Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 07/31] drm/amd/display: add mst port output bw check Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 08/31] drm/amd/display: Fix eDP not light up on resume Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 09/31] drm/amd/display: Turn off internal backlight when plugging external monitor Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 10/31] drm/amd/display: Add SMU logging code Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 11/31] drm/amd/display: Fix DC warning at driver load Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 12/31] drm/amd/display: Change HDMI judgement condition Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 13/31] drm/amd/display: Enrich the log in MST payload update Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 14/31] drm/amd/display: Fix in overriding DP drive settings Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 15/31] drm/amd/display: rename lane_settings to hw_lane_settings Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 16/31] drm/amd/display: refactor function transmitter_to_phy_id Rodrigo Siqueira
2022-06-17 19:51 ` Nathan Chancellor
2022-06-20 15:32 ` Rodrigo Siqueira Jordao
2022-06-17 19:34 ` [PATCH 17/31] drm/amd/display: Change initializer to single brace Rodrigo Siqueira
2022-06-17 19:34 ` [PATCH 18/31] drm/amd/display: Fix typo in override_lane_settings Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 19/31] drm/amd/display: Handle downstream LTTPR with fixed VS sequence Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 20/31] drm/amd/display: Remove unused vendor specific w/a Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 21/31] drm/amd/display: extract update stream allocation to link_hwss Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 22/31] drm/amd/display: Fix in dp link-training when updating payload allocation table Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 23/31] drm/amd/display: Check minimum disp_clk and dpp_clk debug option Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 24/31] drm/amd/display: Update DPPCLK programming sequence Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 25/31] drm/amd/display: Fix divide-by-zero in DPPCLK and DISPCLK calculation Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 26/31] drm/amd/display: Update SW state correctly for FCLK Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 27/31] drm/amd/display: Get VCO frequency from registers Rodrigo Siqueira
2022-06-17 19:35 ` Rodrigo Siqueira [this message]
2022-06-17 19:35 ` [PATCH 29/31] drm/amd/display: Update hook dcn32_funcs Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 30/31] drm/amd/display: Drop duplicate define Rodrigo Siqueira
2022-06-17 19:35 ` [PATCH 31/31] drm/amd/display: 3.2.191 Rodrigo Siqueira
2022-06-20 13:30 ` [PATCH 00/31] DC Patches June 17, 2022 Wheeler, Daniel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220617193512.3471076-29-Rodrigo.Siqueira@amd.com \
--to=rodrigo.siqueira@amd.com \
--cc=Aurabindo.Pillai@amd.com \
--cc=Bhawanpreet.Lakha@amd.com \
--cc=Harry.Wentland@amd.com \
--cc=Sunpeng.Li@amd.com \
--cc=agustin.gutierrez@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=chaitanya.dhere@amd.com \
--cc=hamza.mahfooz@amd.com \
--cc=jerry.zuo@amd.com \
--cc=pavle.kotarac@amd.com \
--cc=qingqing.zhuo@amd.com \
--cc=roman.li@amd.com \
--cc=solomon.chiu@amd.com \
--cc=stylon.wang@amd.com \
--cc=wayne.lin@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox