From patchwork Sun Aug 4 22:20:27 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Antonio Ospite X-Patchwork-Id: 19538 X-Patchwork-Delegate: hdegoede@redhat.com Received: from mail.tu-berlin.de ([130.149.7.33]) by www.linuxtv.org with esmtp (Exim 4.72) (envelope-from ) id 1V66fH-00035q-AS; Mon, 05 Aug 2013 00:20:39 +0200 X-tubIT-Incoming-IP: 209.132.180.67 Received: from vger.kernel.org ([209.132.180.67]) by mail.tu-berlin.de (exim-4.72/mailfrontend-7) with esmtp id 1V66fF-0003ip-1R; Mon, 05 Aug 2013 00:20:39 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753949Ab3HDWUf (ORCPT + 1 other); Sun, 4 Aug 2013 18:20:35 -0400 Received: from smtp206.alice.it ([82.57.200.102]:39944 "EHLO smtp206.alice.it" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753932Ab3HDWUf (ORCPT ); Sun, 4 Aug 2013 18:20:35 -0400 Received: from jcn (87.3.148.246) by smtp206.alice.it (8.6.060.28) id 51FA3B2F00D24AD1; Mon, 5 Aug 2013 00:20:31 +0200 Received: from ao2 by jcn with local (Exim 4.80) (envelope-from ) id 1V66f7-0003il-Bq; Mon, 05 Aug 2013 00:20:29 +0200 From: Antonio Ospite To: Yaroslav Zakharuk Cc: Antonio Ospite , linux-media@vger.kernel.org, 1173723@bugs.launchpad.net Subject: [PATCH RFC] [media] gspca-ov534: don't call sd_start() from sd_init() Date: Mon, 5 Aug 2013 00:20:27 +0200 Message-Id: <1375654827-14270-1-git-send-email-ospite@studenti.unina.it> X-Mailer: git-send-email 1.8.4.rc1 In-Reply-To: <20130731133634.fbfe99f97026454593d3518f@studenti.unina.it> References: <20130731133634.fbfe99f97026454593d3518f@studenti.unina.it> X-Face: z*RaLf`X<@C75u6Ig9}{oW$H; 1_\2t5)({*|jhM/Vb; ]yA5\I~93>J<_`<4)A{':UrE Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-PMX-Version: 6.0.0.2142326, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2013.8.4.214206 X-PMX-Spam: Gauge=IIIIIIII, Probability=8%, Report=' MULTIPLE_RCPTS 0.1, HTML_00_01 0.05, HTML_00_10 0.05, BODYTEXTP_SIZE_3000_LESS 0, BODY_SIZE_1200_1299 0, BODY_SIZE_2000_LESS 0, BODY_SIZE_5000_LESS 0, BODY_SIZE_7000_LESS 0, URI_ENDS_IN_HTML 0, __ANY_URI 0, __CP_URI_IN_BODY 0, __HAS_FROM 0, __HAS_MSGID 0, __HAS_X_MAILER 0, __HAS_X_MAILING_LIST 0, __IN_REP_TO 0, __MIME_TEXT_ONLY 0, __MULTIPLE_RCPTS_CC_X2 0, __SANE_MSGID 0, __TO_MALFORMED_2 0, __URI_NO_WWW 0, __URI_NS ' --- Hi Yaroslav, the patch below should fix the Oops caused by sd_start() called too early, but I am not sure about why sd_start() was called from sd_init() for Hercules webcams in the first place, maybe the snippet marked with: /* (from ms-win trace) */ in sd_start() must be moved to sd_init() too. Let me know if the change below alone is enough and the webcam keeps working, a test with suspend and resume would good to have too. Thanks, Antonio drivers/media/usb/gspca/ov534.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/drivers/media/usb/gspca/ov534.c b/drivers/media/usb/gspca/ov534.c index 2e28c81..03a33c4 100644 --- a/drivers/media/usb/gspca/ov534.c +++ b/drivers/media/usb/gspca/ov534.c @@ -1305,8 +1305,7 @@ static int sd_init(struct gspca_dev *gspca_dev) ov534_set_led(gspca_dev, 1); sccb_w_array(gspca_dev, sensor_init[sd->sensor].val, sensor_init[sd->sensor].len); - if (sd->sensor == SENSOR_OV767x) - sd_start(gspca_dev); + sd_stopN(gspca_dev); /* set_frame_rate(gspca_dev); */