diff options
author | Boris Brezillon <boris.brezillon@collabora.com> | 2024-12-11 08:54:18 +0100 |
---|---|---|
committer | Boris Brezillon <boris.brezillon@collabora.com> | 2024-12-11 10:04:05 +0100 |
commit | 303e9e981db6c9f0ccd8067f0971416d929be426 (patch) | |
tree | 8e6eaa0017b111bcb9260a2d369c7555bd65c3fd /drivers/gpu/drm/panthor/panthor_device.c | |
parent | b0758224e5d83d8ee153645b1e5de98085690b65 (diff) |
drm/panthor: Be robust against resume failures
When the runtime PM resume callback returns an error, it puts the device
in a state where it can't be resumed anymore. Make sure we can recover
from such transient failures by calling pm_runtime_set_suspended()
explicitly after a pm_runtime_resume_and_get() failure.
v3:
- Add R-b/A-b
v2:
- Add a comment explaining potential races in
panthor_device_resume_and_get()
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Adrian Larumbe <adrian.larumbe@collabora.com>
Acked-by: Steven Price <steven.price@arm.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20241211075419.2333731-5-boris.brezillon@collabora.com
Diffstat (limited to 'drivers/gpu/drm/panthor/panthor_device.c')
-rw-r--r-- | drivers/gpu/drm/panthor/panthor_device.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/panthor/panthor_device.c b/drivers/gpu/drm/panthor/panthor_device.c index 4faca2684324..5f9602bddc53 100644 --- a/drivers/gpu/drm/panthor/panthor_device.c +++ b/drivers/gpu/drm/panthor/panthor_device.c @@ -504,6 +504,7 @@ err_disable_core_clk: err_set_suspended: atomic_set(&ptdev->pm.state, PANTHOR_DEVICE_PM_STATE_SUSPENDED); + atomic_set(&ptdev->pm.recovery_needed, 1); return ret; } |