From 1e89e2da48070da8ac221c37fea8fa82da127c34 Mon Sep 17 00:00:00 2001
From: Jean-Francois Moine <moinejf@free.fr>
Date: Wed, 3 Sep 2008 17:12:15 -0300
Subject: [PATCH] V4L/DVB (8818): gspca: Reinitialize the device on resume.

Signed-off-by: Jean-Francois Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
---
 drivers/media/video/gspca/gspca.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/media/video/gspca/gspca.c b/drivers/media/video/gspca/gspca.c
index e7e73ec7134c8..1767991c1f4b0 100644
--- a/drivers/media/video/gspca/gspca.c
+++ b/drivers/media/video/gspca/gspca.c
@@ -1838,9 +1838,12 @@ int gspca_resume(struct usb_interface *intf)
 	struct gspca_dev *gspca_dev = usb_get_intfdata(intf);
 
 	gspca_dev->frozen = 0;
-	if (!gspca_dev->streaming)
-		return 0;
-	return gspca_init_transfer(gspca_dev);
+	if (gspca_dev->users != 0) {
+		gspca_dev->sd_desc->open(gspca_dev);
+		if (gspca_dev->streaming)
+			return gspca_init_transfer(gspca_dev);
+	}
+	return 0;
 }
 EXPORT_SYMBOL(gspca_resume);
 #endif
-- 
GitLab