> > 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. - otg_fsm.c and otg_fsm.h will be refined and be more generic, and move to drivers/usb/core -- 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