From 1bdda407d60f8ac763c1fbc075f07cc5091f7a67 Mon Sep 17 00:00:00 2001 From: jsg Date: Mon, 19 Jun 2023 00:45:41 +0000 Subject: [PATCH] drm/amd/pm: reverse mclk clocks levels for SMU v13.0.5 From Tim Huang 1c729bd5b30fe8178c53aeebf6503ea38966f769 in linux-6.1.y/6.1.33 c1d35412b3e826ae8119e3fb5f51dd0fa5b6b567 in mainline linux --- sys/dev/pci/drm/amd/pm/swsmu/smu13/smu_v13_0_5_ppt.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/dev/pci/drm/amd/pm/swsmu/smu13/smu_v13_0_5_ppt.c b/sys/dev/pci/drm/amd/pm/swsmu/smu13/smu_v13_0_5_ppt.c index 66445964efb..0081fa607e0 100644 --- a/sys/dev/pci/drm/amd/pm/swsmu/smu13/smu_v13_0_5_ppt.c +++ b/sys/dev/pci/drm/amd/pm/swsmu/smu13/smu_v13_0_5_ppt.c @@ -866,7 +866,7 @@ out: static int smu_v13_0_5_print_clk_levels(struct smu_context *smu, enum smu_clk_type clk_type, char *buf) { - int i, size = 0, ret = 0; + int i, idx, size = 0, ret = 0; uint32_t cur_value = 0, value = 0, count = 0; uint32_t min = 0, max = 0; @@ -898,7 +898,8 @@ static int smu_v13_0_5_print_clk_levels(struct smu_context *smu, goto print_clk_out; for (i = 0; i < count; i++) { - ret = smu_v13_0_5_get_dpm_freq_by_index(smu, clk_type, i, &value); + idx = (clk_type == SMU_MCLK) ? (count - i - 1) : i; + ret = smu_v13_0_5_get_dpm_freq_by_index(smu, clk_type, idx, &value); if (ret) goto print_clk_out; -- 2.20.1