The g_mbus_fmt operation only needs to return the current mbus frame
format and doesn't need to configure the hardware to do so. Fix it to
avoid requiring the chip to be powered on when calling the operation.

Signed-off-by: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
---
 drivers/media/video/ov2640.c |    6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/media/video/ov2640.c b/drivers/media/video/ov2640.c
index 3c2c5d3..7c44d1f 100644
--- a/drivers/media/video/ov2640.c
+++ b/drivers/media/video/ov2640.c
@@ -837,10 +837,8 @@ static int ov2640_g_fmt(struct v4l2_subdev *sd,
 
        if (!priv->win) {
                u32 width = W_SVGA, height = H_SVGA;
-               int ret = ov2640_set_params(client, &width, &height,
-                                           V4L2_MBUS_FMT_UYVY8_2X8);
-               if (ret < 0)
-                       return ret;
+               priv->win = ov2640_select_win(&width, &height);
+               priv->cfmt_code = V4L2_MBUS_FMT_UYVY8_2X8;
        }
 
        mf->width       = priv->win->width;
-- 
1.7.8.6

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to