Control: forwarded -1 https://gitlab.freedesktop.org/drm/amd/-/issues/3853 https://lore.kernel.org/all/20241227073700.3102801-1-alexander.deuc...@amd.com/
Hi Didier, On Sun, Jan 05, 2025 at 09:11:22PM +0100, Didier 'OdyX' Raboud wrote: > Package: src:linux > Version: 6.12.6-1 > Severity: important > Tags: upstream patch > > Since 6.12.6, on my Lenovo ThinkPad X13 Gen 2a (20XHCTO1WW), after a > suspend/resume cycle, I repeatedly get a first flickering, then completely > black screen. The only way to get the display to display anything is to > suspend/resume again, but that only works for some seconds. > > This looks like it corresponds to the report done here: > https://gitlab.freedesktop.org/drm/amd/-/issues/3853 > > Alexander Deucher proposed the following patch on the stable list > https://lore.kernel.org/all/20241227073700.3102801-1-alexander.deuc...@amd.com/ > > > Commit 73dae652dcac ("drm/amdgpu: rework resume handling for display (v2)") > > missed a small code change when it was backported resulting in an automatic > > backlight control breakage. Fix the backport. > > > > Note that this patch is not in Linus' tree as it is not required there; > > the bug was introduced in the backport. > > > > Fixes: 99a02eab8251 ("drm/amdgpu: rework resume handling for display (v2)") > > Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/3853 > > Signed-off-by: Alex Deucher <alexander.deuc...@amd.com> > > Cc: sta...@vger.kernel.org # 6.11.x > > --- > > drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 6 +++++- > > 1 file changed, 5 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > > b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > > index 51904906545e..45e28726e148 100644 > > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c > > @@ -3721,8 +3721,12 @@ static int amdgpu_device_ip_resume_phase3(struct > > amdgpu_device *adev) > > continue; > > if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE) { > > r = adev->ip_blocks[i].version->funcs->resume(adev); > > - if (r) > > + if (r) { > > + DRM_ERROR("resume of IP block <%s> failed %d\n", > > + > > adev->ip_blocks[i].version->funcs->name, r); > > return r; > > + } > > + adev->ip_blocks[i].status.hw = true; > > } > > } > > > > -- > > 2.47.1 > > > Browsing the unstable (6.12.8-1) source code ( > https://sources.debian.org/src/linux/6.12.8-1/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c/#L3724 > ), it looks like it has not yet been integrated upstream or by Debian. > > Is there anything (else than filing this bug) that I could do to help this > getting fixed in trixie? It is already queued up for the next 6.12.y update: https://git.kernel.org/pub/scm/linux/kernel/git/stable/stable-queue.git/tree/queue-6.12/drm-amdgpu-fix-backport-of-commit-73dae652dcac.patch As we do follow the 6.12.y stable series for trixie nothing else is needed and it will trickle in once we rebase to the version which will contain the patch. Regards, Salvatore