[media] gspca - main: rename build_ep_tb to build_isoc_ep_tb
authorHans de Goede <hdegoede@redhat.com>
Fri, 30 Dec 2011 10:58:10 +0000 (07:58 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Fri, 6 Jan 2012 11:00:46 +0000 (09:00 -0200)
After the "gspca: Fix bulk mode cameras no longer working (regression fix)"
patch build_ep_tb is no longer being called for bulk endpoints.

This patch renames build_ep_tb to build_isoc_ep_tb to make clear it should
only be called for isoc mode cameras.

This patch also:
- drops the no longer needed xfer parameter
- removes a check for bulk mode from the build_isoc_ep_tb code

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jean-François Moine <moinejf@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/gspca/gspca.c

index cdd43ff..5b8f4fc 100644 (file)
@@ -675,9 +675,8 @@ struct ep_tb_s {
  * build the table of the endpoints
  * and compute the minimum bandwidth for the image transfer
  */
-static int build_ep_tb(struct gspca_dev *gspca_dev,
+static int build_isoc_ep_tb(struct gspca_dev *gspca_dev,
                        struct usb_interface *intf,
-                       int xfer,
                        struct ep_tb_s *ep_tb)
 {
        struct usb_host_endpoint *ep;
@@ -695,13 +694,12 @@ static int build_ep_tb(struct gspca_dev *gspca_dev,
                ep_tb->bandwidth = 2000 * 2000 * 120;
                found = 0;
                for (j = 0; j < nbalt; j++) {
-                       ep = alt_xfer(&intf->altsetting[j], xfer);
+                       ep = alt_xfer(&intf->altsetting[j],
+                                     USB_ENDPOINT_XFER_ISOC);
                        if (ep == NULL)
                                continue;
                        psize = le16_to_cpu(ep->desc.wMaxPacketSize);
-                       if (!gspca_dev->cam.bulk)               /* isoc */
-                               psize = (psize & 0x07ff) *
-                                               (1 + ((psize >> 11) & 3));
+                       psize = (psize & 0x07ff) * (1 + ((psize >> 11) & 3));
                        bandwidth = psize * ep->desc.bInterval * 1000;
                        if (gspca_dev->dev->speed == USB_SPEED_HIGH
                         || gspca_dev->dev->speed == USB_SPEED_SUPER)
@@ -856,7 +854,7 @@ static int gspca_init_transfer(struct gspca_dev *gspca_dev)
        xfer = gspca_dev->cam.bulk ? USB_ENDPOINT_XFER_BULK
                                   : USB_ENDPOINT_XFER_ISOC;
 
-       /* if the subdriver forced an altsetting, get the endpoint */
+       /* if bulk or the subdriver forced an altsetting, get the endpoint */
        if (gspca_dev->alt != 0) {
                gspca_dev->alt--;       /* (previous version compatibility) */
                ep = alt_xfer(&intf->altsetting[gspca_dev->alt], xfer);
@@ -871,7 +869,7 @@ static int gspca_init_transfer(struct gspca_dev *gspca_dev)
 
        /* else, compute the minimum bandwidth
         * and build the endpoint table */
-               alt_idx = build_ep_tb(gspca_dev, intf, xfer, ep_tb);
+               alt_idx = build_isoc_ep_tb(gspca_dev, intf, ep_tb);
                if (alt_idx <= 0) {
                        pr_err("no transfer endpoint found\n");
                        ret = -EIO;