diff options
| author | Tom Rini <trini@ti.com> | 2012-08-14 08:50:58 -0700 | 
|---|---|---|
| committer | Tom Rini <trini@ti.com> | 2012-09-27 09:49:57 -0700 | 
| commit | 55cdbb8d4e8508dcdb95400f6dfcb928220ffc70 (patch) | |
| tree | faf1a808b858b8370f35a8c54a1da205b81f9d7f | |
| parent | 24dafad5c42018ea11c0d12f747a7eb337229f5a (diff) | |
| download | olio-uboot-2014.01-55cdbb8d4e8508dcdb95400f6dfcb928220ffc70.tar.xz olio-uboot-2014.01-55cdbb8d4e8508dcdb95400f6dfcb928220ffc70.zip | |
ARM: SPL: Add <asm/spl.h> and <asm/arch/spl.h>
Move the SPL prototypes from <asm/omap_common.h> into <asm/spl.h> and
add <asm/arch/spl.h> for arch specific portions of CONFIG_SPL_FRAMEWORK.
Signed-off-by: Tom Rini <trini@ti.com>
| -rw-r--r-- | arch/arm/cpu/armv7/am33xx/board.c | 2 | ||||
| -rw-r--r-- | arch/arm/cpu/armv7/omap-common/hwinit-common.c | 2 | ||||
| -rw-r--r-- | arch/arm/cpu/armv7/omap-common/spl.c | 2 | ||||
| -rw-r--r-- | arch/arm/cpu/armv7/omap-common/spl_mmc.c | 1 | ||||
| -rw-r--r-- | arch/arm/cpu/armv7/omap-common/spl_nand.c | 2 | ||||
| -rw-r--r-- | arch/arm/cpu/armv7/omap-common/spl_ymodem.c | 2 | ||||
| -rw-r--r-- | arch/arm/cpu/armv7/omap3/board.c | 1 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-am33xx/spl.h | 31 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap3/spl.h | 34 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap4/spl.h | 35 | ||||
| -rw-r--r-- | arch/arm/include/asm/arch-omap5/spl.h | 35 | ||||
| -rw-r--r-- | arch/arm/include/asm/omap_common.h | 71 | ||||
| -rw-r--r-- | arch/arm/include/asm/spl.h | 61 | 
13 files changed, 203 insertions, 76 deletions
| diff --git a/arch/arm/cpu/armv7/am33xx/board.c b/arch/arm/cpu/armv7/am33xx/board.c index ecc26717c..e89df8e33 100644 --- a/arch/arm/cpu/armv7/am33xx/board.c +++ b/arch/arm/cpu/armv7/am33xx/board.c @@ -27,9 +27,9 @@  #include <asm/arch/mmc_host_def.h>  #include <asm/arch/sys_proto.h>  #include <asm/io.h> -#include <asm/omap_common.h>  #include <asm/emif.h>  #include <asm/gpio.h> +#include <asm/spl.h>  #include <i2c.h>  #include <miiphy.h>  #include <cpsw.h> diff --git a/arch/arm/cpu/armv7/omap-common/hwinit-common.c b/arch/arm/cpu/armv7/omap-common/hwinit-common.c index 4d7ef5c52..d5fde38f8 100644 --- a/arch/arm/cpu/armv7/omap-common/hwinit-common.c +++ b/arch/arm/cpu/armv7/omap-common/hwinit-common.c @@ -31,7 +31,7 @@  #include <asm/arch/sys_proto.h>  #include <asm/sizes.h>  #include <asm/emif.h> -#include <asm/omap_common.h> +#include <asm/spl.h>  DECLARE_GLOBAL_DATA_PTR; diff --git a/arch/arm/cpu/armv7/omap-common/spl.c b/arch/arm/cpu/armv7/omap-common/spl.c index 71a467e52..81991b249 100644 --- a/arch/arm/cpu/armv7/omap-common/spl.c +++ b/arch/arm/cpu/armv7/omap-common/spl.c @@ -23,6 +23,7 @@   * MA 02111-1307 USA   */  #include <common.h> +#include <asm/spl.h>  #include <asm/u-boot.h>  #include <asm/utils.h>  #include <asm/arch/sys_proto.h> @@ -30,7 +31,6 @@  #include <mmc.h>  #include <fat.h>  #include <version.h> -#include <asm/omap_common.h>  #include <asm/arch/mmc_host_def.h>  #include <i2c.h>  #include <image.h> diff --git a/arch/arm/cpu/armv7/omap-common/spl_mmc.c b/arch/arm/cpu/armv7/omap-common/spl_mmc.c index 62b308b3b..fe44538bf 100644 --- a/arch/arm/cpu/armv7/omap-common/spl_mmc.c +++ b/arch/arm/cpu/armv7/omap-common/spl_mmc.c @@ -23,6 +23,7 @@   * MA 02111-1307 USA   */  #include <common.h> +#include <asm/spl.h>  #include <asm/u-boot.h>  #include <asm/utils.h>  #include <asm/arch/sys_proto.h> diff --git a/arch/arm/cpu/armv7/omap-common/spl_nand.c b/arch/arm/cpu/armv7/omap-common/spl_nand.c index 39221d5e7..6552a5dfd 100644 --- a/arch/arm/cpu/armv7/omap-common/spl_nand.c +++ b/arch/arm/cpu/armv7/omap-common/spl_nand.c @@ -21,13 +21,13 @@   * MA 02111-1307 USA   */  #include <common.h> +#include <asm/spl.h>  #include <asm/u-boot.h>  #include <asm/utils.h>  #include <asm/arch/sys_proto.h>  #include <asm/io.h>  #include <nand.h>  #include <version.h> -#include <asm/omap_common.h>  void spl_nand_load_image(void)  { diff --git a/arch/arm/cpu/armv7/omap-common/spl_ymodem.c b/arch/arm/cpu/armv7/omap-common/spl_ymodem.c index 47663f7ed..65565e3e6 100644 --- a/arch/arm/cpu/armv7/omap-common/spl_ymodem.c +++ b/arch/arm/cpu/armv7/omap-common/spl_ymodem.c @@ -26,11 +26,11 @@   * MA 02111-1307 USA   */  #include <common.h> +#include <asm/spl.h>  #include <xyzModem.h>  #include <asm/u-boot.h>  #include <asm/utils.h>  #include <asm/arch/sys_proto.h> -#include <asm/omap_common.h>  #define BUF_SIZE 1024 diff --git a/arch/arm/cpu/armv7/omap3/board.c b/arch/arm/cpu/armv7/omap3/board.c index a487374f1..45976f90e 100644 --- a/arch/arm/cpu/armv7/omap3/board.c +++ b/arch/arm/cpu/armv7/omap3/board.c @@ -39,6 +39,7 @@  #include <asm/cache.h>  #include <asm/armv7.h>  #include <asm/arch/gpio.h> +#include <asm/spl.h>  #include <asm/omap_common.h>  #include <i2c.h>  #include <linux/compiler.h> diff --git a/arch/arm/include/asm/arch-am33xx/spl.h b/arch/arm/include/asm/arch-am33xx/spl.h new file mode 100644 index 000000000..70f521d26 --- /dev/null +++ b/arch/arm/include/asm/arch-am33xx/spl.h @@ -0,0 +1,31 @@ +/* + * (C) Copyright 2012 + * Texas Instruments, <www.ti.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +#ifndef	_ASM_ARCH_SPL_H_ +#define	_ASM_SPL_H_ + +#define BOOT_DEVICE_NAND	5 +#define BOOT_DEVICE_MMC1	8 +#define BOOT_DEVICE_MMC2	9	/* eMMC or daughter card */ +#define BOOT_DEVICE_UART	65 +#define BOOT_DEVICE_MMC2_2      0xFF +#endif diff --git a/arch/arm/include/asm/arch-omap3/spl.h b/arch/arm/include/asm/arch-omap3/spl.h new file mode 100644 index 000000000..404e16a5a --- /dev/null +++ b/arch/arm/include/asm/arch-omap3/spl.h @@ -0,0 +1,34 @@ +/* + * (C) Copyright 2012 + * Texas Instruments, <www.ti.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +#ifndef	_ASM_ARCH_SPL_H_ +#define	_ASM_SPL_H_ + +#define BOOT_DEVICE_NONE	0 +#define BOOT_DEVICE_XIP		1 +#define BOOT_DEVICE_NAND	2 +#define BOOT_DEVICE_ONE_NAND	3 +#define BOOT_DEVICE_MMC2	5 /*emmc*/ +#define BOOT_DEVICE_MMC1	6 +#define BOOT_DEVICE_XIPWAIT	7 +#define BOOT_DEVICE_MMC2_2      0xFF +#endif diff --git a/arch/arm/include/asm/arch-omap4/spl.h b/arch/arm/include/asm/arch-omap4/spl.h new file mode 100644 index 000000000..cec84dc54 --- /dev/null +++ b/arch/arm/include/asm/arch-omap4/spl.h @@ -0,0 +1,35 @@ +/* + * (C) Copyright 2012 + * Texas Instruments, <www.ti.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +#ifndef	_ASM_ARCH_SPL_H_ +#define	_ASM_SPL_H_ + +#define BOOT_DEVICE_NONE	0 +#define BOOT_DEVICE_XIP		1 +#define BOOT_DEVICE_XIPWAIT	2 +#define BOOT_DEVICE_NAND	3 +#define BOOT_DEVICE_ONE_NAND	4 +#define BOOT_DEVICE_MMC1	5 +#define BOOT_DEVICE_MMC2	6 +#define BOOT_DEVICE_MMC2_2	0xFF + +#endif diff --git a/arch/arm/include/asm/arch-omap5/spl.h b/arch/arm/include/asm/arch-omap5/spl.h new file mode 100644 index 000000000..d125c61f4 --- /dev/null +++ b/arch/arm/include/asm/arch-omap5/spl.h @@ -0,0 +1,35 @@ +/* + * (C) Copyright 2012 + * Texas Instruments, <www.ti.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +#ifndef	_ASM_ARCH_SPL_H_ +#define	_ASM_SPL_H_ + +#define BOOT_DEVICE_NONE        0 +#define BOOT_DEVICE_XIP         1 +#define BOOT_DEVICE_XIPWAIT     2 +#define BOOT_DEVICE_NAND        3 +#define BOOT_DEVICE_ONE_NAND    4 +#define BOOT_DEVICE_MMC1        5 +#define BOOT_DEVICE_MMC2        6 +#define BOOT_DEVICE_MMC2_2	7 + +#endif diff --git a/arch/arm/include/asm/omap_common.h b/arch/arm/include/asm/omap_common.h index 4d331fc94..775ab6c82 100644 --- a/arch/arm/include/asm/omap_common.h +++ b/arch/arm/include/asm/omap_common.h @@ -34,82 +34,11 @@  #define OMAP_INIT_CONTEXT_UBOOT_AFTER_SPL	2  #define OMAP_INIT_CONTEXT_UBOOT_AFTER_CH	3 -void preloader_console_init(void); - -/* Boot device */ -#ifdef CONFIG_OMAP54XX -#define BOOT_DEVICE_NONE        0 -#define BOOT_DEVICE_XIP         1 -#define BOOT_DEVICE_XIPWAIT     2 -#define BOOT_DEVICE_NAND        3 -#define BOOT_DEVICE_ONE_NAND    4 -#define BOOT_DEVICE_MMC1        5 -#define BOOT_DEVICE_MMC2        6 -#define BOOT_DEVICE_MMC2_2	7 -#elif defined(CONFIG_OMAP44XX) /* OMAP4 */ -#define BOOT_DEVICE_NONE	0 -#define BOOT_DEVICE_XIP		1 -#define BOOT_DEVICE_XIPWAIT	2 -#define BOOT_DEVICE_NAND	3 -#define BOOT_DEVICE_ONE_NAND	4 -#define BOOT_DEVICE_MMC1	5 -#define BOOT_DEVICE_MMC2	6 -#define BOOT_DEVICE_MMC2_2	0xFF -#elif defined(CONFIG_OMAP34XX)	/* OMAP3 */ -#define BOOT_DEVICE_NONE	0 -#define BOOT_DEVICE_XIP		1 -#define BOOT_DEVICE_NAND	2 -#define BOOT_DEVICE_ONE_NAND	3 -#define BOOT_DEVICE_MMC2	5 /*emmc*/ -#define BOOT_DEVICE_MMC1	6 -#define BOOT_DEVICE_XIPWAIT	7 -#define BOOT_DEVICE_MMC2_2      0xFF -#elif defined(CONFIG_AM33XX)	/* AM33XX */ -#define BOOT_DEVICE_NAND	5 -#define BOOT_DEVICE_MMC1	8 -#define BOOT_DEVICE_MMC2	9 /* eMMC or daughter card */ -#define BOOT_DEVICE_UART	65 -#define BOOT_DEVICE_MMC2_2      0xFF -#endif -  /* Boot type */  #define	MMCSD_MODE_UNDEFINED	0  #define MMCSD_MODE_RAW		1  #define MMCSD_MODE_FAT		2 -struct spl_image_info { -	const char *name; -	u8 os; -	u32 load_addr; -	u32 entry_point; -	u32 size; -}; - -extern struct spl_image_info spl_image; - -extern u32* boot_params_ptr; -u32 spl_boot_device(void); -u32 spl_boot_mode(void); - -/* SPL common function s*/ -void spl_parse_image_header(const struct image_header *header); -void spl_board_prepare_for_linux(void); -int spl_start_uboot(void); -void spl_display_print(void); - -/* NAND SPL functions */ -void spl_nand_load_image(void); - -/* MMC SPL functions */ -void spl_mmc_load_image(void); - -/* YMODEM SPL functions */ -void spl_ymodem_load_image(void); - -#ifdef CONFIG_SPL_BOARD_INIT -void spl_board_init(void); -#endif -  static inline u32 omap_revision(void)  {  	extern u32 *const omap_si_rev; diff --git a/arch/arm/include/asm/spl.h b/arch/arm/include/asm/spl.h new file mode 100644 index 000000000..19e6c5050 --- /dev/null +++ b/arch/arm/include/asm/spl.h @@ -0,0 +1,61 @@ +/* + * (C) Copyright 2012 + * Texas Instruments, <www.ti.com> + * + * See file CREDITS for list of people who contributed to this + * project. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +#ifndef	_ASM_SPL_H_ +#define	_ASM_SPL_H_ + +/* Platform-specific defines */ +#include <asm/arch/spl.h> + +struct spl_image_info { +	const char *name; +	u8 os; +	u32 load_addr; +	u32 entry_point; +	u32 size; +}; + +extern struct spl_image_info spl_image; +extern u32 *boot_params_ptr; + +/* SPL common functions */ +void preloader_console_init(void); +u32 spl_boot_device(void); +u32 spl_boot_mode(void); +void spl_parse_image_header(const struct image_header *header); +void spl_board_prepare_for_linux(void); +int spl_start_uboot(void); +void spl_display_print(void); + +/* NAND SPL functions */ +void spl_nand_load_image(void); + +/* MMC SPL functions */ +void spl_mmc_load_image(void); + +/* YMODEM SPL functions */ +void spl_ymodem_load_image(void); + +#ifdef CONFIG_SPL_BOARD_INIT +void spl_board_init(void); +#endif +#endif |