ARM: shmobile: lager: enable USB3.0
authorYoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Fri, 24 Oct 2014 10:41:47 +0000 (19:41 +0900)
committerSimon Horman <horms+renesas@verge.net.au>
Fri, 5 Dec 2014 08:33:47 +0000 (17:33 +0900)
commit6ecdda5a8ef0bbe0e3e85a0a99934375521dc5d3
treed265f8ccf5956de3d49c613fa810a63938235150
parentad615e7d80e702424fbc14b611198e3549e342c8
ARM: shmobile: lager: enable USB3.0

Since the PHY of USB3.0 and EHCI/OHCI ch2 are the same, the USB3.0
driver cannot use the phy driver when the EHCI/OHCI ch2 already used it:

phy phy-e6590100.usb-phy.3: phy init failed --> -16
xhci-hcd: probe of ee000000.usb failed with error -16

If so, we have to unbind the EHCI/OHCI ch2, and then we have to bind
the USB3.0 driver as the following:

  echo 0000:02:02.0 > /sys/bus/pci/drivers/ehci-pci/unbind
  echo 0000:02:01.0 > /sys/bus/pci/drivers/ohci-pci/unbind
  echo ee000000.usb > /sys/bus/platform/drivers/xhci-hcd/bind

Note that there will be pinctrl-related error messages if both
internal PCI and USB3.0 are enabled but they should be just ignored:

sh-pfc e6060000.pfc: pin GP_5_22 already requested by ee0d0000.pci; cannot claim for ee000000.usb
sh-pfc e6060000.pfc: pin-182 (ee000000.usb) status -22
ata1: SATA link down (SStatus 0 SControl 300)
sh-pfc e6060000.pfc: could not request pin 182 (GP_5_22) from group usb2  on device sh-pfc

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit 37f7c1b0c1ed9465b2e2609ba57bba8a874ddd3c)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
arch/arm/boot/dts/r8a7790-lager.dts