diff options
author | Ken Chang <kenc@nvidia.com> | 2011-07-01 15:35:06 +0800 |
---|---|---|
committer | Manish Tuteja <mtuteja@nvidia.com> | 2011-07-06 03:28:09 -0700 |
commit | 894ef272deec269ccbf1caf2b9a5e4ce3bbf7a0f (patch) | |
tree | 47d7e5d06d7483b5310c97ce947c67b3682186cb /include | |
parent | 17cf593083f77b5a86ea29ab73741ce2950778ae (diff) |
usb: ehci: tegra: fix hotplug issue on usb2
usb hotplug is supported only for UTMI phy. usb_phy_type should be
carefully checked in ehci irq.
bug 845612
Change-Id: I2fdc7c79b9816dd3465353375448b07f138ff950
Reviewed-on: http://git-master/r/39338
Tested-by: Ken Chang <kenc@nvidia.com>
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Reviewed-by: Yu-Fong (Foster) Cho <ycho@nvidia.com>
Reviewed-by: ChihJen Hsu <chhsu@nvidia.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/fsl_devices.h | 8 | ||||
-rw-r--r-- | include/linux/platform_data/tegra_usb.h | 9 |
2 files changed, 17 insertions, 0 deletions
diff --git a/include/linux/fsl_devices.h b/include/linux/fsl_devices.h index b39a195775e3..9517375ba9f7 100644 --- a/include/linux/fsl_devices.h +++ b/include/linux/fsl_devices.h @@ -58,12 +58,20 @@ enum fsl_usb2_phy_modes { FSL_USB2_PHY_SERIAL, }; +enum fsl_usb2_phy_types { + FSL_USB2_PHY_TYPE_UTMIP = 1, + FSL_USB2_PHY_TYPE_ULPI = 2, + FSL_USB2_PHY_TYPE_HSIC = 3, + FSL_USB2_PHY_TYPE_ICUSB = 4, +}; + struct fsl_usb2_platform_data { /* board specific information */ enum fsl_usb2_operating_modes operating_mode; enum fsl_usb2_phy_modes phy_mode; unsigned int port_enables; void *phy_config; + enum fsl_usb2_phy_types usb_phy_type; }; /* Flags in fsl_usb2_mph_platform_data */ diff --git a/include/linux/platform_data/tegra_usb.h b/include/linux/platform_data/tegra_usb.h index e48ac43dd047..dc0696c47820 100644 --- a/include/linux/platform_data/tegra_usb.h +++ b/include/linux/platform_data/tegra_usb.h @@ -21,11 +21,20 @@ enum tegra_usb_operating_modes { TEGRA_USB_OTG, }; +enum tegra_usb_phy_type { + TEGRA_USB_PHY_TYPE_UTMIP = 0, + TEGRA_USB_PHY_TYPE_LINK_ULPI = 1, + TEGRA_USB_PHY_TYPE_NULL_ULPI = 2, + TEGRA_USB_PHY_TYPE_HSIC = 3, + TEGRA_USB_PHY_TYPE_ICUSB = 4, +}; + struct tegra_ehci_platform_data { enum tegra_usb_operating_modes operating_mode; /* power down the phy on bus suspend */ int power_down_on_bus_suspend; void *phy_config; + enum tegra_usb_phy_type phy_type; }; struct tegra_otg_platform_data { |