]> www.infradead.org Git - users/jedix/linux-maple.git/commit
drm/imagination: Add reset controller support for GPU initialization
authorMichal Wilczynski <m.wilczynski@samsung.com>
Fri, 18 Apr 2025 11:22:49 +0000 (13:22 +0200)
committerMatt Coster <matt.coster@imgtec.com>
Thu, 24 Apr 2025 10:08:48 +0000 (11:08 +0100)
commit3a2b7389feea9a7afd18d58cda59b7a989445f38
tree219ddca0920c1ceb273b7bc071e0e55466f6b88d
parent1300a7f8a7d4c5f88de30312cf34448b96539c23
drm/imagination: Add reset controller support for GPU initialization

All IMG Rogue GPUs include a reset line that participates in the
power-up sequence. On some SoCs (e.g., T-Head TH1520 and Banana Pi
BPI-F3), this reset line is exposed and must be driven explicitly to
ensure proper initialization.  On others, such as the currently
supported TI SoC, the reset logic is handled in hardware or firmware
without exposing the line directly. In platforms where the reset line is
externally accessible, if it is not driven correctly, the GPU may remain
in an undefined state, leading to instability or performance issues.

This commit adds a dedicated reset controller to the drm/imagination
driver.  By managing the reset line (where applicable) as part of normal
GPU bring-up, the driver ensures reliable initialization across
platforms regardless of whether the reset is controlled externally or
handled internally.

Signed-off-by: Michal Wilczynski <m.wilczynski@samsung.com>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
Link: https://lore.kernel.org/r/20250418-apr_18_reset_img-v6-2-85a06757b698@samsung.com
Signed-off-by: Matt Coster <matt.coster@imgtec.com>
drivers/gpu/drm/imagination/pvr_device.c
drivers/gpu/drm/imagination/pvr_device.h
drivers/gpu/drm/imagination/pvr_power.c