1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * Copyright (C) 2020 MediaTek Inc. All Rights Reserved. 4 * 5 * Author: Weijie Gao <weijie.gao@mediatek.com> 6 */ 7 8 #include <init.h> 9 #include <spl.h> 10 #include <asm/sections.h> 11 #include <linux/libfdt.h> 12 #include <linux/sizes.h> 13 #include <mach/serial.h> 14 board_init_f(ulong dummy)15void __noreturn board_init_f(ulong dummy) 16 { 17 spl_init(); 18 19 #ifdef CONFIG_SPL_SERIAL 20 /* 21 * mtmips_spl_serial_init() is useful if debug uart is enabled, 22 * or DM based serial is not enabled. 23 */ 24 mtmips_spl_serial_init(); 25 preloader_console_init(); 26 #endif 27 28 board_init_r(NULL, 0); 29 } 30 board_boot_order(u32 * spl_boot_list)31void board_boot_order(u32 *spl_boot_list) 32 { 33 spl_boot_list[0] = BOOT_DEVICE_NOR; 34 } 35 spl_nor_get_uboot_base(void)36unsigned long spl_nor_get_uboot_base(void) 37 { 38 void *uboot_base = __image_copy_end; 39 40 if (fdt_magic(uboot_base) == FDT_MAGIC) 41 return (unsigned long)uboot_base + fdt_totalsize(uboot_base); 42 43 return (unsigned long)uboot_base; 44 } 45