media: amphion: Fix pm_runtime_set_suspended() with runtime pm enabled

commit 316e74500d1c6589cba28cebe2864a0bceeb2396 upstream.

It is not valid to call pm_runtime_set_suspended() for devices
with runtime PM enabled because it returns -EAGAIN if it is enabled
already and working. So, call pm_runtime_disable() before to fix it.

Cc: stable@vger.kernel.org
Fixes: b50a64fc54 ("media: amphion: add amphion vpu device driver")
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Jinjie Ruan
2024-11-01 17:40:49 +08:00
committed by Greg Kroah-Hartman
parent 2155e91924
commit c72d1cd2be

View File

@@ -151,8 +151,8 @@ err_add_decoder:
media_device_cleanup(&vpu->mdev); media_device_cleanup(&vpu->mdev);
v4l2_device_unregister(&vpu->v4l2_dev); v4l2_device_unregister(&vpu->v4l2_dev);
err_vpu_deinit: err_vpu_deinit:
pm_runtime_set_suspended(dev);
pm_runtime_disable(dev); pm_runtime_disable(dev);
pm_runtime_set_suspended(dev);
return ret; return ret;
} }