]> git.hungrycats.org Git - linux/commit
[PATCH] USB: isp1301_omap driver (OTG core)
authorDavid Brownell <david-b@pacbell.net>
Tue, 24 Aug 2004 09:12:03 +0000 (02:12 -0700)
committerGreg Kroah-Hartman <greg@kroah.com>
Tue, 24 Aug 2004 09:12:03 +0000 (02:12 -0700)
commitb61ffbfe3e31e8af731429195132f4f20a94fd30
tree8b7f7ac381347d1b4eed1b2121e7fe998d5d2c9b
parentf0a233c07edbf2bc0b550283396ab8f8e7a747f1
[PATCH] USB: isp1301_omap driver (OTG core)

This adds the isp1301_omap driver, supporting USB OTG on OMAP systems.
The driver tightly couples two different chunks of hardware, which are
used to implement the OTG protocols:

 - The Philips ISP1301 OTG transceiver (an I2C device) senses voltage
   levels and sources VBUS current in the A-Device roles.

 - OMAP's OTG controller handles lots of OTG transitions, and
   tells the transceiver what to do.

The driver implements the abstract "otg_transceiver" API, since it's got to
talk to both the host controller (OHCI on current OMAPs) and the peripheral
controller (omap_udc) while hiding a variety of implementation details.  It
should be easy to tweak to work on other OMAP boards using the isp1301 chip;
OMAP boards with other transceivers, or non-OMAP boards using isp1301, will
probably find things to learn from.

Note that this also supports two non-OTG modes, with the OTG controller
disabled; very handy for debugging just the host side USB stack, or just the
peripheral side USB stack.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
drivers/i2c/chips/Kconfig
drivers/i2c/chips/Makefile
drivers/i2c/chips/isp1301_omap.c [new file with mode: 0644]