diff options
| author | Kenneth Feng <kenneth.feng@amd.com> | 2026-10-16 15:17:43 +0800 |
|---|---|---|
| committer | Alex Deucher <alexander.deucher@amd.com> | 2026-10-20 12:09:44 -0400 |
| commit | 44d0d3031e47973ed65fd327669d5e2eaaf6c565 (patch) | |
| tree | feb52a028c4ea31b9144ba7708462967b6991da0 /scripts/basic | |
| parent | 53d9ef2f518add783bb48a69d77bbc8aea99e911 (diff) | |
| download | linux-44d0d3031e47973ed65fd327669d5e2eaaf6c565.tar.gz linux-44d0d3031e47973ed65fd327669d5e2eaaf6c565.zip | |
drm/amd/pm:restate all customized OD features on every table upload for smu 13.0.0/smu 14.0.2
PMFW interprets OverDriveTable.FeatureCtrlMask as the complete set of
overdrive features that are currently overridden, not as a delta
describing the operation at hand. On import it resets every feature
whose bit is clear back to its default value - for the VF curve that
means zeroing VoltageOffsetPerZoneBoundary[] outright.
The driver assumed the opposite. smu_v14_0_2_od_edit_dpm_table() clears
the mask after a successful commit, so a subsequent above-default
power1_cap write goes through smu_v14_0_2_set_ppt_limit() and uploads a
table carrying only PP_OD_FEATURE_PPT_BIT. PMFW then drops the user's
voltage offset and reverts to the stock V/F curve, while the driver's
cached user table still reports the offset through pp_od_clk_voltage.
Closes: https://gitlab.freedesktop.org/drm/amd/-/work_items/5935
Signed-off-by: Kenneth Feng <kenneth.feng@amd.com>
Reviewed-by: Kevin Wang <kevin.wang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 1b63bb397db208a8f84778a9d9cafc93da9373eb)
Cc: stable@vger.kernel.org
Diffstat (limited to 'scripts/basic')
0 files changed, 0 insertions, 0 deletions
