2 * (C) Copyright 2014 Xilinx, Inc. Michal Simek
4 * SPDX-License-Identifier: GPL-2.0+
10 #include <asm/arch/hardware.h>
12 #include <asm/arch/sys_proto.h>
14 DECLARE_GLOBAL_DATA_PTR;
16 void board_init_f(ulong dummy)
21 memset(__bss_start, 0, __bss_end - __bss_start);
23 /* Set global data pointer. */
26 preloader_console_init();
28 board_init_r(NULL, 0);
31 #ifdef CONFIG_SPL_BOARD_INIT
32 void spl_board_init(void)
38 u32 spl_boot_device(void)
42 switch ((zynq_slcr_get_boot_mode()) & ZYNQ_BM_MASK) {
43 #ifdef CONFIG_SPL_SPI_SUPPORT
46 mode = BOOT_DEVICE_SPI;
50 mode = BOOT_DEVICE_NAND;
53 mode = BOOT_DEVICE_NOR;
55 #ifdef CONFIG_SPL_MMC_SUPPORT
58 mode = BOOT_DEVICE_MMC1;
62 mode = BOOT_DEVICE_RAM;
65 puts("Unsupported boot mode selected\n");
72 #ifdef CONFIG_SPL_MMC_SUPPORT
73 u32 spl_boot_mode(void)
79 #ifdef CONFIG_SPL_OS_BOOT
80 int spl_start_uboot(void)
87 __weak void ps7_init(void)
90 * This function is overridden by the one in
91 * board/xilinx/zynq/ps7_init.c, if it exists.