diff options
author | Valentin Longchamp <valentin.longchamp@keymile.com> | 2014-01-27 11:49:12 +0100 |
---|---|---|
committer | York Sun <yorksun@freescale.com> | 2014-02-03 08:38:51 -0800 |
commit | 27c78e06f2b42bd6285ed104ece23f6c69e42e6f (patch) | |
tree | 8b607d64fde89ccf5ee28bcb80f01b675e4a7bae /board/keymile/kmp204x/kmp204x.c | |
parent | 47c1180c022bf67615349257dc3de98388bac398 (diff) | |
download | u-boot-imx-27c78e06f2b42bd6285ed104ece23f6c69e42e6f.zip u-boot-imx-27c78e06f2b42bd6285ed104ece23f6c69e42e6f.tar.gz u-boot-imx-27c78e06f2b42bd6285ed104ece23f6c69e42e6f.tar.bz2 |
kmp204x: initial support for PCIe FPGA configuration
The PEXHC PCIe configuration mechanism ensures that the FPGA get
configured at power-up. Since all the PCIe devices should be configured
when the kernel start, u-boot has to take care that the FPGA gets
configured also in other reset scenarios, mostly because of possible
configuration change.
The used mechanism is taken from the km_kirkwood design and adapted to
the kmp204x case (slightly different HW and PCIe configuration).
Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Reviewed-by: York Sun <yorksun@freescale.com>
Diffstat (limited to 'board/keymile/kmp204x/kmp204x.c')
-rw-r--r-- | board/keymile/kmp204x/kmp204x.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/board/keymile/kmp204x/kmp204x.c b/board/keymile/kmp204x/kmp204x.c index a6c23a2..95a19cd 100644 --- a/board/keymile/kmp204x/kmp204x.c +++ b/board/keymile/kmp204x/kmp204x.c @@ -101,6 +101,7 @@ int board_early_init_f(void) int board_early_init_r(void) { + int ret = 0; /* Flush d-cache and invalidate i-cache of any FLASH data */ flush_dcache(); invalidate_icache(); @@ -108,7 +109,11 @@ int board_early_init_r(void) set_liodns(); setup_portals(); - return 0; + ret = trigger_fpga_config(); + if (ret) + printf("error triggering PCIe FPGA config\n"); + + return ret; } unsigned long get_board_sys_clk(unsigned long dummy) |