/[packages]/backports/8/kernel/current/SOURCES/drm-amd-display-limit-dcn32-to-1950mhz-display-clock.patch
ViewVC logotype

Contents of /backports/8/kernel/current/SOURCES/drm-amd-display-limit-dcn32-to-1950mhz-display-clock.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1906780 - (show annotations) (download)
Sun Nov 13 11:21:39 2022 UTC (17 months, 1 week ago) by tmb
File size: 2553 byte(s)
add current -stable queue
1 From bb7dfcf9824a48cbde67bbf4f5180f8901a7373d Mon Sep 17 00:00:00 2001
2 From: Sasha Levin <sashal@kernel.org>
3 Date: Thu, 20 Oct 2022 11:46:44 -0400
4 Subject: drm/amd/display: Limit dcn32 to 1950Mhz display clock
5
6 From: Jun Lei <jun.lei@amd.com>
7
8 [ Upstream commit e59843c4cdd68a369591630088171eeacce9859f ]
9
10 [why]
11 Hardware team recommends we limit dispclock to 1950Mhz for all DCN3.2.x
12
13 [how]
14 Limit to 1950 when initializing clocks.
15
16 Tested-by: Mark Broadworth <mark.broadworth@amd.com>
17 Reviewed-by: Alvin Lee <Alvin.Lee2@amd.com>
18 Acked-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
19 Signed-off-by: Jun Lei <jun.lei@amd.com>
20 Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
21 Cc: stable@vger.kernel.org # 6.0.x
22 Signed-off-by: Sasha Levin <sashal@kernel.org>
23 ---
24 .../gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c | 8 ++++----
25 1 file changed, 4 insertions(+), 4 deletions(-)
26
27 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
28 index f4c7bbd9961a..f3090ead9af5 100644
29 --- a/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c
30 +++ b/drivers/gpu/drm/amd/display/dc/clk_mgr/dcn32/dcn32_clk_mgr.c
31 @@ -157,6 +157,7 @@ void dcn32_init_clocks(struct clk_mgr *clk_mgr_base)
32 struct clk_mgr_internal *clk_mgr = TO_CLK_MGR_INTERNAL(clk_mgr_base);
33 unsigned int num_levels;
34 struct clk_limit_num_entries *num_entries_per_clk = &clk_mgr_base->bw_params->clk_table.num_entries_per_clk;
35 + unsigned int i;
36
37 memset(&(clk_mgr_base->clks), 0, sizeof(struct dc_clocks));
38 clk_mgr_base->clks.p_state_change_support = true;
39 @@ -205,18 +206,17 @@ void dcn32_init_clocks(struct clk_mgr *clk_mgr_base)
40 clk_mgr->dpm_present = true;
41
42 if (clk_mgr_base->ctx->dc->debug.min_disp_clk_khz) {
43 - unsigned int i;
44 -
45 for (i = 0; i < num_levels; i++)
46 if (clk_mgr_base->bw_params->clk_table.entries[i].dispclk_mhz
47 < khz_to_mhz_ceil(clk_mgr_base->ctx->dc->debug.min_disp_clk_khz))
48 clk_mgr_base->bw_params->clk_table.entries[i].dispclk_mhz
49 = khz_to_mhz_ceil(clk_mgr_base->ctx->dc->debug.min_disp_clk_khz);
50 }
51 + for (i = 0; i < num_levels; i++)
52 + if (clk_mgr_base->bw_params->clk_table.entries[i].dispclk_mhz > 1950)
53 + clk_mgr_base->bw_params->clk_table.entries[i].dispclk_mhz = 1950;
54
55 if (clk_mgr_base->ctx->dc->debug.min_dpp_clk_khz) {
56 - unsigned int i;
57 -
58 for (i = 0; i < num_levels; i++)
59 if (clk_mgr_base->bw_params->clk_table.entries[i].dppclk_mhz
60 < khz_to_mhz_ceil(clk_mgr_base->ctx->dc->debug.min_dpp_clk_khz))
61 --
62 2.35.1
63

  ViewVC Help
Powered by ViewVC 1.1.30