diff options
Diffstat (limited to 'common/usb_hub.c')
| -rw-r--r-- | common/usb_hub.c | 2 | 
1 files changed, 2 insertions, 0 deletions
| diff --git a/common/usb_hub.c b/common/usb_hub.c index 4d75b902f..b5eeb62fb 100644 --- a/common/usb_hub.c +++ b/common/usb_hub.c @@ -259,6 +259,8 @@ void usb_hub_port_connect_change(struct usb_device *dev, int port)  	/* Run it through the hoops (find a driver, etc) */  	if (usb_new_device(usb)) {  		/* Woops, disable the port */ +		usb_free_device(); +		dev->children[port] = NULL;  		USB_HUB_PRINTF("hub: disabling port %d\n", port + 1);  		usb_clear_port_feature(dev, port + 1, USB_PORT_FEAT_ENABLE);  	} |