mirror of
https://github.com/ipxe/ipxe
synced 2025-12-23 05:21:49 +03:00
[usb] Do not attempt to disable USB3 hub ports
The USB3 specification removes PORT_ENABLE from the list of features that may be cleared via a CLEAR_FEATURE request. Experimentation shows that omitting the attempt to clear PORT_ENABLE seems to result in the correct hotplug behaviour. Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
@@ -247,8 +247,10 @@ static int hub_disable ( struct usb_hub *hub, struct usb_port *port ) {
|
|||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
/* Disable port */
|
/* Disable port */
|
||||||
if ( ( rc = usb_hub_clear_port_feature ( usb, port->address,
|
if ( ( hub->protocol < USB_PROTO_3_0 ) &&
|
||||||
USB_HUB_PORT_ENABLE, 0 ) )!=0){
|
( ( rc = usb_hub_clear_port_feature ( usb, port->address,
|
||||||
|
USB_HUB_PORT_ENABLE,
|
||||||
|
0 ) ) != 0 ) ) {
|
||||||
DBGC ( hubdev, "HUB %s port %d could not disable: %s\n",
|
DBGC ( hubdev, "HUB %s port %d could not disable: %s\n",
|
||||||
hubdev->name, port->address, strerror ( rc ) );
|
hubdev->name, port->address, strerror ( rc ) );
|
||||||
return rc;
|
return rc;
|
||||||
|
|||||||
Reference in New Issue
Block a user