diff options
author | Seshendra Gadagottu <sgadagottu@nvidia.com> | 2011-09-08 15:11:12 +0530 |
---|---|---|
committer | Simone Willett <swillett@nvidia.com> | 2011-10-14 18:34:34 -0700 |
commit | fc919eab4be5012f9fd0fc7dbd4b7de7d5bff5db (patch) | |
tree | 29f30370c459fcf7a30f78f02dca25769d82fa6a /arch | |
parent | 9d2e1e07c00d1f84dc24ccb861c5fb9ca751cb9c (diff) |
arm: tegra: enterprise: HSIC phy ready and phy off callbacks
Implemented HSIC phy ready and phy off callabacks for
enterprise board.
BUG 828389
Change-Id: I553af1d370b8df587cb79f914667cf59d46129b9
Reviewed-on: http://git-master/r/52884
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-tegra/board-enterprise.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/board-enterprise.c b/arch/arm/mach-tegra/board-enterprise.c index cccec1412f92..ffdd3e04c926 100644 --- a/arch/arm/mach-tegra/board-enterprise.c +++ b/arch/arm/mach-tegra/board-enterprise.c @@ -776,7 +776,7 @@ static struct tegra_ehci_platform_data tegra_ehci_uhsic_pdata = { .phy_type = TEGRA_USB_PHY_TYPE_HSIC, .phy_config = &uhsic_phy_config, .operating_mode = TEGRA_USB_HOST, - .power_down_on_bus_suspend = 1, + .power_down_on_bus_suspend = 0, }; static struct tegra_ehci_platform_data tegra_ehci_pdata[] = { @@ -870,6 +870,22 @@ static int enterprise_usb_hsic_preresume(void) return 0; } +static int enterprise_usb_hsic_phy_ready(void) +{ +#ifdef CONFIG_TEGRA_BB_XMM_POWER + baseband_xmm_set_power_status(BBXMM_PS_L0); +#endif + return 0; +} + +static int enterprise_usb_hsic_phy_off(void) +{ +#ifdef CONFIG_TEGRA_BB_XMM_POWER + baseband_xmm_set_power_status(BBXMM_PS_L3); +#endif + return 0; +} + static void enterprise_usb_init(void) { #ifdef CONFIG_USB_ANDROID_RNDIS @@ -953,6 +969,8 @@ static void enterprise_baseband_init(void) tegra_ehci_uhsic_pdata.power_down_on_bus_suspend = 0; uhsic_phy_config.postsuspend = enterprise_usb_hsic_postsupend; uhsic_phy_config.preresume = enterprise_usb_hsic_preresume; + uhsic_phy_config.usb_phy_ready = enterprise_usb_hsic_phy_ready; + uhsic_phy_config.post_phy_off = enterprise_usb_hsic_phy_off; /* baseband-power.ko will register ehci2 device */ tegra_ehci2_device.dev.platform_data = &tegra_ehci_uhsic_pdata; |