From e335f224e35f413775a549889318afe6bd0342b0 Mon Sep 17 00:00:00 2001
From: Erik Andr?n <erik.andren@gmail.com>
Date: Tue, 30 Dec 2008 07:47:11 -0300
Subject: V4L/DVB (11410): gspca - m5602-ov9650: Always init the ov9650 before
 starting a stream
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This is a hack preventing a suspend-to-ram/disk regression.

Signed-off-by: Erik Andrén <erik.andren@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
---
 drivers/media/video/gspca/m5602/m5602_ov9650.c | 5 +++++
 1 file changed, 5 insertions(+)

(limited to 'drivers')

diff --git a/drivers/media/video/gspca/m5602/m5602_ov9650.c b/drivers/media/video/gspca/m5602/m5602_ov9650.c
index bbf91356096..6581479c0b3 100644
--- a/drivers/media/video/gspca/m5602/m5602_ov9650.c
+++ b/drivers/media/video/gspca/m5602/m5602_ov9650.c
@@ -139,6 +139,7 @@ int ov9650_init(struct sd *sd)
 		data = 0x30;
 		err = m5602_write_sensor(sd, OV9650_MVFP, &data, 1);
 	}
+
 	return err;
 }
 
@@ -147,6 +148,10 @@ int ov9650_start(struct sd *sd)
 	int i, err = 0;
 	struct cam *cam = &sd->gspca_dev.cam;
 
+	err = ov9650_init(sd);
+	if (err < 0)
+		return err;
+
 	for (i = 0; i < ARRAY_SIZE(res_init_ov9650) && !err; i++) {
 		if (res_init_ov9650[i][0] == BRIDGE)
 			err = m5602_write_bridge(sd, res_init_ov9650[i][1], res_init_ov9650[i][2]);
-- 
cgit v1.2.3-18-g5258