diff options
author | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2016-11-10 14:55:31 +0100 |
---|---|---|
committer | Marcel Ziswiler <marcel.ziswiler@toradex.com> | 2016-11-21 15:05:21 +0100 |
commit | 3e2259b04c2e2c029f742e9dda06a3a2739977d4 (patch) | |
tree | 7af7fe9210ccdf2e2e6d70f522014784e7ee888c /arch | |
parent | 1cb425d3e668e3d2b77872d5440fffd87ac9cf21 (diff) |
apalis-tk1: fix pcie clock and reset not conforming to specification
Fix PCIe clock and reset not conforming to specification by moving PCIe
reset handling including the PLX PEX 8605 errata 5 workaround from the
board platform data into the right places timing wise in the PCIe driver
itself.
Also add a kernel command line argument to allow using the Apalis GPIO7
as a regular GPIO rather than for above mentioned PLX PEX 8605
workaround:
pex_perst=0
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Acked-by: Dominik Sliwa <dominik.sliwa@toradex.com>
(cherry picked from tegra-next commit
a2f63805703b43d55d91ae17f10d0049bf0f625e)
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-tegra/board-apalis-tk1.c | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/arch/arm/mach-tegra/board-apalis-tk1.c b/arch/arm/mach-tegra/board-apalis-tk1.c index 22a1f7d10d21..ac6b122fbc1a 100644 --- a/arch/arm/mach-tegra/board-apalis-tk1.c +++ b/arch/arm/mach-tegra/board-apalis-tk1.c @@ -592,28 +592,6 @@ static void __init tegra_apalis_tk1_dt_init(void) apalis_tk1_auxdata_lookup, &platform_bus); #endif - /* 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); - -#if 0 - /* Reset I210 Gigabit Ethernet Controller */ - gpio_request(LAN_RESET_N, "LAN_RESET_N"); - gpio_direction_output(LAN_RESET_N, 0); - mdelay(100); - gpio_set_value(LAN_RESET_N, 1); -#endif - tegra_apalis_tk1_late_init(); } |