diff options
-rw-r--r-- | arch/arm/mach-tegra/board-apalis_t30.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/board-apalis_t30.c b/arch/arm/mach-tegra/board-apalis_t30.c index 865742a87057..cf9eb5922681 100644 --- a/arch/arm/mach-tegra/board-apalis_t30.c +++ b/arch/arm/mach-tegra/board-apalis_t30.c @@ -400,11 +400,19 @@ static struct tegra_pci_platform_data apalis_t30_pci_platform_data = { static void apalis_t30_pci_init(void) { - /* Reset PLX PEX 8605 PCIe Switch on Apalis Evaluation Board */ + /* Reset PLX PEX 8605 PCIe Switch plus PCIe devices on Apalis Evaluation + Board */ gpio_request(PEX_PERST_N, "PEX_PERST_N"); + gpio_request(RESET_MOCI_N, "RESET_MOCI_N"); gpio_direction_output(PEX_PERST_N, 0); + gpio_direction_output(RESET_MOCI_N, 0); + /* Must be asserted for 100 ms after power and clocks are stable */ msleep(100); gpio_set_value(PEX_PERST_N, 1); + /* Err_5: PEX_REFCLK_OUTpx/nx Clock Outputs is not Guaranteed Until + 900 us After PEX_PERST# De-assertion */ + msleep(1); + gpio_set_value(RESET_MOCI_N, 1); tegra_pci_device.dev.platform_data = &apalis_t30_pci_platform_data; platform_device_register(&tegra_pci_device); |