On Wed, Apr 23, 2014 at 01:30:43PM +0800, Peter Chen wrote: > For internal PHY (like UTMI), the phy clock may from internal pll, > it is on/off on the fly, the access PORTSC.PTS will hang without > phy clock. So, the usb_phy_init which will open phy clock needs to > be called before hw_phymode_configure. > See: http://marc.info/?l=linux-arm-kernel&m=139350618732108&w=2 > > For external PHY (like ulpi), it needs to configure portsc.pts before > visit viewport, or the viewport can't be visited. so phy_phymode_configure > needs to be called before usb_phy_init. > See: cd0b42c2a6d2a74244f0053f8960f5dad5842278 > > It may not the best solution, but it can work for all situations. > > Cc: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> > Cc: Chris Ruehl <chris.ruehl@xxxxxxxxxxxx> > Cc: shc_work@xxxxxxx > Cc: denis@xxxxxxxxxx > Cc: festevam@xxxxxxxxx > Signed-off-by: Peter Chen <peter.chen@xxxxxxxxxxxxx> > --- > drivers/usb/chipidea/core.c | 37 ++++++++++++++++++++++++++++++++++--- > 1 files changed, 34 insertions(+), 3 deletions(-) This should go into 3.14 as well, right? I've marked it for stable because of this. greg k-h -- 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