lkml.org 
[lkml]   [2009]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: 2.6.30: suspend-to-ram, second s2r wakes up immediately
    On Mon, 29 Jun 2009, Thomas Meyer wrote:

    > > > T: Bus=01 Lev=01 Prnt=01 Port=05 Cnt=02 Dev#= 47 Spd=480 MxCh= 4
    > > > D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=02 MxPS=64 #Cfgs= 1
    > > > P: Vendor=04b4 ProdID=6560 Rev= 0.09
    > > > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
    > > > I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=01 Driver=hub
    > > > E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=256ms
    > > > I:* If#= 0 Alt= 1 #EPs= 1 Cls=09(hub ) Sub=00 Prot=02 Driver=hub
    > > > E: Ad=81(I) Atr=03(Int.) MxPS= 1 Ivl=256ms
    > >
    > > This a separate (not built into the keyboard) powered hub, right?
    >
    > Yes. And this thing seems to be responsible for the instant resume. Not
    > using a USB 2.0 hub, than the problem doesn't occur any more!

    > > If you unplug the keyboard but leave the mouse attached, do you still
    > > get the immediate resumes?
    >
    > Yes. But not using a USB 2.0 hub, the problem goes away.

    It could be a problem with the hub. But it's worth noting that when
    you don't use the hub, your mouse and your keyboard end up using the
    OHCI controller instead of the EHCI controller. So it still might be a
    controller issue.

    > I guess the USB 2.0 hub does something differently than expected?!
    > Hardware bug or linux bug? (But re-plugging the mouse into the USB 2.0
    > hub, makes resume work again! Strange, mhh?)

    I'd say that takes Linux off the hook. The OS doesn't distinguish
    between the first mouse-plug-in and the second. So most likely it's a
    bug in the hub -- but it's hard to be certain.

    A good test would be to take the hub, keyboard, and mouse over to a
    different Linux computer and see what happens there.

    Another test is to put the hub back in its old place with the keyboard
    and mouse (but unplug the Broadcom) and then do:

    echo off >/sys/bus/usb/devices/1-6.2/power/level
    echo off >/sys/bus/usb/devices/1-6.3/power/level

    This will cause the keyboard and mouse to be suspended, and a few
    seconds later the hub and the root hub will suspend as well. Repeat
    the commands with "on" instead of "off" to power the devices back on.
    The usbmon log for this test might be interesting.


    > My current working setup involves no USB 2.0 hub and it's:
    >
    > T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh=10
    > B: Alloc= 39/900 us ( 4%), #Int= 3, #Iso= 0
    > D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
    > P: Vendor=1d6b ProdID=0001 Rev= 2.06
    > S: Manufacturer=Linux 2.6.30 ohci_hcd
    > S: Product=OHCI Host Controller
    > S: SerialNumber=0000:00:02.0
    > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
    > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
    > E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms
    >
    > T: Bus=02 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#= 4 Spd=1.5 MxCh= 0
    > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
    > P: Vendor=413c ProdID=2003 Rev= 1.00
    > S: Manufacturer=DELL
    > S: Product=DELL USB Keyboard
    > C:* #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=100mA
    > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid
    > E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
    > I:* If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid
    > E: Ad=82(I) Atr=03(Int.) MxPS= 8 Ivl=10ms
    >
    > T: Bus=02 Lev=01 Prnt=01 Port=05 Cnt=02 Dev#= 5 Spd=1.5 MxCh= 0
    > D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
    > P: Vendor=045e ProdID=0029 Rev= 1.08
    > S: Manufacturer=Microsoft
    > S: Product=Microsoft IntelliMouse® Optical
    > C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA
    > I:* If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid
    > E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=10ms
    >
    > T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh=10
    > B: Alloc= 0/800 us ( 0%), #Int= 1, #Iso= 0
    > D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
    > P: Vendor=1d6b ProdID=0002 Rev= 2.06
    > S: Manufacturer=Linux 2.6.30 ehci_hcd
    > S: Product=EHCI Host Controller
    > S: SerialNumber=0000:00:02.1
    > C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr= 0mA
    > I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
    > E: Ad=81(I) Atr=03(Int.) MxPS= 4 Ivl=256ms
    >
    > T: Bus=01 Lev=01 Prnt=01 Port=03 Cnt=01 Dev#= 23 Spd=480 MxCh= 0
    > D: Ver= 2.00 Cls=02(comm.) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
    > P: Vendor=0411 ProdID=00bc Rev= 0.06
    > S: Manufacturer=Broadcom
    > S: Product=WLI-U2-KG125S
    > S: SerialNumber=8057
    > C:* #Ifs= 2 Cfg#= 1 Atr=80 MxPwr=500mA
    > I:* If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=02 Prot=ff Driver=rndis_wlan
    > E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
    > I:* If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=rndis_wlan
    > E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
    > E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=125us

    Would you like to send a usbmon log showing a suspend/resume cycle with
    this setup (but unplug the Broadcom device first)?

    Alan Stern

    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2009-06-29 22:19    [W:0.028 / U:0.200 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site