From 7c81c6e463dd4e646005f51e2dc60668076cab61 Mon Sep 17 00:00:00 2001 From: Liu Ying Date: Thu, 19 Nov 2015 13:43:58 +0800 Subject: MLK-11874 media: platform: mxc v4l2 capture: Correct suspend/resume for capture The capture channel should be correctly disabled in ->suspend() and enabled in ->resume() with ->enc_disable()/->enc_disable_csi() and ->enc_enable()/->enc_enable_csi() respectively. Signed-off-by: Liu Ying (cherry picked from commit ebaa070e98b4a85a66b29863db46b003946b3901) (cherry picked from commit f3610e3a5ef93a4567283d309278f1242cee255f) --- drivers/media/platform/mxc/capture/mxc_v4l2_capture.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/drivers/media/platform/mxc/capture/mxc_v4l2_capture.c b/drivers/media/platform/mxc/capture/mxc_v4l2_capture.c index 11dd48c939cc..9a42daf362b2 100644 --- a/drivers/media/platform/mxc/capture/mxc_v4l2_capture.c +++ b/drivers/media/platform/mxc/capture/mxc_v4l2_capture.c @@ -2908,8 +2908,13 @@ static int mxc_v4l2_suspend(struct platform_device *pdev, pm_message_t state) if (cam->overlay_on == true) stop_preview(cam); - if ((cam->capture_on == true) && cam->enc_disable) - cam->enc_disable(cam); + if (cam->capture_on == true) { + if (cam->enc_disable_csi) + cam->enc_disable_csi(cam); + + if (cam->enc_disable) + cam->enc_disable(cam); + } if (cam->sensor && cam->open_count) { if (cam->mclk_on[cam->mclk_source]) { @@ -2962,8 +2967,13 @@ static int mxc_v4l2_resume(struct platform_device *pdev) if (cam->overlay_on == true) start_preview(cam); - if (cam->capture_on == true) - mxc_streamon(cam); + if (cam->capture_on == true) { + if (cam->enc_enable) + cam->enc_enable(cam); + + if (cam->enc_enable_csi) + cam->enc_enable_csi(cam); + } up(&cam->busy_lock); -- cgit v1.2.3