diff options
author | Bharat Nihalani <bnihalani@nvidia.com> | 2010-11-12 14:00:55 +0530 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2011-11-30 21:46:06 -0800 |
commit | de384dcc329a1075588f17aba6aab9c3cdee9a74 (patch) | |
tree | 6c9ba421ef2454fae581bfa175c0c408c38b1a53 /arch/arm/mach-tegra/board-ventana.c | |
parent | 05b41f61d4e2732afdfb515b31209faf57488276 (diff) |
[ARM/tegra/ventana] Enable USB PHY on PCIE slot
Enable USB ULPI PHY on PCIE slot to support USB modem.
Original-Change-Id: I84308fc00ccb342e86a7f3a775ac69ef8bb44e31
Reviewed-on: http://git-master/r/10010
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
Rebase-Id: R29cc01d09edf0c4239502dd257583a8d7707d555
Diffstat (limited to 'arch/arm/mach-tegra/board-ventana.c')
-rw-r--r-- | arch/arm/mach-tegra/board-ventana.c | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/board-ventana.c b/arch/arm/mach-tegra/board-ventana.c index c1936a38847a..82bedb385f1e 100644 --- a/arch/arm/mach-tegra/board-ventana.c +++ b/arch/arm/mach-tegra/board-ventana.c @@ -34,7 +34,6 @@ #include <linux/gpio_keys.h> #include <linux/input.h> #include <linux/tegra_usb.h> - #include <mach/clk.h> #include <mach/iomap.h> #include <mach/irqs.h> @@ -144,10 +143,22 @@ static __initdata struct tegra_clk_init_table ventana_clk_init_table[] = { { "pll_m", "clk_m", 600000000, true}, { "uartc", "pll_m", 600000000, false}, { "blink", "clk_32k", 32768, false}, + { "pll_p_out4", "pll_p", 24000000, true }, { "pwm", "clk_32k", 32768, false}, { NULL, NULL, 0, 0}, }; +static struct tegra_ulpi_config ventana_ehci2_ulpi_phy_config = { + .reset_gpio = TEGRA_GPIO_PV1, + .clk = "cdev2", +}; + +static struct tegra_ehci_platform_data ventana_ehci2_ulpi_platform_data = { + .operating_mode = TEGRA_USB_HOST, + .power_down_on_bus_suspend = 0, + .phy_config = &ventana_ehci2_ulpi_phy_config, +}; + static struct tegra_i2c_platform_data ventana_i2c1_platform_data = { .adapter_nr = 0, .bus_count = 1, @@ -237,6 +248,7 @@ static struct platform_device *ventana_devices[] __initdata = { &tegra_uart2_device, &pmu_device, &tegra_udc_device, + &tegra_ehci2_device, &tegra_gart_device, &tegra_aes_device, &ventana_keys_device, @@ -305,6 +317,8 @@ static void __init tegra_ventana_init(void) tegra_clk_init_from_table(ventana_clk_init_table); ventana_pinmux_init(); + tegra_ehci2_device.dev.platform_data + = &ventana_ehci2_ulpi_platform_data; platform_add_devices(ventana_devices, ARRAY_SIZE(ventana_devices)); ventana_sdhci_init(); ventana_i2c_init(); |