summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-whistler.c
diff options
context:
space:
mode:
authorPrashant Gaikwad <pgaikwad@nvidia.com>2011-03-24 13:05:50 +0530
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:46:26 -0800
commit901f38dfcf1af0b1ff3b911b4b9814b636bf8e37 (patch)
tree9f7062f22f891c14fce6d8252bbad9961f0f1cad /arch/arm/mach-tegra/board-whistler.c
parent712d0c87c548855dba20fa58eee51353225efcc4 (diff)
ARM: tegra: whistler: power down usb3 on suspend
To turn off usb3 and usb3.emc clock, tegra-ehci.2 should be powered off when bus is supended. Enable power_down_on_bus_suspend for usb3 (tegra-ehci.2). Also added the platform data structure which is used when USB suspends. Bug 807237 Change-Id: I9e975daeb2283bd811b2e32acda78b6fa0d9f2b4 Reviewed-on: http://git-master/r/24089 Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com> Rebase-Id: Ref4b904e6b50bc3a83d1500b912c8d8129bac76d
Diffstat (limited to 'arch/arm/mach-tegra/board-whistler.c')
-rw-r--r--arch/arm/mach-tegra/board-whistler.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/arch/arm/mach-tegra/board-whistler.c b/arch/arm/mach-tegra/board-whistler.c
index 04fd1cdc051a..6feb14d68144 100644
--- a/arch/arm/mach-tegra/board-whistler.c
+++ b/arch/arm/mach-tegra/board-whistler.c
@@ -246,12 +246,27 @@ static int __init whistler_scroll_init(void)
return 0;
}
+static struct usb_phy_plat_data tegra_usb_phy_pdata[] = {
+ [0] = {
+ .instance = 0,
+ .vbus_irq = MAX8907C_INT_BASE + MAX8907C_IRQ_VCHG_DC_R,
+ .vbus_gpio = TEGRA_GPIO_PN6,
+ },
+ [1] = {
+ .instance = 1,
+ .vbus_gpio = -1,
+ },
+ [2] = {
+ .instance = 2,
+ .vbus_gpio = -1,
+ },
+};
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,
@@ -261,7 +276,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,
},
};
@@ -342,6 +357,8 @@ static void __init whistler_power_off_init(void)
static void whistler_usb_init(void)
{
+ 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);