]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/amd/pm: Fix xgmi max speed reporting
authorLijo Lazar <lijo.lazar@amd.com>
Mon, 9 Mar 2026 09:47:00 +0000 (15:17 +0530)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 11 Mar 2026 17:58:08 +0000 (13:58 -0400)
Fix XGMI max bitrate/width reporting on SMUv13.0.12 SOCs. The data
format got changed when moved to static table from dynamic metrics
table.

Fixes: 1bec2f270766 ("drm/amd/pm: Fetch SMUv13.0.12 xgmi max speed/width")
Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
Reviewed-by: Asad Kamal <asad.kamal@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_12_ppt.c

index 8610f3da514fd2c4ee1a2633124b11ba8ac76677..54a86eb77cd52a132cfbb60f4af5d157a4fb8084 100644 (file)
@@ -269,8 +269,9 @@ static void smu_v13_0_12_init_xgmi_data(struct smu_context *smu,
        int ret;
 
        if (smu_table->tables[SMU_TABLE_SMU_METRICS].version >= 0x13) {
-               max_width = (uint8_t)static_metrics->MaxXgmiWidth;
-               max_speed = (uint16_t)static_metrics->MaxXgmiBitrate;
+               max_width = (uint8_t)SMUQ10_ROUND(static_metrics->MaxXgmiWidth);
+               max_speed =
+                       (uint16_t)SMUQ10_ROUND(static_metrics->MaxXgmiBitrate);
                ret = 0;
        } else {
                MetricsTable_t *metrics = (MetricsTable_t *)smu_table->metrics_table;