[media] omap3isp: Don't ignore subdev streamoff failures
Record the value returned by subdevs from s_stream(0) and handle stop failures when an error occurs. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Enrico Butera <ebutera@users.sourceforge.net> Acked-by: Sakari Ailus <sakari.ailus@iki.fi> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
This commit is contained in:
parent
24acf8b211
commit
eb228e897c
|
@ -999,16 +999,14 @@ static int isp_pipeline_disable(struct isp_pipeline *pipe)
|
||||||
video, s_stream, 0);
|
video, s_stream, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
v4l2_subdev_call(subdev, video, s_stream, 0);
|
ret = v4l2_subdev_call(subdev, video, s_stream, 0);
|
||||||
|
|
||||||
if (subdev == &isp->isp_res.subdev)
|
if (subdev == &isp->isp_res.subdev)
|
||||||
ret = isp_pipeline_wait(isp, isp_pipeline_wait_resizer);
|
ret |= isp_pipeline_wait(isp, isp_pipeline_wait_resizer);
|
||||||
else if (subdev == &isp->isp_prev.subdev)
|
else if (subdev == &isp->isp_prev.subdev)
|
||||||
ret = isp_pipeline_wait(isp, isp_pipeline_wait_preview);
|
ret |= isp_pipeline_wait(isp, isp_pipeline_wait_preview);
|
||||||
else if (subdev == &isp->isp_ccdc.subdev)
|
else if (subdev == &isp->isp_ccdc.subdev)
|
||||||
ret = isp_pipeline_wait(isp, isp_pipeline_wait_ccdc);
|
ret |= isp_pipeline_wait(isp, isp_pipeline_wait_ccdc);
|
||||||
else
|
|
||||||
ret = 0;
|
|
||||||
|
|
||||||
/* Handle stop failures. An entity that fails to stop can
|
/* Handle stop failures. An entity that fails to stop can
|
||||||
* usually just be restarted. Flag the stop failure nonetheless
|
* usually just be restarted. Flag the stop failure nonetheless
|
||||||
|
|
Loading…
Reference in New Issue