On Thu, Aug 10, 2023 at 01:34:39PM -0400, Alan Stern wrote: > On Thu, Aug 10, 2023 at 04:22:16PM +0000, Alexandru Gagniuc wrote: > > On Wed, Aug 02, 2023 at 11:23:46AM -0400, Alan Stern wrote: > > > > > > Indeed. And I am asking how you can be sure the host controller driver > > > (or some other part of the software stack) doesn't have this bug. > > > > The only way that I have to show that is empirical. I observe that WoL from S5 > > does not work on a device with an r8153 chip. I apply the change, and verify > > that WoL from S5 now works in this scenario. What are you thinking of in terms > > of being sure no current or future bug exists? > > I was thinking that the host controller driver's shutdown method might > turn off power to all of the ports. > > For example, in the ehci-hcd driver, ehci_shutdown() calls > ehci_silence_controller(), which calls ehci_turn_off_all_ports(). I > don't know if xhci-hcd does anything similar. EHCI is a different beast. I don't think EHCI (USB2.0) has the U3 link state. The equivalent for would be xhci_shutdown(). It makes a call to usb_disable_xhci_ports() for XHCI_SPURIOUS_REBOOT quirk. As I have not encountered it, I don't know how it will affect the link state of other ports. The quirk appears to switch ports to EHCI mode, rather than turn off power. Alex