From: "Lazar, Lijo" <lijo.lazar@amd.com>
To: Yang Wang <kevinyang.wang@amd.com>, amd-gfx@lists.freedesktop.org
Cc: hawking.zhang@amd.com, alexander.deucher@amd.com
Subject: Re: [PATCH] drm/amd/pm: fix issue of missing '*' on pp_dpm_xxx nodes
Date: Tue, 13 Jan 2026 07:19:34 +0530 [thread overview]
Message-ID: <f2d12450-e4dd-487d-8d33-e482b8a32db3@amd.com> (raw)
In-Reply-To: <03788e07-8f4a-43ca-b455-d852546f0988@amd.com>
On 12-Jan-26 4:53 PM, Lazar, Lijo wrote:
>
>
> On 12-Jan-26 3:42 PM, Yang Wang wrote:
>> refine the code to fix '*' missing on pp_dpm_xxx series node.
>>
>> e.g.: missing '*' on navi10 pp_dpm_sclk
>> $ cat /sys/class/drm/card0/device/pp_dpm_sclk
>> 0: 300Mhz
>> 1: 1930Mhz (the symbol of '*' is missing)
>>
>> Fixes: d259c895d622 ("drm/amd/pm: Add a helper to show dpm table")
>
> This fix doesn't look related. Could you also add the sample values
> under which the existing logic fails?
>
Never mind. There is indeed a bug when current clock matches max clock.
Reviewed-by: Lijo Lazar <lijo.lazar@amd.com>
Thanks,
Lijo
> Thanks,
> Lijo
>
>>
>> Signed-off-by: Yang Wang <kevinyang.wang@amd.com>
>> ---
>> drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c | 31 +++++++++++++-------------
>> 1 file changed, 16 insertions(+), 15 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c b/drivers/gpu/drm/
>> amd/pm/swsmu/smu_cmn.c
>> index e0a508653b6a..60fc730bf81d 100644
>> --- a/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c
>> +++ b/drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c
>> @@ -1210,11 +1210,11 @@ int smu_cmn_print_dpm_clk_levels(struct
>> smu_context *smu,
>> struct smu_dpm_table *dpm_table,
>> uint32_t cur_clk, char *buf, int *offset)
>> {
>> - uint32_t min_clk, level_index, count;
>> - uint32_t freq_values[3] = { 0 };
>> + uint32_t min_clk, max_clk, level_index, count;
>> + uint32_t freq_values[3];
>> + int size, lvl, i;
>> bool is_fine_grained;
>> bool is_deep_sleep;
>> - int size, lvl, i;
>> bool freq_match;
>> if (!dpm_table || !buf)
>> @@ -1225,6 +1225,7 @@ int smu_cmn_print_dpm_clk_levels(struct
>> smu_context *smu,
>> count = dpm_table->count;
>> is_fine_grained = dpm_table->flags & SMU_DPM_TABLE_FINE_GRAINED;
>> min_clk = SMU_DPM_TABLE_MIN(dpm_table);
>> + max_clk = SMU_DPM_TABLE_MAX(dpm_table);
>> /* Deep sleep - current clock < min_clock/2, TBD: cur_clk = 0 as
>> GFXOFF */
>> is_deep_sleep = cur_clk < min_clk / 2;
>> @@ -1245,22 +1246,22 @@ int smu_cmn_print_dpm_clk_levels(struct
>> smu_context *smu,
>> freq_match ? "*" : "");
>> }
>> } else {
>> + count = 2;
>> freq_values[0] = min_clk;
>> - freq_values[2] = SMU_DPM_TABLE_MAX(dpm_table);
>> - freq_values[1] = cur_clk;
>> + freq_values[1] = max_clk;
>> - lvl = -1;
>> if (!is_deep_sleep) {
>> - lvl = 1;
>> - if (smu_cmn_freqs_match(cur_clk, freq_values[0]))
>> + if (smu_cmn_freqs_match(cur_clk, min_clk)) {
>> lvl = 0;
>> - else if (smu_cmn_freqs_match(cur_clk, freq_values[2]))
>> - lvl = 2;
>> - }
>> - count = 3;
>> - if (lvl != 1) {
>> - count = 2;
>> - freq_values[1] = freq_values[2];
>> + } else if (smu_cmn_freqs_match(cur_clk, max_clk)) {
>> + lvl = 1;
>> + } else {
>> + /* NOTE: use index '1' to show current clock value */
>> + lvl = 1;
>> + count = 3;
>> + freq_values[1] = cur_clk;
>> + freq_values[2] = max_clk;
>> + }
>> }
>> for (i = 0; i < count; i++) {
>
prev parent reply other threads:[~2026-01-13 1:49 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-12 10:12 [PATCH] drm/amd/pm: fix issue of missing '*' on pp_dpm_xxx nodes Yang Wang
2026-01-12 11:23 ` Lazar, Lijo
2026-01-13 1:49 ` Lazar, Lijo [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f2d12450-e4dd-487d-8d33-e482b8a32db3@amd.com \
--to=lijo.lazar@amd.com \
--cc=alexander.deucher@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=hawking.zhang@amd.com \
--cc=kevinyang.wang@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox