On Mon, Jan 19, 2015 at 07:52:17PM +0200, Roger Quadros wrote: > Hi, > > On DRA7 EVMs the USB ID pin is connected to a GPIO line. The USB drivers > (dwc3 + dwc3-omap) depend on extcon framework to get the USB cable state > (USB or USB-Host) to put the controller in the right mode. > > There were earlier attempts [1] to get this working by trying to patch up > the existing GPIO extcon driver. > > This series attemts to take a different approach by introducing a new > USB specific extcon driver to handle the USB ID GPIO pin and > interpret a right USB cable state. > > The reasoning to introduce this new driver is: > 1) The existing GPIO extcon driver doesn't understand USB cable states > and it can't handle more than one cable per instance. > > For the USB case we need to handle at least 2 cable states. > a) USB (attach/detach) > b) USB-Host (attach/detach) > and could possible include more states like > c) Fast-charger (attach/detach) > d) Slow-charger (attach/detach) > > 2) This USB specific driver can be easily updated in the future to > handle VBUS events, or charger detect events, in case it happens > to be available on GPIO for any platform. > > 3) The DT implementation is very easy. You just need one extcon node per USB > instead of one extcon node per cable state as in case of [1]. > > 4) The cable state string doesn't need to be encoded in the device tree > as in case of [1]. > > 5) With only ID event available, you can simulate a USB-peripheral attach > when USB-Host is detacted instead of hacking the USB driver to do the same. > > Tested on DRA7-evm and DRA72-evm. while at that, you might want to patch X15 too. -- balbi
Attachment:
signature.asc
Description: Digital signature