From patchwork Mon Dec 13 13:03:26 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Jean-Francois Moine X-Patchwork-Id: 5039 Return-path: Envelope-to: mchehab@gaivota Delivery-date: Mon, 13 Dec 2010 11:03:11 -0200 Received: from mchehab by gaivota with local (Exim 4.72) (envelope-from ) id 1PS83b-0007Wo-AL for mchehab@gaivota; Mon, 13 Dec 2010 11:03:11 -0200 Received: from casper.infradead.org [85.118.1.10] by gaivota with IMAP (fetchmail-6.3.17) for (single-drop); Mon, 13 Dec 2010 11:03:11 -0200 (BRST) Received: from vger.kernel.org ([209.132.180.67]) by casper.infradead.org with esmtp (Exim 4.72 #1 (Red Hat Linux)) id 1PS81w-0006Am-Ep; Mon, 13 Dec 2010 13:01:28 +0000 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757542Ab0LMNB0 (ORCPT + 1 other); Mon, 13 Dec 2010 08:01:26 -0500 Received: from smtp5-g21.free.fr ([212.27.42.5]:34759 "EHLO smtp5-g21.free.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757498Ab0LMNB0 convert rfc822-to-8bit (ORCPT ); Mon, 13 Dec 2010 08:01:26 -0500 Received: from tele (unknown [82.245.201.222]) by smtp5-g21.free.fr (Postfix) with ESMTP id 34489D481B4; Mon, 13 Dec 2010 14:01:19 +0100 (CET) Date: Mon, 13 Dec 2010 14:03:26 +0100 From: Jean-Francois Moine To: Linux Media Mailing List , Mauro Carvalho Chehab Subject: [PATCH 3/6] gspca - sonixj: Add a flag in the driver_info table Message-ID: <20101213140326.569d150d@tele> X-Mailer: Claws Mail 3.7.8 (GTK+ 2.20.1; x86_64-pc-linux-gnu) Mime-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Sender: Mauro Carvalho Chehab Signed-off-by: Jean-François Moine diff --git a/drivers/media/video/gspca/sonixj.c b/drivers/media/video/gspca/sonixj.c index 5978676..bd5858e 100644 --- a/drivers/media/video/gspca/sonixj.c +++ b/drivers/media/video/gspca/sonixj.c @@ -64,6 +64,7 @@ struct sd { u8 jpegqual; /* webcam quality */ u8 reg18; + u8 flags; s8 ag_cnt; #define AG_CNT_START 13 @@ -96,6 +97,9 @@ enum sensors { SENSOR_SP80708, }; +/* device flags */ +#define PDN_INV 1 /* inverse pin S_PWR_DN / sn_xxx tables */ + /* V4L2 controls supported by the driver */ static void setbrightness(struct gspca_dev *gspca_dev); static void setcontrast(struct gspca_dev *gspca_dev); @@ -1763,7 +1767,8 @@ static int sd_config(struct gspca_dev *gspca_dev, struct cam *cam; sd->bridge = id->driver_info >> 16; - sd->sensor = id->driver_info; + sd->sensor = id->driver_info >> 8; + sd->flags = id->driver_info; cam = &gspca_dev->cam; if (sd->sensor == SENSOR_ADCM1700) { @@ -2947,7 +2952,11 @@ static const struct sd_desc sd_desc = { /* -- module initialisation -- */ #define BS(bridge, sensor) \ .driver_info = (BRIDGE_ ## bridge << 16) \ - | SENSOR_ ## sensor + | (SENSOR_ ## sensor << 8) +#define BSF(bridge, sensor, flags) \ + .driver_info = (BRIDGE_ ## bridge << 16) \ + | (SENSOR_ ## sensor << 8) \ + | flags static const __devinitdata struct usb_device_id device_table[] = { #if !defined CONFIG_USB_SN9C102 && !defined CONFIG_USB_SN9C102_MODULE {USB_DEVICE(0x0458, 0x7025), BS(SN9C120, MI0360)},