aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3222-drm-amd-powerplay-sort-feature-status-index-by-asic-.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3222-drm-amd-powerplay-sort-feature-status-index-by-asic-.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3222-drm-amd-powerplay-sort-feature-status-index-by-asic-.patch90
1 files changed, 90 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3222-drm-amd-powerplay-sort-feature-status-index-by-asic-.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3222-drm-amd-powerplay-sort-feature-status-index-by-asic-.patch
new file mode 100644
index 00000000..d705e9da
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.19.8/3222-drm-amd-powerplay-sort-feature-status-index-by-asic-.patch
@@ -0,0 +1,90 @@
+From a33b06f3307dcacddf6d594160055314c3e061a7 Mon Sep 17 00:00:00 2001
+From: Kevin Wang <kevin1.wang@amd.com>
+Date: Wed, 31 Jul 2019 15:37:07 +0800
+Subject: [PATCH 3222/4256] drm/amd/powerplay: sort feature status index by
+ asic feature id for smu
+
+before this change, the pp_feature sysfs show feature enable state by
+logic feature id, it is not easy to read.
+this change will sort pp_features show index by asic feature id.
+
+before:
+features high: 0x00000623 low: 0xb3cdaffb
+00. DPM_PREFETCHER ( 0) : enabeld
+01. DPM_GFXCLK ( 1) : enabeld
+02. DPM_UCLK ( 3) : enabeld
+03. DPM_SOCCLK ( 4) : enabeld
+04. DPM_MP0CLK ( 5) : enabeld
+05. DPM_LINK ( 6) : enabeld
+06. DPM_DCEFCLK ( 7) : enabeld
+07. DS_GFXCLK (10) : enabeld
+08. DS_SOCCLK (11) : enabeld
+09. DS_LCLK (12) : disabled
+10. PPT (23) : enabeld
+11. TDC (24) : enabeld
+12. THERMAL (33) : enabeld
+13. RM (35) : disabled
+......
+
+after:
+features high: 0x00000623 low: 0xb3cdaffb
+00. DPM_PREFETCHER ( 0) : enabeld
+01. DPM_GFXCLK ( 1) : enabeld
+02. DPM_GFX_PACE ( 2) : disabled
+03. DPM_UCLK ( 3) : enabeld
+04. DPM_SOCCLK ( 4) : enabeld
+05. DPM_MP0CLK ( 5) : enabeld
+06. DPM_LINK ( 6) : enabeld
+07. DPM_DCEFCLK ( 7) : enabeld
+08. MEM_VDDCI_SCALING ( 8) : enabeld
+09. MEM_MVDD_SCALING ( 9) : enabeld
+10. DS_GFXCLK (10) : enabeld
+11. DS_SOCCLK (11) : enabeld
+12. DS_LCLK (12) : disabled
+13. DS_DCEFCLK (13) : enabeld
+......
+
+Signed-off-by: Kevin Wang <kevin1.wang@amd.com>
+Reviewed-by: Kenneth Feng <kenneth.feng@amd.com>
+Reviewed-by: Evan Quan <evan.quan@amd.com>
+---
+ drivers/gpu/drm/amd/powerplay/amdgpu_smu.c | 14 +++++++++++---
+ 1 file changed, 11 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
+index 330cc3258e61..8641b3a8f81e 100644
+--- a/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
++++ b/drivers/gpu/drm/amd/powerplay/amdgpu_smu.c
+@@ -63,6 +63,8 @@ size_t smu_sys_get_pp_feature_mask(struct smu_context *smu, char *buf)
+ uint32_t feature_mask[2] = { 0 };
+ int32_t feature_index = 0;
+ uint32_t count = 0;
++ uint32_t sort_feature[SMU_FEATURE_COUNT];
++ uint64_t hw_feature_count = 0;
+
+ ret = smu_feature_get_enabled_mask(smu, feature_mask, 2);
+ if (ret)
+@@ -75,11 +77,17 @@ size_t smu_sys_get_pp_feature_mask(struct smu_context *smu, char *buf)
+ feature_index = smu_feature_get_index(smu, i);
+ if (feature_index < 0)
+ continue;
++ sort_feature[feature_index] = i;
++ hw_feature_count++;
++ }
++
++ for (i = 0; i < hw_feature_count; i++) {
+ size += sprintf(buf + size, "%02d. %-20s (%2d) : %s\n",
+ count++,
+- smu_get_feature_name(smu, i),
+- feature_index,
+- !!smu_feature_is_enabled(smu, i) ? "enabeld" : "disabled");
++ smu_get_feature_name(smu, sort_feature[i]),
++ i,
++ !!smu_feature_is_enabled(smu, sort_feature[i]) ?
++ "enabeld" : "disabled");
+ }
+
+ failed:
+--
+2.17.1
+