Re: [PATCH v2] r8152: Suspend USB device before shutdown when WoL is enabled

From: Alan Stern
Date: Thu Aug 10 2023 - 21:51:19 EST


On Thu, Aug 10, 2023 at 10:51:09PM +0000, Alexandru Gagniuc wrote:
> On Thu, Aug 10, 2023 at 01:34:39PM -0400, Alan Stern wrote:
> > 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.

USB-2 doesn't have link states, but it does have the notion of a
downstream port being suspended, which is effectively the same as U3.

> 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.

All right. The important point is that the patch works for your
situation. I was just trying to find out how much thought you had given
to the possibilities other people might face, if their systems aren't
quite the same as yours.

Alan Stern