Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 69080584 authored by Dan Williams's avatar Dan Williams Committed by Greg Kroah-Hartman
Browse files

usb: usb3 ports do not support FEAT_C_ENABLE



The port pm_runtime implementation unconditionally clears FEAT_C_ENABLE
after clearing PORT_POWER, but the bit is reserved on usb3 hub ports.
We expect khubd to be prevented from running because the port state is
not RPM_ACTIVE, so we need to clear any errors for usb2 ports.

Acked-by: default avatarAlan Stern <stern@rowland.harvard.edu>
Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 7c604079
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -142,6 +142,7 @@ static int usb_port_runtime_suspend(struct device *dev)
	set_bit(port1, hub->busy_bits);
	retval = usb_hub_set_port_power(hdev, hub, port1, false);
	usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_CONNECTION);
	if (!port_dev->is_superspeed)
		usb_clear_port_feature(hdev, port1, USB_PORT_FEAT_C_ENABLE);
	clear_bit(port1, hub->busy_bits);
	usb_autopm_put_interface(intf);