diff options
-rw-r--r-- | board/toradex/apalis-tk1/apalis-tk1.c | 21 | ||||
-rw-r--r-- | include/configs/apalis-tk1.h | 1 |
2 files changed, 20 insertions, 2 deletions
diff --git a/board/toradex/apalis-tk1/apalis-tk1.c b/board/toradex/apalis-tk1/apalis-tk1.c index 2f097056f3..510bdf5240 100644 --- a/board/toradex/apalis-tk1/apalis-tk1.c +++ b/board/toradex/apalis-tk1/apalis-tk1.c @@ -18,8 +18,6 @@ #define LAN_RESET_N GPIO_PS2 -DECLARE_GLOBAL_DATA_PTR; - int arch_misc_init(void) { if (readl(NV_PA_BASE_SRAM + NVBOOTINFOTABLE_BOOTTYPE) == @@ -149,6 +147,25 @@ int tegra_pcie_board_init(void) mdelay(100); gpio_set_value(LAN_RESET_N, 1); +#ifdef APALIS_TK1_PCIE_EVALBOARD_INIT +#define PEX_PERST_N GPIO_PDD1 /* Apalis GPIO7 */ +#define RESET_MOCI_CTRL GPIO_PU4 + + /* 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_CTRL, "RESET_MOCI_CTRL"); + gpio_direction_output(PEX_PERST_N, 0); + gpio_direction_output(RESET_MOCI_CTRL, 0); + /* Must be asserted for 100 ms after power and clocks are stable */ + mdelay(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 */ + mdelay(1); + gpio_set_value(RESET_MOCI_CTRL, 1); +#endif /* APALIS_T30_PCIE_EVALBOARD_INIT */ + return 0; } diff --git a/include/configs/apalis-tk1.h b/include/configs/apalis-tk1.h index 3aaf4ceb8d..d258387cc3 100644 --- a/include/configs/apalis-tk1.h +++ b/include/configs/apalis-tk1.h @@ -69,6 +69,7 @@ #define CONFIG_PCI_PNP #define CONFIG_CMD_PCI #define CONFIG_CMD_PCI_ENUM +#undef APALIS_TK1_PCIE_EVALBOARD_INIT /* PCI networking support */ #define CONFIG_E1000 |