On Sat, 7 Jul 2012, Octavio Alvarez wrote: > On Sat, 07 Jul 2012 19:23:08 -0700, Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> > wrote: > > >> roothub.portstatus [4] 0x00000303 LSDA PPS PES CCS > >> roothub.portstatus [5] 0x00000303 LSDA PPS PES CCS > >> roothub.portstatus [6] 0x00000101 PPS CCS > > > > That's normal, except for the status of port 6 (which actually is port > > 7, since we normally count ports starting from 1). The port shows > > Current Connect Status, so something is connected to it -- but what? > > It looks like it was my pendrive. Disconnecting the mouse and keyboard > cleared CCS on [4] and [5] (not necesariliy in that order). > > Removing my pen drive cleared CCS on [6]. Okay, that explains that. More or less. Is this an old USB-1.1 pen drive? If it is USB-2.0 then I would expect it to connect to the EHCI controller, not the OHCI controller. > FYI, bisecting and other testing was done pretty much without my > pendrive all the time. Good. The fewer possible sources of confusion, the better. > I just tested suspend, just for the sake of it, and it still > wakes up right after sleep. > > > Can you post a complete dmesg log showing bootup with CONFIG_USB_DEBUG > > enabled? > > Sure. This is it, up to second 178 (last msg is in 81), before pushing the > suspend button. ... Pretty much normal. > This is the continuation of the previous dmesg, starting on second 178, > when I pressed the power button. > > (done without my pen drive) The suspending part is normal. The resuming part is not... > [ 181.394398] usb usb2: usb resume > [ 181.394403] ohci_hcd 0000:00:0b.0: wakeup root hub > [ 181.394426] usb usb1: usb resume > [ 181.394430] ehci_hcd 0000:00:0b.1: resume root hub > [ 181.428035] ehci_hcd 0000:00:0b.1: port 6 low speed --> companion That shouldn't have happened. It's not actually _wrong_, but it indicates that the USB controllers did not maintain their states properly while the system was suspended. > [ 181.472053] hub 2-0:1.0: hub_resume > [ 181.472076] ohci_hcd 0000:00:0b.0: GetStatus roothub.portstatus [4] = > 0x00030301 PESC CSC LSDA PPS CCS > [ 181.472082] hub 2-0:1.0: port 5: status 0301 change 0003 > [ 181.472100] ohci_hcd 0000:00:0b.0: GetStatus roothub.portstatus [5] = > 0x00030301 PESC CSC LSDA PPS CCS These messages are indications of the same problem. > [ 181.472105] hub 2-0:1.0: port 6: status 0301 change 0003 > [ 181.524028] ehci_hcd 0000:00:0b.1: GetStatus port:6 status 003402 0 > ACK POWER OWNER sig=k CSC > [ 181.540030] hub 1-0:1.0: hub_resume > [ 181.540040] ehci_hcd 0000:00:0b.1: GetStatus port:1 status 001020 0 > ACK POWER sig=se0 OCC > [ 181.540051] ehci_hcd 0000:00:0b.1: GetStatus port:2 status 001020 0 > ACK POWER sig=se0 OCC > [ 181.540061] ehci_hcd 0000:00:0b.1: GetStatus port:3 status 001020 0 > ACK POWER sig=se0 OCC > [ 181.540071] ehci_hcd 0000:00:0b.1: GetStatus port:4 status 001020 0 > ACK POWER sig=se0 OCC > [ 181.540086] ehci_hcd 0000:00:0b.1: GetStatus port:7 status 001020 0 > ACK POWER sig=se0 OCC > [ 181.540095] ehci_hcd 0000:00:0b.1: GetStatus port:8 status 001020 0 > ACK POWER sig=se0 OCC These messages are highly suspicious. They indicate a low-level hardware problem in the wiring of the USB controllers or support components. I won't go into further detail. The remaining events all seem to flow from these underlying problems. Just out of curiosity, what happens if you suspend with the mouse and keyboard unplugged, i.e., no USB devices attached at all? (To forestall possible questions, you run a little shell script that sleeps for 10 seconds, during which you unplug the keyboard and mouse, and then initiates a system suspend.) Also, what happens if you unload ehci-hcd before suspending (with the keyboard and mouse plugged in as normal)? Alan Stern -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html