Hi Felipe,

Thanks for the patch.

On Wednesday 28 Sep 2016 16:05:23 Felipe Balbi wrote:
> 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;

I believe you can remove the & 0x07ff here after patch 28/45.

This being said, wouldn't it be useful to introduce a helper function that 
performs the full computation instead of requiring usage of two helpers that 
both call __le16_to_cpu() on the same field ? Or possibly turn the whole 
uvc_endpoint_max_bpi() function into a core helper ? I haven't checked whether 
it can be useful to other drivers though.

>       case USB_SPEED_WIRELESS:
>               psize = usb_endpoint_maxp(&ep->desc);
>               return psize;

-- 
Regards,

Laurent Pinchart

--
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