summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVikash Garodia <quic_vgarodia@quicinc.com>2022-04-12 16:15:11 +0300
committerMauro Carvalho Chehab <mchehab@kernel.org>2022-04-24 10:32:13 +0300
commit59685fdfac6d7343c4047f2acfbc5bce8971b0f9 (patch)
tree4c95ad6029478c2de5572052ab55e35a7d0962da
parent73664f107c0fafb59cd91e576b81c986adb74610 (diff)
downloadlinux-59685fdfac6d7343c4047f2acfbc5bce8971b0f9.tar.xz
media: venus: vdec: ensure venus is powered on during stream off
Video decoder driver auto-suspends the hardware if there is no exchange of command or response for certain amount of time. In auto suspended state, it becomes mandatory to power on the hardware before requesting it to process a command. The fix ensures the hardware is powered on during stop streaming. Signed-off-by: Vikash Garodia <quic_vgarodia@quicinc.com> Signed-off-by: Stanimir Varbanov <stanimir.varbanov@linaro.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
-rw-r--r--drivers/media/platform/qcom/venus/vdec.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/media/platform/qcom/venus/vdec.c b/drivers/media/platform/qcom/venus/vdec.c
index 91da3f509724..4ac113247ede 100644
--- a/drivers/media/platform/qcom/venus/vdec.c
+++ b/drivers/media/platform/qcom/venus/vdec.c
@@ -1200,6 +1200,8 @@ static void vdec_stop_streaming(struct vb2_queue *q)
struct venus_inst *inst = vb2_get_drv_priv(q);
int ret = -EINVAL;
+ vdec_pm_get_put(inst);
+
mutex_lock(&inst->lock);
if (q->type == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE)