Re: xhci: suspend/resume issues

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

 



On Thu, Nov 11, 2010 at 01:04:20PM -0800, Sarah Sharp wrote:
> Once you've found the right directory, echo "auto" to the power/control
> file.  That should autosuspend the USB 3.0 hard drive after 2 seconds.
> Wait for 5 seconds or so, and then echo "on" to power/control.  If the
> dmesg shows that the device disconnected on resume, it may not be able
> to handle USB device suspend.  That could be the reason it disconnects
> on resume from hibernate, because the xHCI driver has to put all the
> devices in USB device suspend before suspending the host controller.
> 
> The device might also need a reset-resume quirk, but I'd have to stare
> at the log files and the code to see why this particular bug is
> happening:
> 
> xhci_hcd 0000:04:00.0: Can't reset device (slot ID 1) in enabled/disabled state
> xhci_hcd 0000:04:00.0: Not freeing device rings.
> xhci_hcd 0000:04:00.0: `MEM_WRITE_DWORD(3'b000, 32'hffffc90012710450, 32'h200e01, 4'hf);
> xhci_hcd 0000:04:00.0: clear port reset change, actual port 3 status  = 0xe03
> usb 6-4: new high speed USB device using xhci_hcd and address 4
> 
> I think it means reset-resume may not be able to be done under the xHCI
> host.  But, as I said, I have to look deeply at it.

Hi Sarah,

So I was poking around with it more, using suggestions from Matthew
Garrett.

After unplugging my harddrive (physically) and then echo 'auto' >
/sys/bus/pci/devices/<usb3 pci id>/power/control, it was working as
expected.  IOW, it went to sleep after a couple of seconds.  An lsusb woke
it up, then it went back to sleep.

Physically plugging in the harddrive caused it to wake up again.
Everything mounted correctly.  Matthew was saying the storage layer
doesn't have run-time power management so 'auto' won't work when the
harddrive is physically connected.

I then started to compare registers before and after a resume.  The pci
config space registers looked identical and the MMIO registers (from the
only pci BAR register) had only a handful of differences.  I am trying to
read the spec to see what those differences mean.

For fun, I even tried that patch you posted to help with resume, without
much success.

Cheers,
Don
--
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


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux