Skip to content

Commit 8d03642

Browse files
Lijo Lazaralexdeucher
authored andcommitted
drm/amd/pm: Fix temperature unit of SMU v13.0.6
Temperature needs to be reported in millidegree Celsius. Signed-off-by: Lijo Lazar <lijo.lazar@amd.com> Reviewed-by: Yang Wang <kevinyang.wang@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
1 parent 6a92761 commit 8d03642

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_6_ppt.c

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -708,16 +708,19 @@ static int smu_v13_0_6_get_smu_metrics_data(struct smu_context *smu,
708708
*value = SMUQ10_TO_UINT(metrics->SocketPower) << 8;
709709
break;
710710
case METRICS_TEMPERATURE_HOTSPOT:
711-
*value = SMUQ10_TO_UINT(metrics->MaxSocketTemperature);
711+
*value = SMUQ10_TO_UINT(metrics->MaxSocketTemperature) *
712+
SMU_TEMPERATURE_UNITS_PER_CENTIGRADES;
712713
break;
713714
case METRICS_TEMPERATURE_MEM:
714-
*value = SMUQ10_TO_UINT(metrics->MaxHbmTemperature);
715+
*value = SMUQ10_TO_UINT(metrics->MaxHbmTemperature) *
716+
SMU_TEMPERATURE_UNITS_PER_CENTIGRADES;
715717
break;
716718
/* This is the max of all VRs and not just SOC VR.
717719
* No need to define another data type for the same.
718720
*/
719721
case METRICS_TEMPERATURE_VRSOC:
720-
*value = SMUQ10_TO_UINT(metrics->MaxVrTemperature);
722+
*value = SMUQ10_TO_UINT(metrics->MaxVrTemperature) *
723+
SMU_TEMPERATURE_UNITS_PER_CENTIGRADES;
721724
break;
722725
default:
723726
*value = UINT_MAX;

0 commit comments

Comments
 (0)