From: Peter Chen Date: Thu, 24 Apr 2014 00:15:27 +0000 (+0800) Subject: usb: chipidea: coordinate usb phy initialization for different phy type X-Git-Tag: omap-for-v3.16/pm-signed~48^2~19 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cd84f009e98b3aa6109503f80f66ccf3e19e8fa9;p=pandora-kernel.git usb: chipidea: coordinate usb phy initialization for different phy type 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 Cc: Chris Ruehl Cc: shc_work@mail.ru Cc: denis@eukrea.com Cc: festevam@gmail.com Cc: stable # 3.14 Signed-off-by: Peter Chen Signed-off-by: Greg Kroah-Hartman --- Reading git-diff-tree failed