Hi, On 06/05/2016 04:33 PM, Jun Li wrote: >> Port mux is part of dual role switch, but not the whole thing. >> > >> > Dual role switch includes at least below things: >> > - ID or type-C event detection >> > - port mux >> > - VBUS management >> > - start/stop host/device controllers >> > >> > An OTG/Dual-role framework can be used to keep all these things run >> > together with an internal state machine. But it's not duplicated with a >> > generic framework for port mux and the port mux drivers. >> > >>> > > Your >>> > > case is just like Renesas case, which uses two different drivers >>> > > between peripheral and host[1]. >> > >> > In my case, the port mux devices are physical devices and they can be >> > controlled through GPIO pins or device registers. They are independent of >> > both peripheral and host controllers. >> > > I also think current OTG/Dual role framework can support your case, if you > find there is any limitation of it which can't meet your requirement, we > should improve it, Roger also provide an example of dual role switch with > USB3 based on his OTG core. Why do we need an OTG framework to support a device driver? Is it something like a bus or class driver? Best regards, Lu Baolu -- 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