diff options
author | Stefan Roese <sr@denx.de> | 2015-01-19 11:33:42 +0100 |
---|---|---|
committer | Luka Perkov <luka.perkov@sartura.hr> | 2015-02-06 17:24:56 +0100 |
commit | b0f80b913f5a8aec8ba75093328ac17d178c3b95 (patch) | |
tree | 8ff1efd290cf4720365af982990358d86ca41555 /arch/arm/cpu/armv7/armada-xp/spl.c | |
parent | 0cf47862bf647690762c841e247fb5b097ca7316 (diff) | |
download | talos-obmc-uboot-b0f80b913f5a8aec8ba75093328ac17d178c3b95.tar.gz talos-obmc-uboot-b0f80b913f5a8aec8ba75093328ac17d178c3b95.zip |
arm: armada-xp: Add SPL support used to include the DDR training code
This patch adds SPL support to the Marvell Armada-XP. With this addition
the bin_hdr integration is not needed any more. The SPL will first
initialize the serdes/PHY and the call the DDR setup and training code
now integrated into mainline U-Boot.
Signed-off-by: Stefan Roese <sr@denx.de>
Reviewed-by: Luka Perkov <luka.perkov@sartura.hr>
Diffstat (limited to 'arch/arm/cpu/armv7/armada-xp/spl.c')
-rw-r--r-- | arch/arm/cpu/armv7/armada-xp/spl.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7/armada-xp/spl.c b/arch/arm/cpu/armv7/armada-xp/spl.c new file mode 100644 index 0000000000..402e520ea9 --- /dev/null +++ b/arch/arm/cpu/armv7/armada-xp/spl.c @@ -0,0 +1,38 @@ +/* + * Copyright (C) 2014 Stefan Roese <sr@denx.de> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include <common.h> +#include <spl.h> +#include <asm/io.h> +#include <asm/arch/cpu.h> +#include <asm/arch/soc.h> + +DECLARE_GLOBAL_DATA_PTR; + +u32 spl_boot_device(void) +{ + /* Right now only booting via SPI NOR flash is supported */ + return BOOT_DEVICE_SPI; +} + +void board_init_f(ulong dummy) +{ + /* Set global data pointer */ + gd = &gdata; + + /* Linux expects the internal registers to be at 0xf1000000 */ + arch_cpu_init(); + + preloader_console_init(); + + /* First init the serdes PHY's */ + serdes_phy_config(); + + /* Setup DDR */ + ddr3_init(); + + board_init_r(NULL, 0); +} |