How to fallback from USB3 (XHCI) to USB2 (EHCI)

My MacbookPro (11.3) has flaky USB3 support. When I connect USB3 drives (both thumb and disk), they work for a few seconds, until a larger file transfer corrupts the state after which I lose all USB functionality (keyboard and mouse included). USB2 drives work much better (with this hardware). Is there a way to force EHCI fallback for these devices?

I don’t know of a way. The actual hardware layer negotiates the fastest connect speed of the devices connected. The software can’t really force the hardware to negotiate to a lower speed.

The only thing I can think of would be to use a USB2 hub to plug your USB3 devices into. The hub would become the slowest link and force the hardware to negotiate to EHCI.

You can tray blacklisting XHCI. Temporarily from the boot options, or permanently with a file /boot/system/settings/packages :

Package haiku  {
	EntryBlacklist {
		add-ons/kernel/busses/usb/xhci
	}
}

Thanks humdinger for the reply. Without XHCI enabled, the MacbookPro wont boot Haiku from USB (thumb or disk) at all, so I’m in a bind since I cannot apply the blacklisting entry unless I install Haiku to the internal SSD.

Speaking of which, this idea doesn’t sound that crazy these days since on my dual boot setup (OSX and Win10), Win10 has been quite annoying lately. I remember being 100% BeOS native (since R4.5 up until 2004), so the idea of replacing Win10 with Haiku_x64 does seem appealing.

Bootman can Blacklist Files temporarily.
Press and hold shift at Boot.

Yeah, evict Win10 and expel it to the outer rim of your USB drive. :slight_smile:

1 Like