Skip to contentSkip to conversation

FAILED: patch "[PATCH] drm/msm/a6xx: fix bogus hwcg register updates" failed to apply to 6.6-stable tree

PATCH New [email protected] 2 participants 2 messages Feb 3

Subsystems (4)
lore
Share & tools
lore

[email protected]

author maintainer
#0 lore raw

The patch below does not apply to the 6.6-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

To reproduce the conflict and resubmit, you may use the following commands:

git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.6.y
git checkout FETCH_HEAD
git cherry-pick -x dedb897f11c5d7e32c0e0a0eff7cec23a8047167
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2026020301-scam-headband-6c32@gregkh' --subject-prefix 'PATCH 6.6.y' HEAD^..

Possible dependencies:

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

From dedb897f11c5d7e32c0e0a0eff7cec23a8047167 Mon Sep 17 00:00:00 2001
From: Johan Hovold <[email protected]>
Date: Sun, 21 Dec 2025 17:45:52 +0100
Subject: [PATCH] drm/msm/a6xx: fix bogus hwcg register updates

The hw clock gating register sequence consists of register value pairs that are written to the GPU during initialisation.

The a690 hwcg sequence has two GMU registers in it that used to amount to random writes in the GPU mapping, but since commit 188db3d7fe66 ("drm/msm/a6xx: Rebase GMU register offsets") they trigger a fault as the updated offsets now lie outside the mapping. This in turn breaks boot of machines like the Lenovo ThinkPad X13s.

Note that the updates of these GMU registers is already taken care of properly since commit 40c297eb245b ("drm/msm/a6xx: Set GMU CGC properties on a6xx too"), but for some reason these two entries were left in the table.

Fixes 5e7665b5e484 ("drm/msm/adreno: Add Adreno A690 support")
Cc Bjorn Andersson <[email protected]>
Cc Konrad Dybcio <[email protected]>
Fixes 188db3d7fe66 ("drm/msm/a6xx: Rebase GMU register offsets")

Patchwork: https://patchwork.freedesktop.org/patch/695778/
Message-ID: <[email protected]>

(cherry picked from commit dcbd2f8280eea2c965453ed8c3c69d6f121e950b)
drivers/gpu/drm/msm/adreno/a6xx_catalog.c +0 -2
index ac9a95aab2fb..4c042133261c 100644
@@ -501,8 +501,6 @@ static const struct adreno_reglist a690_hwcg[] = {
 	{REG_A6XX_RBBM_CLOCK_CNTL_GMU_GX, 0x00000222},
 	{REG_A6XX_RBBM_CLOCK_DELAY_GMU_GX, 0x00000111},
 	{REG_A6XX_RBBM_CLOCK_HYST_GMU_GX, 0x00000555},
-	{REG_A6XX_GPU_GMU_AO_GMU_CGC_DELAY_CNTL, 0x10111},
-	{REG_A6XX_GPU_GMU_AO_GMU_CGC_HYST_CNTL, 0x5555},
 	{}
 };
 
maintainer
#1 lore raw

PATCH 1/1 drm/msm/a6xx: fix bogus hwcg register updates

From: Johan Hovold <[email protected]>

[ Upstream commit dedb897f11c5d7e32c0e0a0eff7cec23a8047167 ]

The hw clock gating register sequence consists of register value pairs that are written to the GPU during initialisation.

The a690 hwcg sequence has two GMU registers in it that used to amount to random writes in the GPU mapping, but since commit 188db3d7fe66 ("drm/msm/a6xx: Rebase GMU register offsets") they trigger a fault as the updated offsets now lie outside the mapping. This in turn breaks boot of machines like the Lenovo ThinkPad X13s.

Note that the updates of these GMU registers is already taken care of properly since commit 40c297eb245b ("drm/msm/a6xx: Set GMU CGC properties on a6xx too"), but for some reason these two entries were left in the table.

Fixes 5e7665b5e484 ("drm/msm/adreno: Add Adreno A690 support")
Cc Bjorn Andersson <[email protected]>
Cc Konrad Dybcio <[email protected]>
Fixes 188db3d7fe66 ("drm/msm/a6xx: Rebase GMU register offsets")

Patchwork: https://patchwork.freedesktop.org/patch/695778/
Message-ID: <[email protected]>

(cherry picked from commit dcbd2f8280eea2c965453ed8c3c69d6f121e950b)
[ Applied fix to a6xx_gpu.c instead of a6xx_catalog.c ]
---
 drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 2 --
 1 file changed, 2 deletions(-)
drivers/gpu/drm/msm/adreno/a6xx_gpu.c +0 -2
index 4654c0f362c7d..6666d8f6c17a6 100644
@@ -690,8 +690,6 @@ const struct adreno_reglist a690_hwcg[] = {
 	{REG_A6XX_RBBM_CLOCK_DELAY_GMU_GX, 0x00000111},
 	{REG_A6XX_RBBM_CLOCK_HYST_GMU_GX, 0x00000555},
 	{REG_A6XX_GPU_GMU_AO_GMU_CGC_MODE_CNTL, 0x20200},
-	{REG_A6XX_GPU_GMU_AO_GMU_CGC_DELAY_CNTL, 0x10111},
-	{REG_A6XX_GPU_GMU_AO_GMU_CGC_HYST_CNTL, 0x5555},
 	{}
 };
 
Signature · 1 line
2.51.0