We have introduced a helper to calculate multiplier
value from wMaxPacketSize. Start using it.

Cc: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
Cc: Mauro Carvalho Chehab <mche...@kernel.org>
Cc: <linux-me...@vger.kernel.org>
Signed-off-by: Felipe Balbi <felipe.ba...@linux.intel.com>
---
 drivers/media/usb/uvc/uvc_video.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/media/usb/uvc/uvc_video.c 
b/drivers/media/usb/uvc/uvc_video.c
index b5589d5f5da4..11e0e5f4e1c2 100644
--- a/drivers/media/usb/uvc/uvc_video.c
+++ b/drivers/media/usb/uvc/uvc_video.c
@@ -1467,6 +1467,7 @@ static unsigned int uvc_endpoint_max_bpi(struct 
usb_device *dev,
                                         struct usb_host_endpoint *ep)
 {
        u16 psize;
+       u16 mult;
 
        switch (dev->speed) {
        case USB_SPEED_SUPER:
@@ -1474,7 +1475,8 @@ static unsigned int uvc_endpoint_max_bpi(struct 
usb_device *dev,
                return le16_to_cpu(ep->ss_ep_comp.wBytesPerInterval);
        case USB_SPEED_HIGH:
                psize = usb_endpoint_maxp(&ep->desc);
-               return (psize & 0x07ff) * (1 + ((psize >> 11) & 3));
+               mult = usb_endpoint_maxp_mult(&ep->desc);
+               return (psize & 0x07ff) * mult;
        case USB_SPEED_WIRELESS:
                psize = usb_endpoint_maxp(&ep->desc);
                return psize;
-- 
2.10.1

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to