On Thu, May 17, 2012 at 06:17:22AM +0000, Chen Peter-B29397 wrote: > > > > > This kinds of OTG driver is like what current msm_otg.c and mv_otg.c do. > > > > they are both controlling a PHY. You seem to be missin all my comments > > when I say that OTG and PHY are *not* the same thing. > > > > So, just to make it really clear: > > > > OTG State machine (where applicable), OTG Timers, HNP polling... all of > > that *MUST* be done generically under drivers/usb/core. The way the > > underlying HW implements the OTG specification is meaningless to the SW > > side. > > > > The point is that it doesn't which PHY/Link we're using, the OTG > > specification is always the same, so all those timers and HNP polling > > and whatnot, can be done generically. > > > OK, now, I have understood you, do you think below are correct? > > - drivers/usb/otg renames to drivers/usb/phy > - Both USB PHY driver (PHY function supplier) and USB PHY User (like msm_otg.c, > fsl_otg.c, mv_otg.c, twl6030-usb.c) will be at drivers/usb/phy. > - msm_otg.c, fsl_otg.c mv_otg.c renames to msm_usb.c, fsl_usb.c, and mv_usb.c. these little guys don't seem to be using the PHY, they seem to *be* the PHY driver. See that msm_otg.c calls usb_set_transceiver(). That's a phy driver. Other than that, it's all good. -- balbi
Attachment:
signature.asc
Description: Digital signature