Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/panthor: Wait for _READY register when powering on

panthor_gpu_block_power_on() takes a register offset (rdy_reg) for the
purpose of waiting for the power transition to complete. However, a
copy/paste error converting to use the new 64 register functions
switched it to using the pwrtrans_reg register instead. Fix the function
to use the correct register.

Fixes: 4d230aa209ed ("drm/panthor: Add 64-bit and poll register accessors")
Signed-off-by: Steven Price <steven.price@arm.com>
Reviewed-by: Liviu Dudau <liviu.dudau@arm.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Link: https://lore.kernel.org/r/20250630140704.432409-1-steven.price@arm.com

+3 -2
+3 -2
drivers/gpu/drm/panthor/panthor_gpu.c
··· 297 297 298 298 gpu_write64(ptdev, pwron_reg, mask); 299 299 300 - ret = gpu_read64_relaxed_poll_timeout(ptdev, pwrtrans_reg, val, 301 - !(mask & val), 100, timeout_us); 300 + ret = gpu_read64_relaxed_poll_timeout(ptdev, rdy_reg, val, 301 + (mask & val) == val, 302 + 100, timeout_us); 302 303 if (ret) { 303 304 drm_err(&ptdev->base, "timeout waiting on %s:%llx readiness", 304 305 blk_name, mask);