summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-ventana.c
diff options
context:
space:
mode:
authorRakesh Bodla <rbodla@nvidia.com>2011-02-22 19:21:29 +0530
committerVarun Colbert <vcolbert@nvidia.com>2011-02-23 16:45:00 -0800
commitd7ca0c65fa2930ac60c7b85d8be6178b0f0ecc32 (patch)
tree8133f09603e078191798f8cc58ce58479207b9df /arch/arm/mach-tegra/board-ventana.c
parent3c5b51ecb7a2135db66c40555048723c40f9ef54 (diff)
arm: tegra: ventana: Enabling suspend on USB1 & USB3
Enabling power down when device suspends for USB1 and USB3. Also added the platform data structure which is used when USB suspends. Bug 770041 Change-Id: I8bbe3ee90451a4a193c832bd384558747fe25036 Reviewed-on: http://git-master/r/20030 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra/board-ventana.c')
-rw-r--r--arch/arm/mach-tegra/board-ventana.c24
1 files changed, 21 insertions, 3 deletions
diff --git a/arch/arm/mach-tegra/board-ventana.c b/arch/arm/mach-tegra/board-ventana.c
index ee213cb7b929..1a8b70c3e4c1 100644
--- a/arch/arm/mach-tegra/board-ventana.c
+++ b/arch/arm/mach-tegra/board-ventana.c
@@ -344,7 +344,7 @@ static struct tegra_ulpi_config ventana_ehci2_ulpi_phy_config = {
static struct tegra_ehci_platform_data ventana_ehci2_ulpi_platform_data = {
.operating_mode = TEGRA_USB_HOST,
- .power_down_on_bus_suspend = 0,
+ .power_down_on_bus_suspend = 1,
.phy_config = &ventana_ehci2_ulpi_phy_config,
};
@@ -663,11 +663,27 @@ static int __init ventana_touch_init_atmel(void)
}
#endif
+static struct usb_phy_plat_data tegra_usb_phy_pdata[] = {
+ [0] = {
+ .instance = 0,
+ .vbus_irq = TPS6586X_INT_BASE + TPS6586X_INT_USB_DET,
+ .vbus_gpio = TEGRA_GPIO_PD0,
+ },
+ [1] = {
+ .instance = 1,
+ .vbus_gpio = -1,
+ },
+ [2] = {
+ .instance = 2,
+ .vbus_gpio = TEGRA_GPIO_PD3,
+ },
+};
+
static struct tegra_ehci_platform_data tegra_ehci_pdata[] = {
[0] = {
.phy_config = &utmi_phy_config[0],
.operating_mode = TEGRA_USB_HOST,
- .power_down_on_bus_suspend = 0,
+ .power_down_on_bus_suspend = 1,
},
[1] = {
.phy_config = &ulpi_phy_config,
@@ -677,7 +693,7 @@ static struct tegra_ehci_platform_data tegra_ehci_pdata[] = {
[2] = {
.phy_config = &utmi_phy_config[1],
.operating_mode = TEGRA_USB_HOST,
- .power_down_on_bus_suspend = 0,
+ .power_down_on_bus_suspend = 1,
},
};
@@ -767,6 +783,8 @@ static void ventana_usb_init(void)
char *src = NULL;
int i;
+ tegra_usb_phy_init(tegra_usb_phy_pdata, ARRAY_SIZE(tegra_usb_phy_pdata));
+
tegra_otg_device.dev.platform_data = &tegra_otg_pdata;
platform_device_register(&tegra_otg_device);