On 6/10/26 08:29, Lazar, Lijo wrote:
On 10-Jun-26 5:39 PM, Priya Hosur wrote:
Merge METRICS_AVERAGE_VCLK and METRICS_AVERAGE_DCLK into a single
fall-through case mapping both to VclkFrequency, since SmuMetrics_t
has no DclkFrequency field and DCLK tracks VCLK on VCN. Add
VCLK1/DCLK1 metric handlers returning 0 as the struct has no fields
for these, avoiding UINT_MAX default that causes N/A in amd-smi.
Signed-off-by: Priya Hosur <[email protected]>
---
drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c b/
drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c
index 2fe006de927a..c977681d8946 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c
+++ b/drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_0_ppt.c
@@ -281,9 +281,13 @@ static int
smu_v14_0_0_get_smu_metrics_data(struct smu_context *smu,
*value = metrics->SocclkFrequency;
break;
case METRICS_AVERAGE_VCLK:
+ case METRICS_AVERAGE_DCLK:
+ /* No DclkFrequency in SmuMetrics_t; DCLK tracks VCLK on VCN */
*value = metrics->VclkFrequency;
break;
- case METRICS_AVERAGE_DCLK:
+ case METRICS_AVERAGE_VCLK1:
+ case METRICS_AVERAGE_DCLK1:
+ /* No Vclk1/Dclk1 in v14.0.0 SmuMetrics_t; avoid UINT_MAX
default */
These are clocks for the second VCN instance. If adding them to FW
metrics is not an option, then reporting the value as UINT_MAX is better
as that indicates N/A (not applicable/available).
Do the two instances share a common clock?
Thanks,
Lijo> *value = 0;
break;
case METRICS_AVERAGE_UCLK: