usb: phy: tegra: Tegra30 support
authorTuomas Tynkkynen <ttynkkynen@nvidia.com>
Mon, 12 Aug 2013 13:06:51 +0000 (16:06 +0300)
committerFelipe Balbi <balbi@ti.com>
Mon, 12 Aug 2013 18:29:48 +0000 (13:29 -0500)
commit3e635202ce40e4d7ff3fafc18db70c5d28cc6622
tree9feaee838221202b9a87e5ae49e6f94f212f17b7
parentf5833a0bde5d7795b19f8a881278e5506ab5764b
usb: phy: tegra: Tegra30 support

The Tegra30 USB PHY is a bit different than the Tegra20 PHY:

- The EHCI controller supports the HOSTPC register extension, and some
  of the fields that the PHY needs to modify (PHCD and PTS) have moved
  to the new HOSTPC register.
- Some of the UTMI PLL configuration registers have moved from the USB
  register space to the Clock-And-Reset controller space. In Tegra30
  the clock driver is responsible for configuring the UTMI PLL.
- The USBMODE register must be explicitly written to enter host mode.
- Certain PHY parameters need to be programmed for optimal signal
  quality. Support for this will be added in the next patch.

The new tegra_phy_soc_config structure is added to describe the
differences between the SoCs.

Signed-off-by: Tuomas Tynkkynen <ttynkkynen@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
Reviewed-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/phy/phy-tegra-usb.c
include/linux/usb/tegra_usb_phy.h