Hi, On Wed, May 07, 2014 at 05:45:32PM +0300, Mathias Nyman wrote: > On 05/06/2014 11:43 PM, Felipe Balbi wrote: > >Hi Mathias, > > > >I was using (up until today) v3.13 (on my desktop PC) to test LPM > >transitions against OMAP5. Since I was having some issues with U1 exit > >after some 200 iterations I decided to make sure v3.15-rc4 would have > >the same behavior but, to my surprise, xHCI doesn't do any LPM > >transitions anymore. > > > >What changed since v3.13 ? Why aren't LPM transitions enabled anymore ? > > > >I _do_ have an Intel chipset so XHCI_LPM_SUPPORT should be set. > > > >Any ideas ? > > > > I think these patches could be related: > > commit 25cd2882e2fc8bd8ed7acaee0ec979f11feda6d7 > usb/xhci: Change how we indicate a host supports Link PM. > > commit 140e3026a57ab7d830dab2f2c57796c222db0ea9 > Revert "usbcore: set lpm_capable field for LPM capable root hubs" > > Both of them are added after 3.13, and do additional checking before setting > udev->lpm_capable last commit could be broken, looking at my root hub's BOS desc I get: bU1DevExitLat 10 micro seconds bU2DevExitLat 512 micro seconds Likewise on the device that I'm connecting to that root hub: bU1DevExitLat 1 micro seconds bU2DevExitLat 500 micro seconds So it should be enabled, and yet I see on dmesg: [ 10.329092] usb 2-2.1.1: LPM exit latency is zeroed, disabling LPM. But I can't see how this would ever fail: 154 if (udev->bos->ss_cap->bU1devExitLat == 0 && 155 udev->bos->ss_cap->bU2DevExitLat == 0) { 156 if (udev->parent) 157 dev_info(&udev->dev, "LPM exit latency is zeroed, disabling LPM.\n"); 158 else 159 dev_info(&udev->dev, "We don't know the algorithms for LPM for this host, disabling LPM.\n"); 160 return 0; 161 } weird -- balbi
Attachment:
signature.asc
Description: Digital signature