On Tuesday 17 March 2009, Sarah Sharp wrote: > Why are companion controllers > difficult to deal with from a software perspective? They add a funky state to EHCI root hubs, which isn't part of the standard model: "owned by companion". They create init sequencing problems, when e.g. the companion HCD grabs a port before EHCI starts and the device gets extra resets. Not all devices like those odd-but-valid init sequences. There are strange and undocumented transition states that require some handshaking on reset signaling; I forget the details, look at the GIT history on the patches adding that handshaking for the oddball bugs it fixes. They take extra system (silicion, software, irqs, RAM) resources. UHCI for example only handles two ports per controller, so a modern PC with ten ports needs five such controllers ... that's not so bad with OHCI, which can support as many ports as EHCI can, but it's still needless complexity. -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html