The patch number 10374 was added via Jean-Francois Moine <[email protected]>
to http://linuxtv.org/hg/v4l-dvb master development tree.

Kernel patches in this development tree may be modified to be backward
compatible with older kernels. Compatibility modifications will be
removed before inclusion into the mainstream Kernel

If anyone has any objections, please let us know by sending a message to:
        Linux Media Mailing List <[email protected]>

------

From: Jean-Francois Moine  <[email protected]>
gspca - zc3xx: Bad probe of the sensor adcm2700.


Priority: normal

Signed-off-by: Jean-Francois Moine <[email protected]>


---

 linux/drivers/media/video/gspca/zc3xx.c |   15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff -r e2d12cf2df01 -r c803b6937d87 linux/drivers/media/video/gspca/zc3xx.c
--- a/linux/drivers/media/video/gspca/zc3xx.c   Mon Jan 19 19:18:44 2009 +0100
+++ b/linux/drivers/media/video/gspca/zc3xx.c   Tue Jan 20 09:12:34 2009 +0100
@@ -7089,6 +7089,7 @@ static const struct sensor_by_chipset_re
        {0x8001, 0x13},
        {0x8000, 0x14},         /* CS2102K */
        {0x8400, 0x15},         /* TAS5130K */
+       {0x4001, 0x16},         /* ADCM2700 */
 };
 
 static int vga_3wr_probe(struct gspca_dev *gspca_dev)
@@ -7205,7 +7206,7 @@ static int vga_3wr_probe(struct gspca_de
        retword = i2c_read(gspca_dev, 0x01);
        if (retword != 0) {
                PDEBUG(D_PROBE, "probe 3wr vga type 0a ? ret: %04x", retword);
-               return retword;                 /* 0x6200/0x6100?? */
+               return retword;
        }
        return -1;
 }
@@ -7353,6 +7354,10 @@ static int sd_config(struct gspca_dev *g
                                sd->chip_revision);
                        sd->sensor = SENSOR_TAS5130CK;
                        break;
+               case 0x16:
+                       PDEBUG(D_PROBE, "Find Sensor ADCM2700");
+                       sd->sensor = SENSOR_ADCM2700;
+                       break;
                case 0x29:
                        PDEBUG(D_PROBE, "Find Sensor GC0305");
                        sd->sensor = SENSOR_GC0305;
@@ -7366,12 +7371,6 @@ static int sd_config(struct gspca_dev *g
                        sd->sensor = SENSOR_PO2030;
                        sd->sharpness = 0;              /* from win traces */
                        break;
-               case 0x6100:
-               case 0x6200:
-                       PDEBUG(D_PROBE, "Find Sensor ADCM2700");
-                       sd->sensor = SENSOR_ADCM2700;
-                       send_unknown(gspca_dev->dev, sd->sensor);
-                       break;
                case 0x7620:
                        PDEBUG(D_PROBE, "Find Sensor OV7620");
                        sd->sensor = SENSOR_OV7620;
@@ -7381,7 +7380,7 @@ static int sd_config(struct gspca_dev *g
                        sd->sensor = SENSOR_OV7620;     /* same sensor (?) */
                        break;
                default:
-                       PDEBUG(D_ERR|D_PROBE, "Unknown sensor %02x", sensor);
+                       PDEBUG(D_ERR|D_PROBE, "Unknown sensor %04x", sensor);
                        return -EINVAL;
                }
        }


---

Patch is available at: 
http://linuxtv.org/hg/v4l-dvb/rev/c803b6937d87998b8928ff1df016a3a4a1fa7932

_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to