Patrick Georgi (patrick@georgi-clan.de) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/1531
-gerrit
commit 58d6b64b87620f8dc112243dc4c2337f00dfcd5d Author: Anton Kochkov anton.kochkov@gmail.com Date: Thu Sep 20 10:22:52 2012 +0200
Fix disconnect handling on UHCI root ports
Change-Id: I03b72cd1c6ed0df09c08f2a687d4f17fa3cf6afc Signed-off-by: Patrick Georgi patrick.georgi@secunet.com --- payloads/libpayload/drivers/usb/uhci_rh.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/payloads/libpayload/drivers/usb/uhci_rh.c b/payloads/libpayload/drivers/usb/uhci_rh.c index a5661b0..547f064 100644 --- a/payloads/libpayload/drivers/usb/uhci_rh.c +++ b/payloads/libpayload/drivers/usb/uhci_rh.c @@ -81,9 +81,14 @@ static void uhci_rh_disable_port (usbdev_t *dev, int port) { hci_t *controller = dev->controller; - port = PORTSC2; if (port == 1) port = PORTSC1; + else if (port == 2) + port = PORTSC2; + else { + debug("Invalid port %d\n", port); + return; + } uhci_reg_write16(controller, port, uhci_reg_read16(controller, port) & ~4); u16 value;