From: Rosen Penev <rosenp@gmail.com>
To: stable@vger.kernel.org
Cc: "Kenneth Feng" <kenneth.feng@amd.com>,
"Alex Deucher" <alexander.deucher@amd.com>,
"Christian König" <christian.koenig@amd.com>,
"Xinhui Pan" <Xinhui.Pan@amd.com>,
"David Airlie" <airlied@gmail.com>,
"Simona Vetter" <simona@ffwll.ch>,
amd-gfx@lists.freedesktop.org (open list:AMD POWERPLAY AND SWSMU),
dri-devel@lists.freedesktop.org (open list:DRM DRIVERS),
linux-kernel@vger.kernel.org (open list)
Subject: [PATCH 2/2] Revert "drm/amd/pm: Disable SCLK switching on Oland with high pixel clocks (v3)"
Date: Fri, 20 Feb 2026 19:44:02 -0800 [thread overview]
Message-ID: <20260221034402.69537-3-rosenp@gmail.com> (raw)
In-Reply-To: <20260221034402.69537-1-rosenp@gmail.com>
This reverts commit 0bb91bed82d414447f2e56030d918def6383c026.
This commit breaks stable kernels older than 6.18 that are booted with
radeon.si_support=0 amdgpu.si_support=1 amdgpu.dc=1
In 6.17, threre are further commits that are needed to get the DC
codepath in amdgpu for Southern Islands GPUs working but they seem to be
too much of a hastle to backport cleanly. The simplest solution is to
revert this problematic commit
Cc: Timur Kristóf <timur.kristof@gmail.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c | 31 ----------------------
1 file changed, 31 deletions(-)
diff --git a/drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c b/drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
index 05eaa06dfa34..c4386c86153b 100644
--- a/drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
+++ b/drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
@@ -3426,14 +3426,12 @@ static void si_apply_state_adjust_rules(struct amdgpu_device *adev,
{
struct si_ps *ps = si_get_ps(rps);
struct amdgpu_clock_and_voltage_limits *max_limits;
- struct amdgpu_connector *conn;
bool disable_mclk_switching = false;
bool disable_sclk_switching = false;
u32 mclk, sclk;
u16 vddc, vddci, min_vce_voltage = 0;
u32 max_sclk_vddc, max_mclk_vddci, max_mclk_vddc;
u32 max_sclk = 0, max_mclk = 0;
- u32 high_pixelclock_count = 0;
int i;
if (adev->asic_type == CHIP_HAINAN) {
@@ -3466,35 +3464,6 @@ static void si_apply_state_adjust_rules(struct amdgpu_device *adev,
}
}
- /* We define "high pixelclock" for SI as higher than necessary for 4K 30Hz.
- * For example, 4K 60Hz and 1080p 144Hz fall into this category.
- * Find number of such displays connected.
- */
- for (i = 0; i < adev->mode_info.num_crtc; i++) {
- if (!(adev->pm.dpm.new_active_crtcs & (1 << i)) ||
- !adev->mode_info.crtcs[i]->enabled)
- continue;
-
- conn = to_amdgpu_connector(adev->mode_info.crtcs[i]->connector);
-
- if (conn->pixelclock_for_modeset > 297000)
- high_pixelclock_count++;
- }
-
- /* These are some ad-hoc fixes to some issues observed with SI GPUs.
- * They are necessary because we don't have something like dce_calcs
- * for these GPUs to calculate bandwidth requirements.
- */
- if (high_pixelclock_count) {
- /* On Oland, we observe some flickering when two 4K 60Hz
- * displays are connected, possibly because voltage is too low.
- * Raise the voltage by requiring a higher SCLK.
- * (Voltage cannot be adjusted independently without also SCLK.)
- */
- if (high_pixelclock_count > 1 && adev->asic_type == CHIP_OLAND)
- disable_sclk_switching = true;
- }
-
if (rps->vce_active) {
rps->evclk = adev->pm.dpm.vce_states[adev->pm.dpm.vce_level].evclk;
rps->ecclk = adev->pm.dpm.vce_states[adev->pm.dpm.vce_level].ecclk;
--
2.53.0
next prev parent reply other threads:[~2026-02-21 3:44 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-21 3:44 [PATCH 0/2] 6.12 and below: amdgpu: fix panic with SI and DC Rosen Penev
2026-02-21 3:44 ` [PATCH 1/2] Revert "drm/amd/pm: Disable MCLK switching on SI at high pixel clocks" Rosen Penev
2026-02-21 5:40 ` Greg KH
2026-02-21 5:54 ` Rosen Penev
2026-02-21 6:33 ` Greg KH
2026-02-21 3:44 ` Rosen Penev [this message]
2026-02-21 5:41 ` [PATCH 2/2] Revert "drm/amd/pm: Disable SCLK switching on Oland with high pixel clocks (v3)" Greg KH
2026-02-21 5:52 ` Rosen Penev
2026-02-21 6:33 ` Greg KH
2026-02-21 8:48 ` Rosen Penev
2026-02-21 5:41 ` [PATCH 0/2] 6.12 and below: amdgpu: fix panic with SI and DC Greg KH
2026-02-21 5:55 ` Rosen Penev
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=20260221034402.69537-3-rosenp@gmail.com \
--to=rosenp@gmail.com \
--cc=Xinhui.Pan@amd.com \
--cc=airlied@gmail.com \
--cc=alexander.deucher@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=christian.koenig@amd.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=kenneth.feng@amd.com \
--cc=linux-kernel@vger.kernel.org \
--cc=simona@ffwll.ch \
--cc=stable@vger.kernel.org \
/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