diff options
-rw-r--r-- | board/toradex/apalis_t30/apalis_t30.c | 19 | ||||
-rw-r--r-- | include/configs/apalis_t30.h | 1 |
2 files changed, 20 insertions, 0 deletions
diff --git a/board/toradex/apalis_t30/apalis_t30.c b/board/toradex/apalis_t30/apalis_t30.c index 4e75846ca3..773f9e9580 100644 --- a/board/toradex/apalis_t30/apalis_t30.c +++ b/board/toradex/apalis_t30/apalis_t30.c @@ -127,6 +127,25 @@ int tegra_pcie_board_init(void) return err; } +#ifdef APALIS_T30_PCIE_EVALBOARD_INIT +#define PEX_PERST_N GPIO_PS7 /* Apalis GPIO7 */ +#define RESET_MOCI_N GPIO_PI4 + + /* 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 */ + 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_N, 1); +#endif /* APALIS_T30_PCIE_EVALBOARD_INIT */ + return 0; } #endif /* CONFIG_PCI_TEGRA */ diff --git a/include/configs/apalis_t30.h b/include/configs/apalis_t30.h index cf9e40bfb2..921911dc77 100644 --- a/include/configs/apalis_t30.h +++ b/include/configs/apalis_t30.h @@ -56,6 +56,7 @@ /* PCI host support */ #undef CONFIG_PCI_SCAN_SHOW #define CONFIG_CMD_PCI +#undef APALIS_T30_PCIE_EVALBOARD_INIT /* PCI networking support */ #define CONFIG_E1000_NO_NVM |