Makefile: Change CONFIG_SPL_PAD_TO to image offset
Change CONFIG_SPL_PAD_TO from a link address to an image offset since this is more handy and closer to the purpose of this config. Automatically define CONFIG_SPL_PAD_TO to CONFIG_SPL_MAX_SIZE (or 0 without CONFIG_SPL_MAX_SIZE). Test that CONFIG_SPL_PAD_TO >= CONFIG_SPL_MAX_SIZE if CONFIG_SPL_PAD_TO is non-zero. Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>utp
parent
2979b26323
commit
6113d3f27c
5
Makefile
5
Makefile
|
@ -486,9 +486,8 @@ $(obj)u-boot.dis: $(obj)u-boot
|
||||||
|
|
||||||
|
|
||||||
$(obj)u-boot-with-spl.bin: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin
|
$(obj)u-boot-with-spl.bin: $(obj)spl/u-boot-spl.bin $(obj)u-boot.bin
|
||||||
$(OBJCOPY) ${OBJCFLAGS} --pad-to=$(or $(CONFIG_SPL_PAD_TO),0) \
|
$(OBJCOPY) ${OBJCFLAGS} --pad-to=$(CONFIG_SPL_PAD_TO) \
|
||||||
-O binary $(obj)spl/u-boot-spl \
|
-I binary -O binary $< $(obj)spl/u-boot-spl-pad.bin
|
||||||
$(obj)spl/u-boot-spl-pad.bin
|
|
||||||
cat $(obj)spl/u-boot-spl-pad.bin $(obj)u-boot.bin > $@
|
cat $(obj)spl/u-boot-spl-pad.bin $(obj)u-boot.bin > $@
|
||||||
rm $(obj)spl/u-boot-spl-pad.bin
|
rm $(obj)spl/u-boot-spl-pad.bin
|
||||||
|
|
||||||
|
|
7
README
7
README
|
@ -2908,8 +2908,11 @@ FIT uImage format:
|
||||||
Support for lib/libgeneric.o in SPL binary
|
Support for lib/libgeneric.o in SPL binary
|
||||||
|
|
||||||
CONFIG_SPL_PAD_TO
|
CONFIG_SPL_PAD_TO
|
||||||
Linker address to which the SPL should be padded before
|
Image offset to which the SPL should be padded before appending
|
||||||
appending the SPL payload.
|
the SPL payload. By default, this is defined as
|
||||||
|
CONFIG_SPL_MAX_SIZE, or 0 if CONFIG_SPL_MAX_SIZE is undefined.
|
||||||
|
CONFIG_SPL_PAD_TO must be either 0, meaning to append the SPL
|
||||||
|
payload without any padding, or >= CONFIG_SPL_MAX_SIZE.
|
||||||
|
|
||||||
CONFIG_SPL_TARGET
|
CONFIG_SPL_TARGET
|
||||||
Final target image containing SPL and payload. Some SPLs
|
Final target image containing SPL and payload. Some SPLs
|
||||||
|
|
|
@ -9,6 +9,22 @@
|
||||||
#ifndef __CONFIG_FALLBACKS_H
|
#ifndef __CONFIG_FALLBACKS_H
|
||||||
#define __CONFIG_FALLBACKS_H
|
#define __CONFIG_FALLBACKS_H
|
||||||
|
|
||||||
|
#ifdef CONFIG_SPL
|
||||||
|
#ifdef CONFIG_SPL_PAD_TO
|
||||||
|
#ifdef CONFIG_SPL_MAX_SIZE
|
||||||
|
#if CONFIG_SPL_PAD_TO && CONFIG_SPL_PAD_TO < CONFIG_SPL_MAX_SIZE
|
||||||
|
#error CONFIG_SPL_PAD_TO < CONFIG_SPL_MAX_SIZE
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#else
|
||||||
|
#ifdef CONFIG_SPL_MAX_SIZE
|
||||||
|
#define CONFIG_SPL_PAD_TO CONFIG_SPL_MAX_SIZE
|
||||||
|
#else
|
||||||
|
#define CONFIG_SPL_PAD_TO 0
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef CONFIG_SYS_BAUDRATE_TABLE
|
#ifndef CONFIG_SYS_BAUDRATE_TABLE
|
||||||
#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 }
|
#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 }
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -52,7 +52,7 @@
|
||||||
#define CONFIG_SYS_TEXT_BASE 0x00100000 /* CONFIG_SYS_NAND_U_BOOT_DST */
|
#define CONFIG_SYS_TEXT_BASE 0x00100000 /* CONFIG_SYS_NAND_U_BOOT_DST */
|
||||||
#define CONFIG_SYS_TEXT_BASE_SPL 0xfff00000
|
#define CONFIG_SYS_TEXT_BASE_SPL 0xfff00000
|
||||||
#define CONFIG_SPL_MAX_SIZE (4 * 1024)
|
#define CONFIG_SPL_MAX_SIZE (4 * 1024)
|
||||||
#define CONFIG_SPL_PAD_TO 0xfff04000
|
#define CONFIG_SPL_PAD_TO 0x4000
|
||||||
|
|
||||||
#define CONFIG_SYS_NAND_U_BOOT_SIZE (512 << 10)
|
#define CONFIG_SYS_NAND_U_BOOT_SIZE (512 << 10)
|
||||||
#define CONFIG_SYS_NAND_U_BOOT_DST 0x00100000
|
#define CONFIG_SYS_NAND_U_BOOT_DST 0x00100000
|
||||||
|
|
|
@ -164,7 +164,7 @@
|
||||||
#define CONFIG_SPL_TARGET "u-boot-with-spl.bin"
|
#define CONFIG_SPL_TARGET "u-boot-with-spl.bin"
|
||||||
|
|
||||||
#define CONFIG_SPL_TEXT_BASE 0xfffff000
|
#define CONFIG_SPL_TEXT_BASE 0xfffff000
|
||||||
#define CONFIG_SPL_MAX_SIZE (4 * 1024)
|
#define CONFIG_SPL_MAX_SIZE 4096
|
||||||
|
|
||||||
#ifdef CONFIG_SYS_INIT_L2_ADDR
|
#ifdef CONFIG_SYS_INIT_L2_ADDR
|
||||||
/* We multiply CONFIG_SPL_MAX_SIZE by two to leave some room for BSS. */
|
/* We multiply CONFIG_SPL_MAX_SIZE by two to leave some room for BSS. */
|
||||||
|
|
Loading…
Reference in New Issue