[PATCH v6 0/5] drm/v3d: Fix GPU reset issues on the Raspberry Pi 5

Maíra Canal mcanal at igalia.com
Sun Mar 23 14:45:12 UTC 2025


On 17/03/25 22:01, Maíra Canal wrote:
> This series addresses GPU reset issues reported in [1], where running a
> long compute job would trigger repeated GPU resets, leading to a UI
> freeze.
> 
> The patches that prevent the same faulty job from being resubmitted in a
> loop were merged in drm-misc/drm-misc-fixes in v4.
> 
> However, those patches don't solve the issue entirely. Even with a single
> GPU reset, the UI still freezes on the Raspberry Pi 5, indicating a GPU
> hang. Patches #1, #3, and #5 address this by properly configuring the
> V3D_SMS registers, which are required for power management and resets
> in V3D 7.1.
> 
> Patches #2 and #4 are associated changes related to the robustness
> of the DT bindings. Patch #3 added a new register bank to the DT binding
> and during the reviewing process, we identified points that could to be
> improved in the DT binding.
> 
> Patch #2 started by adding per-compatible register restrictions to ensure
> that the DTB accurately reflects the hardware design and #5 updates the DT
> maintainership, replacing Emma with the current v3d driver maintainer.
> 
> [1] https://github.com/raspberrypi/linux/issues/6660
> 
> Best Regards,
> - Maíra
> 

[...]

Applied to misc/kernel.git (drm-misc-next). Before applying PATCH 1/5, I
fixed the W=1 warning reported by the kernel test robot with the
following diff:

-       gen = (enum v3d_gen)of_device_get_match_data(dev);
+       gen = (uintptr_t)of_device_get_match_data(dev);

Thanks for all involved in the reviewing process!

Best Regards,
- Maíra

> ---
> Maíra Canal (5):
>        drm/v3d: Associate a V3D tech revision to all supported devices
>        dt-bindings: gpu: v3d: Add per-compatible register restrictions
>        dt-bindings: gpu: v3d: Add SMS register to BCM2712 compatible
>        dt-bindings: gpu: v3d: Add V3D driver maintainer as DT maintainer
>        drm/v3d: Use V3D_SMS registers for power on/off and reset on V3D 7.x
> 
>   .../devicetree/bindings/gpu/brcm,bcm-v3d.yaml      |  90 ++++++++++++---
>   drivers/gpu/drm/v3d/v3d_debugfs.c                  | 126 ++++++++++-----------
>   drivers/gpu/drm/v3d/v3d_drv.c                      |  62 +++++++++-
>   drivers/gpu/drm/v3d/v3d_drv.h                      |  22 +++-
>   drivers/gpu/drm/v3d/v3d_gem.c                      |  27 ++++-
>   drivers/gpu/drm/v3d/v3d_irq.c                      |   6 +-
>   drivers/gpu/drm/v3d/v3d_perfmon.c                  |   4 +-
>   drivers/gpu/drm/v3d/v3d_regs.h                     |  26 +++++
>   drivers/gpu/drm/v3d/v3d_sched.c                    |   6 +-
>   9 files changed, 271 insertions(+), 98 deletions(-)
> ---
> base-commit: 83a0237859bc5a9e0a716e1db8e7fd3cafd63259
> change-id: 20250224-v3d-gpu-reset-fixes-2d21fc70711d
> 



More information about the dri-devel mailing list