]> git.ipfire.org Git - thirdparty/linux.git/commit
drm/amdgpu/pm: Handle SCLK offset correctly in overdrive for smu 14.0.2
authorTomasz Pakuła <tomasz.pakula.oficjalny@gmail.com>
Tue, 11 Mar 2025 21:38:33 +0000 (22:38 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 18 Mar 2025 20:34:06 +0000 (16:34 -0400)
commitd9d4cb224e4140f51847642aa5a4a5c3eb998af0
treee70fe9de9fb6ca4d75b81eeb1e3fa110a5d47c73
parentd60073294cc3b46b73d6de247e0e5ae8684a6241
drm/amdgpu/pm: Handle SCLK offset correctly in overdrive for smu 14.0.2

Currently, it seems like the code was carried over from RDNA3 because
it assumes two possible values to set. RDNA4, instead of having:
0: min SCLK
1: max SCLK
only has
0: SCLK offset

This change makes it so it only reports current offset value instead of
showing possible min/max values and their indices. Moreover, it now only
accepts the offset as a value, without the indice index.

Additionally, the lower bound was printed as %u by mistake.

Old:
OD_SCLK_OFFSET:
0: -500Mhz
1: 1000Mhz
OD_MCLK:
0: 97Mhz
1: 1259MHz
OD_VDDGFX_OFFSET:
0mV
OD_RANGE:
SCLK_OFFSET:    -500Mhz       1000Mhz
MCLK:      97Mhz       1500Mhz
VDDGFX_OFFSET:    -200mv          0mv

New:
OD_SCLK_OFFSET:
0Mhz
OD_MCLK:
0: 97Mhz
1: 1259MHz
OD_VDDGFX_OFFSET:
0mV
OD_RANGE:
SCLK_OFFSET:    -500Mhz       1000Mhz
MCLK:      97Mhz       1500Mhz
VDDGFX_OFFSET:    -200mv          0mv

Setting this offset:
Old: "s 1 <offset>"
New: "s <offset>"

Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/4036
Reviewed-by: Yang Wang <kevinyang.wang@amd.com>
Signed-off-by: Tomasz Pakuła <tomasz.pakula.oficjalny@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 1cfeb60e6e8837b1de5eb4e17df7cf31f4442144)
Cc: stable@vger.kernel.org # 6.12.x
drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_2_ppt.c