blob: 19c38f4083c2d78aef27d3ea1317a4dff741e217 [file] [log] [blame]
Tom Rini29d69dc2012-08-14 08:50:58 -07001/*
2 * (C) Copyright 2012
3 * Texas Instruments, <www.ti.com>
4 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02005 * SPDX-License-Identifier: GPL-2.0+
Tom Rini29d69dc2012-08-14 08:50:58 -07006 */
7#ifndef _ASM_SPL_H_
8#define _ASM_SPL_H_
9
Marek Vasutea0123c2014-10-16 12:25:40 +020010#if defined(CONFIG_OMAP) \
Masahiro Yamada74726562014-04-23 21:20:43 +090011 || defined(CONFIG_EXYNOS4) || defined(CONFIG_EXYNOS5) \
12 || defined(CONFIG_EXYNOS4210)
Tom Rini29d69dc2012-08-14 08:50:58 -070013/* Platform-specific defines */
14#include <asm/arch/spl.h>
15
Masahiro Yamada74726562014-04-23 21:20:43 +090016#else
17enum {
18 BOOT_DEVICE_RAM,
19 BOOT_DEVICE_MMC1,
20 BOOT_DEVICE_MMC2,
21 BOOT_DEVICE_MMC2_2,
22 BOOT_DEVICE_NAND,
23 BOOT_DEVICE_ONENAND,
24 BOOT_DEVICE_NOR,
25 BOOT_DEVICE_UART,
26 BOOT_DEVICE_SPI,
Masahiro Yamada90c56052016-02-02 19:12:31 +090027 BOOT_DEVICE_USB,
Masahiro Yamada74726562014-04-23 21:20:43 +090028 BOOT_DEVICE_SATA,
29 BOOT_DEVICE_I2C,
Simon Glass040d8182015-02-07 10:47:29 -070030 BOOT_DEVICE_BOARD,
Masahiro Yamada74726562014-04-23 21:20:43 +090031 BOOT_DEVICE_NONE
32};
33#endif
34
Nikita Kiryanov33eefe42015-11-08 17:11:49 +020035/**
36 * Board specific load method for boards that have a special way of loading
37 * U-Boot, which does not fit with the existing SPL code.
38 *
39 * @return 0 on success, negative errno value on failure.
40 */
41
42int spl_board_load_image(void);
Simon Glass040d8182015-02-07 10:47:29 -070043
Tom Rini31dfba42012-08-22 15:31:05 -070044/* Linker symbols. */
Simon Glassed70c8f2013-03-14 06:54:53 +000045extern char __bss_start[], __bss_end[];
Tom Rini31dfba42012-08-22 15:31:05 -070046
Simon Glassaeca9cc2015-03-03 08:02:58 -070047#ifndef CONFIG_DM
Tom Rini31dfba42012-08-22 15:31:05 -070048extern gd_t gdata;
Simon Glassaeca9cc2015-03-03 08:02:58 -070049#endif
Tom Rini31dfba42012-08-22 15:31:05 -070050
Tom Rini29d69dc2012-08-14 08:50:58 -070051#endif