Index: uspace/drv/bus/usb/ehci/ehci_rh.c
===================================================================
--- uspace/drv/bus/usb/ehci/ehci_rh.c	(revision 82a639cd0a9e74f1cfd6371a5b3320f9e899f857)
+++ uspace/drv/bus/usb/ehci/ehci_rh.c	(revision 486f4796480ed7d017e10f5ebd80e4723e7af697)
@@ -275,5 +275,5 @@
 	    (((reg & USB_PORTSC_LINE_STATUS_MASK) == USB_PORTSC_LINE_STATUS_K) ?
 	        (1 << USB_HUB_FEATURE_PORT_LOW_SPEED) : 0) |
-	    EHCI2USB(reg, USB_PORTSC_PORT_OWNER_FLAG, USB_HUB_FEATURE_PORT_HIGH_SPEED) |
+	    ((reg & USB_PORTSC_PORT_OWNER_FLAG) ? 0 : (1 << USB_HUB_FEATURE_PORT_HIGH_SPEED)) |
 	    EHCI2USB(reg, USB_PORTSC_PORT_TEST_MASK, 11) |
 	    EHCI2USB(reg, USB_PORTSC_INDICATOR_MASK, 12) |
@@ -396,5 +396,5 @@
 		if (!(EHCI_RD(hub->registers->portsc[port]) &
 		    USB_PORTSC_ENABLED_FLAG)) {
-			EHCI_CLR(hub->registers->portsc[port],
+			EHCI_SET(hub->registers->portsc[port],
 			    USB_PORTSC_PORT_OWNER_FLAG);
 		} else {
@@ -443,5 +443,5 @@
 			    (status & USB_PORTSC_LINE_STATUS_MASK) ==
 			        USB_PORTSC_LINE_STATUS_K)
-				EHCI_CLR(hub->registers->portsc[port],
+				EHCI_SET(hub->registers->portsc[port],
 				    USB_PORTSC_PORT_OWNER_FLAG);
 			else
