aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm
diff options
context:
space:
mode:
authorKent Russell <kent.russell@amd.com>2019-08-23 09:13:18 -0400
committerAlex Deucher <alexander.deucher@amd.com>2019-08-26 16:20:32 -0500
commit23b7f6c41d4717b1638eca47e09d7e99fc7b9fd9 (patch)
tree1e2a4c3d5b4417e94ed243c022fecf4a7f20804c /drivers/gpu/drm
parentdrm/powerplay: Fix Vega20 Average Power value v4 (diff)
downloadlinux-dev-23b7f6c41d4717b1638eca47e09d7e99fc7b9fd9.tar.xz
linux-dev-23b7f6c41d4717b1638eca47e09d7e99fc7b9fd9.zip
drm/powerplay: Fix Vega20 power reading again
For the 40.46 SMU release, they changed CurrSocketPower to AverageSocketPower, but this was changed back in 40.47 so just check if it's 40.46 and make the appropriate change Tested with 40.45, 40.46 and 40.47 successfully Signed-off-by: Kent Russell <kent.russell@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm')
-rw-r--r--drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c7
-rw-r--r--drivers/gpu/drm/amd/powerplay/vega20_ppt.c7
2 files changed, 8 insertions, 6 deletions
diff --git a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
index e9de1c0a3b87..81658dc8fafc 100644
--- a/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
+++ b/drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
@@ -2101,10 +2101,11 @@ static int vega20_get_gpu_power(struct pp_hwmgr *hwmgr,
if (ret)
return ret;
- if (hwmgr->smu_version < 0x282e00)
- *query = metrics_table.CurrSocketPower << 8;
- else
+ /* For the 40.46 release, they changed the value name */
+ if (hwmgr->smu_version == 0x282e00)
*query = metrics_table.AverageSocketPower << 8;
+ else
+ *query = metrics_table.CurrSocketPower << 8;
return ret;
}
diff --git a/drivers/gpu/drm/amd/powerplay/vega20_ppt.c b/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
index 29b64ee53c29..6a14497257e4 100644
--- a/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
+++ b/drivers/gpu/drm/amd/powerplay/vega20_ppt.c
@@ -3065,10 +3065,11 @@ static int vega20_get_gpu_power(struct smu_context *smu, uint32_t *value)
if (ret)
return ret;
- if (smu_version < 0x282e00)
- *value = metrics.CurrSocketPower << 8;
- else
+ /* For the 40.46 release, they changed the value name */
+ if (smu_version == 0x282e00)
*value = metrics.AverageSocketPower << 8;
+ else
+ *value = metrics.CurrSocketPower << 8;
return 0;
}