On Wed, Aug 21, 2013 at 03:44:35PM +0100, Steve Cotton wrote:
> Hi Mathias,
>
> Sorry for a very late respose, replying to a 3-month old patch.
>
> Something looks odd in a558ccdcc71c - AFAICS these two calls to
> xhci_check_usb2_port_capability will always return the same value,
> so usb2_hw_lpm_besl_capable is always the same as usb2_hw_lpm_capable.
>
> > /* USB 2.0 xHCI 1.0 hardware LMP capability - section 7.2.2.1.3.2 */
> > #define XHCI_HLC (1 << 19)
> > +#define XHCI_BLC (1 << 19)
> >
> > @@ -4068,6 +4191,9 @@ int xhci_update_device(struct usb_hcd *hcd, struct
> > usb_device *udev)
> > if (xhci->hw_lpm_support == 1 &&
> > xhci_check_usb2_port_capability(xhci, portnum, XHCI_HLC)) {
> > udev->usb2_hw_lpm_capable = 1;
> > + if (xhci_check_usb2_port_capability(xhci, portnum,
> > + XHCI_BLC))
> > + udev->usb2_hw_lpm_besl_capable = 1;
> > ret = xhci_set_usb2_hardware_lpm(hcd, udev, 1);
> > if (!ret)
> > udev->usb2_hw_lpm_enabled = 1;
I'm confused.
The first call to xhci_check_usb2_port_capability() checks XHCI_HLC.
The second call to xhci_check_usb2_port_capability() checks XHCI_BLC.
One letter difference, I know, but they are two separate flags.
Oh, wait, I see what you mean. xhci-ext-caps.h defines the two flags to
be the same:
/* USB 2.0 xHCI 1.0 hardware LMP capability - section 7.2.2.1.3.2 */
#define XHCI_HLC (1 << 19)
#define XHCI_BLC (1 << 19)
Ugh! Ok, I'll fix this, nice catch.
Sarah Sharp
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html