blob: 0d8cb29678b2f76bacac3c9caf4aa29cf8ad6567 [file] [log] [blame]
Chia-Wei, Wang8f7f4902020-12-14 13:54:28 +08001// SPDX-License-Identifier: GPL-2.0+
2/*
3 * Copyright (c) Aspeed Technology Inc.
4 */
5#include <common.h>
6#include <debug_uart.h>
7#include <dm.h>
8#include <spl.h>
9#include <init.h>
10#include <asm/io.h>
11#include <asm/arch/scu_ast2600.h>
Simon Glass3ba929a2020-10-30 21:38:53 -060012#include <asm/global_data.h>
Chia-Wei, Wang8f7f4902020-12-14 13:54:28 +080013
14DECLARE_GLOBAL_DATA_PTR;
15
16void board_init_f(ulong dummy)
17{
18 spl_early_init();
19 preloader_console_init();
20 timer_init();
21 dram_init();
22}
23
24u32 spl_boot_device(void)
25{
26 return BOOT_DEVICE_RAM;
27}
28
29struct image_header *spl_get_load_buffer(ssize_t offset, size_t size)
30{
31 /*
32 * When boot from SPI, AST2600 already remap 0x00000000 ~ 0x0fffffff
33 * to BMC SPI memory space 0x20000000 ~ 0x2fffffff. The next stage BL
34 * has been located in SPI for XIP. In this case, the load buffer for
35 * SPL image loading will be set to the remapped address of the next
36 * BL instead of the DRAM space CONFIG_SYS_LOAD_ADDR
37 */
38 return (struct image_header *)(CONFIG_SYS_TEXT_BASE);
39}
40
41#ifdef CONFIG_SPL_OS_BOOT
42int spl_start_uboot(void)
43{
44 /* boot linux */
45 return 0;
46}
47#endif
48
49#ifdef CONFIG_SPL_LOAD_FIT
50int board_fit_config_name_match(const char *name)
51{
52 /* just empty function now - can't decide what to choose */
53 debug("%s: %s\n", __func__, name);
54 return 0;
55}
56#endif