[media] gspca - sunplus: Fix some warnings and simplify code
Jean-Fran├žois Moine [Tue, 17 May 2011 08:32:39 +0000 (05:32 -0300)]
This patch removes warnings due to GSPCA_DEBUG unsetting. It implied
a simplification of the code.

Signed-off-by: Jean-Fran├žois Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

drivers/media/video/gspca/sunplus.c

index 543542a..b089c0d 100644 (file)
@@ -396,57 +396,6 @@ static void reg_w_riv(struct gspca_dev *gspca_dev,
                req, index, value);
 }
 
-/* read 1 byte */
-static u8 reg_r_1(struct gspca_dev *gspca_dev,
-                       u16 value)      /* wValue */
-{
-       int ret;
-
-       if (gspca_dev->usb_err < 0)
-               return 0;
-       ret = usb_control_msg(gspca_dev->dev,
-                       usb_rcvctrlpipe(gspca_dev->dev, 0),
-                       0x20,                   /* request */
-                       USB_DIR_IN | USB_TYPE_VENDOR | USB_RECIP_DEVICE,
-                       value,
-                       0,                      /* index */
-                       gspca_dev->usb_buf, 1,
-                       500);                   /* timeout */
-       if (ret < 0) {
-               err("reg_r_1 err %d", ret);
-               gspca_dev->usb_err = ret;
-               return 0;
-       }
-       return gspca_dev->usb_buf[0];
-}
-
-/* read 1 or 2 bytes */
-static u16 reg_r_12(struct gspca_dev *gspca_dev,
-                       u8 req,         /* bRequest */
-                       u16 index,      /* wIndex */
-                       u16 length)     /* wLength (1 or 2 only) */
-{
-       int ret;
-
-       if (gspca_dev->usb_err < 0)
-               return 0;
-       gspca_dev->usb_buf[1] = 0;
-       ret = usb_control_msg(gspca_dev->dev,
-                       usb_rcvctrlpipe(gspca_dev->dev, 0),
-                       req,
-                       USB_DIR_IN | USB_TYPE_VENDOR | USB_RECIP_DEVICE,
-                       0,              /* value */
-                       index,
-                       gspca_dev->usb_buf, length,
-                       500);
-       if (ret < 0) {
-               err("reg_r_12 err %d", ret);
-               gspca_dev->usb_err = ret;
-               return 0;
-       }
-       return (gspca_dev->usb_buf[1] << 8) + gspca_dev->usb_buf[0];
-}
-
 static void write_vector(struct gspca_dev *gspca_dev,
                        const struct cmd *data, int ncmds)
 {
@@ -473,44 +422,46 @@ static void setup_qtable(struct gspca_dev *gspca_dev,
 static void spca504_acknowledged_command(struct gspca_dev *gspca_dev,
                             u8 req, u16 idx, u16 val)
 {
-       u16 notdone;
-
        reg_w_riv(gspca_dev, req, idx, val);
-       notdone = reg_r_12(gspca_dev, 0x01, 0x0001, 1);
+       reg_r(gspca_dev, 0x01, 0x0001, 1);
+       PDEBUG(D_FRAM, "before wait 0x%04x", gspca_dev->usb_buf[0]);
        reg_w_riv(gspca_dev, req, idx, val);
 
-       PDEBUG(D_FRAM, "before wait 0x%04x", notdone);
-
        msleep(200);
-       notdone = reg_r_12(gspca_dev, 0x01, 0x0001, 1);
-       PDEBUG(D_FRAM, "after wait 0x%04x", notdone);
+       reg_r(gspca_dev, 0x01, 0x0001, 1);
+       PDEBUG(D_FRAM, "after wait 0x%04x", gspca_dev->usb_buf[0]);
 }
 
+#ifdef GSPCA_DEBUG
 static void spca504_read_info(struct gspca_dev *gspca_dev)
 {
        int i;
        u8 info[6];
 
-       for (i = 0; i < 6; i++)
-               info[i] = reg_r_1(gspca_dev, i);
+       for (i = 0; i < 6; i++) {
+               reg_r(gspca_dev, 0, i, 1);
+               info[i] = gspca_dev->usb_buf[0];
+       }
        PDEBUG(D_STREAM,
                "Read info: %d %d %d %d %d %d."
                " Should be 1,0,2,2,0,0",
                info[0], info[1], info[2],
                info[3], info[4], info[5]);
 }
+#endif
 
 static void spca504A_acknowledged_command(struct gspca_dev *gspca_dev,
                        u8 req,
-                       u16 idx, u16 val, u16 endcode, u8 count)
+                       u16 idx, u16 val, u8 endcode, u8 count)
 {
        u16 status;
 
        reg_w_riv(gspca_dev, req, idx, val);
-       status = reg_r_12(gspca_dev, 0x01, 0x0001, 1);
+       reg_r(gspca_dev, 0x01, 0x0001, 1);
        if (gspca_dev->usb_err < 0)
                return;
-       PDEBUG(D_FRAM, "Status 0x%04x Need 0x%04x", status, endcode);
+       PDEBUG(D_FRAM, "Status 0x%02x Need 0x%02x",
+                       gspca_dev->usb_buf[0], endcode);
        if (!count)
                return;
        count = 200;
@@ -518,7 +469,8 @@ static void spca504A_acknowledged_command(struct gspca_dev *gspca_dev,
                msleep(10);
                /* gsmart mini2 write a each wait setting 1 ms is enough */
 /*             reg_w_riv(gspca_dev, req, idx, val); */
-               status = reg_r_12(gspca_dev, 0x01, 0x0001, 1);
+               reg_r(gspca_dev, 0x01, 0x0001, 1);
+               status = gspca_dev->usb_buf[0];
                if (status == endcode) {
                        PDEBUG(D_FRAM, "status 0x%04x after wait %d",
                                status, 200 - count);
@@ -555,17 +507,19 @@ static void spca504B_WaitCmdStatus(struct gspca_dev *gspca_dev)
        }
 }
 
+#ifdef GSPCA_DEBUG
 static void spca50x_GetFirmware(struct gspca_dev *gspca_dev)
 {
        u8 *data;
 
        data = gspca_dev->usb_buf;
        reg_r(gspca_dev, 0x20, 0, 5);
-       PDEBUG(D_STREAM, "FirmWare : %d %d %d %d %d ",
+       PDEBUG(D_STREAM, "FirmWare: %d %d %d %d %d",
                data[0], data[1], data[2], data[3], data[4]);
        reg_r(gspca_dev, 0x23, 0, 64);
        reg_r(gspca_dev, 0x23, 1, 64);
 }
+#endif
 
 static void spca504B_SetSizeType(struct gspca_dev *gspca_dev)
 {
@@ -578,7 +532,9 @@ static void spca504B_SetSizeType(struct gspca_dev *gspca_dev)
                reg_w_riv(gspca_dev, 0x31, 0, 0);
                spca504B_WaitCmdStatus(gspca_dev);
                spca504B_PollingDataReady(gspca_dev);
+#ifdef GSPCA_DEBUG
                spca50x_GetFirmware(gspca_dev);
+#endif
                reg_w_1(gspca_dev, 0x24, 0, 8, 2);              /* type */
                reg_r(gspca_dev, 0x24, 8, 1);
 
@@ -628,7 +584,8 @@ static void spca504_wait_status(struct gspca_dev *gspca_dev)
        cnt = 256;
        while (--cnt > 0) {
                /* With this we get the status, when return 0 it's all ok */
-               if (reg_r_12(gspca_dev, 0x06, 0x00, 1) == 0)
+               reg_r(gspca_dev, 0x06, 0x00, 1);
+               if (gspca_dev->usb_buf[0] == 0)
                        return;
                msleep(10);
        }
@@ -772,10 +729,14 @@ static int sd_init(struct gspca_dev *gspca_dev)
                /* fall thru */
        case BRIDGE_SPCA533:
                spca504B_PollingDataReady(gspca_dev);
+#ifdef GSPCA_DEBUG
                spca50x_GetFirmware(gspca_dev);
+#endif
                break;
        case BRIDGE_SPCA536:
+#ifdef GSPCA_DEBUG
                spca50x_GetFirmware(gspca_dev);
+#endif
                reg_r(gspca_dev, 0x00, 0x5002, 1);
                reg_w_1(gspca_dev, 0x24, 0, 0, 0);
                reg_r(gspca_dev, 0x24, 0, 1);
@@ -801,7 +762,9 @@ static int sd_init(struct gspca_dev *gspca_dev)
 /*     case BRIDGE_SPCA504: */
                PDEBUG(D_STREAM, "Opening SPCA504");
                if (sd->subtype == AiptekMiniPenCam13) {
+#ifdef GSPCA_DEBUG
                        spca504_read_info(gspca_dev);
+#endif
 
                        /* Set AE AWB Banding Type 3-> 50Hz 2-> 60Hz */
                        spca504A_acknowledged_command(gspca_dev, 0x24,
@@ -873,7 +836,9 @@ static int sd_start(struct gspca_dev *gspca_dev)
                break;
        case BRIDGE_SPCA504:
                if (sd->subtype == AiptekMiniPenCam13) {
+#ifdef GSPCA_DEBUG
                        spca504_read_info(gspca_dev);
+#endif
 
                        /* Set AE AWB Banding Type 3-> 50Hz 2-> 60Hz */
                        spca504A_acknowledged_command(gspca_dev, 0x24,
@@ -885,7 +850,9 @@ static int sd_start(struct gspca_dev *gspca_dev)
                                                        0, 0, 0x9d, 1);
                } else {
                        spca504_acknowledged_command(gspca_dev, 0x24, 8, 3);
+#ifdef GSPCA_DEBUG
                        spca504_read_info(gspca_dev);
+#endif
                        spca504_acknowledged_command(gspca_dev, 0x24, 8, 3);
                        spca504_acknowledged_command(gspca_dev, 0x24, 0, 0);
                }