Re: [PATCH] uvc: update uvc_endpoint_max_bpi to handle USB_SPEED_WIRELESS devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Mon, 27 Jan 2014, Laurent Pinchart wrote:

> Hi Thomas,
> 
> Thank you for the patch.
> 
> On Friday 24 January 2014 15:17:28 Thomas Pugliese wrote:
> > Isochronous endpoints on devices with speed == USB_SPEED_WIRELESS can
> > have a max packet size ranging from 1-3584 bytes.  Add a case to
> > uvc_endpoint_max_bpi to handle USB_SPEED_WIRELESS.  Otherwise endpoints
> > for those devices will fall to the default case which masks off any
> > values > 2047.  This causes uvc_init_video to underestimate the
> > bandwidth available and fail to find a suitable alt setting for high
> > bandwidth video streams.
> 
> I'm not too familiar with wireless USB, but shouldn't the value be multiplied 
> by bMaxBurst from the endpoint companion descriptor ? Superspeed devices 
> provide the multiplied value in their endpoint companion descriptor's 
> wBytesPerInterval field, but there's no such field for wireless devices.
> 

For wireless USB isochronous endpoints, the values in the endpoint 
descriptor are the logical interval and max packet size that the endpoint 
can support.  They are provided for backwards compatibility for just this 
type of situation.  You are correct that the actual endpoint 
characteristics are the bMaxBurst, wOverTheAirPacketSize, and 
bOverTheAirInterval values from the WUSB endpoint companion descriptor but 
only the host controller really needs to know about those details.  In 
fact, the values from the endpoint companion descriptor might actually 
over-estimate the bandwidth available since the device can set bMaxBurst 
to a higher value than necessary to allow for retries.

> Out of curiosity, which device have you tested this with ?

The device is a standard wired UVC webcam: Quanta CQEC2B (VID: 0x0408, 
PID: 0x9005).  It is connected to an Alereon Wireless USB bridge dev kit 
which allows it to operate as a WUSB device.

Thomas

> 
> > Signed-off-by: Thomas Pugliese <thomas.pugliese@xxxxxxxxx>
> > ---
> >  drivers/media/usb/uvc/uvc_video.c | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> 
> -- 
> Regards,
> 
> Laurent Pinchart
> 
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux