drm/powerplay: Fix Vega20 power reading again
authorKent Russell <kent.russell@amd.com>
Fri, 23 Aug 2019 13:13:18 +0000 (09:13 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 26 Aug 2019 21:20:32 +0000 (16:20 -0500)
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>
drivers/gpu/drm/amd/powerplay/hwmgr/vega20_hwmgr.c
drivers/gpu/drm/amd/powerplay/vega20_ppt.c

index e9de1c0a3b87421b03804197111aeb9cc9ead031..81658dc8fafcbecfc685a1588ae8967af1b7abf0 100644 (file)
@@ -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;
 }
index 29b64ee53c2953c4bb70fc230360f497f5991005..6a14497257e43b8bc906f42b5d0c68fccdc93e1b 100644 (file)
@@ -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;
 }