]>
Commit | Line | Data |
---|---|---|
435199f3 HS |
1 | /* |
2 | * Copyright (C) 2011 | |
3 | * Heiko Schocher, DENX Software Engineering, hs@denx.de. | |
4 | * | |
1a459660 | 5 | * SPDX-License-Identifier: GPL-2.0+ |
435199f3 HS |
6 | */ |
7 | #include <common.h> | |
3f7f2414 TR |
8 | #include <config.h> |
9 | #include <spl.h> | |
435199f3 HS |
10 | #include <asm/u-boot.h> |
11 | #include <asm/utils.h> | |
12 | #include <nand.h> | |
13 | #include <asm/arch/dm365_lowlevel.h> | |
14 | #include <ns16550.h> | |
620fd27c CR |
15 | #include <malloc.h> |
16 | #include <spi_flash.h> | |
0d986e61 | 17 | #include <mmc.h> |
620fd27c | 18 | |
8f743140 | 19 | DECLARE_GLOBAL_DATA_PTR; |
435199f3 | 20 | |
3f7f2414 | 21 | #ifndef CONFIG_SPL_LIBCOMMON_SUPPORT |
435199f3 HS |
22 | void puts(const char *str) |
23 | { | |
24 | while (*str) | |
25 | putc(*str++); | |
26 | } | |
27 | ||
28 | void putc(char c) | |
29 | { | |
30 | if (c == '\n') | |
31 | NS16550_putc((NS16550_t)(CONFIG_SYS_NS16550_COM1), '\r'); | |
32 | ||
33 | NS16550_putc((NS16550_t)(CONFIG_SYS_NS16550_COM1), c); | |
34 | } | |
620fd27c CR |
35 | #endif /* CONFIG_SPL_LIBCOMMON_SUPPORT */ |
36 | ||
212324a9 | 37 | void spl_board_init(void) |
435199f3 | 38 | { |
620fd27c | 39 | #ifdef CONFIG_SOC_DM365 |
435199f3 | 40 | dm36x_lowlevel_init(0); |
620fd27c CR |
41 | #endif |
42 | #ifdef CONFIG_SOC_DA8XX | |
43 | arch_cpu_init(); | |
44 | #endif | |
3f7f2414 TR |
45 | preloader_console_init(); |
46 | } | |
560e69bf | 47 | |
2b1cdafa | 48 | u32 spl_boot_mode(const u32 boot_device) |
3f7f2414 TR |
49 | { |
50 | return MMCSD_MODE_RAW; | |
51 | } | |
52 | ||
53 | u32 spl_boot_device(void) | |
54 | { | |
55 | #ifdef CONFIG_SPL_NAND_SIMPLE | |
56 | return BOOT_DEVICE_NAND; | |
57 | #elif defined(CONFIG_SPL_SPI_LOAD) | |
58 | return BOOT_DEVICE_SPI; | |
59 | #elif defined(CONFIG_SPL_MMC_LOAD) | |
60 | return BOOT_DEVICE_MMC1; | |
61 | #else | |
62 | puts("Unknown boot device\n"); | |
63 | hang(); | |
0d986e61 | 64 | #endif |
435199f3 | 65 | } |