projects
/
oweals
/
u-boot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
engicam: common: Move board_late_init
[oweals/u-boot.git]
/
common
/
spl
/
spl.c
diff --git
a/common/spl/spl.c
b/common/spl/spl.c
index d98b9fcb9ade2285b50caedbce7483db5ded78da..50828e6021812909c65aec01c1bc1d868ddf560d 100644
(file)
--- a/
common/spl/spl.c
+++ b/
common/spl/spl.c
@@
-85,6
+85,9
@@
void spl_set_header_raw_uboot(struct spl_image_info *spl_image)
{
spl_image->size = CONFIG_SYS_MONITOR_LEN;
spl_image->entry_point = CONFIG_SYS_UBOOT_START;
{
spl_image->size = CONFIG_SYS_MONITOR_LEN;
spl_image->entry_point = CONFIG_SYS_UBOOT_START;
+#ifdef CONFIG_CPU_V7M
+ spl_image->entry_point |= 0x1;
+#endif
spl_image->load_addr = CONFIG_SYS_TEXT_BASE;
spl_image->os = IH_OS_U_BOOT;
spl_image->name = "U-Boot";
spl_image->load_addr = CONFIG_SYS_TEXT_BASE;
spl_image->os = IH_OS_U_BOOT;
spl_image->name = "U-Boot";
@@
-227,10
+230,11
@@
int spl_early_init(void)
int spl_init(void)
{
int ret;
int spl_init(void)
{
int ret;
+ bool setup_malloc = !(IS_ENABLED(CONFIG_SPL_STACK_R) &&
+ IS_ENABLED(CONFIG_SPL_SYS_MALLOC_SIMPLE));
if (!(gd->flags & GD_FLG_SPL_EARLY_INIT)) {
if (!(gd->flags & GD_FLG_SPL_EARLY_INIT)) {
- ret = spl_common_init(
- !IS_ENABLED(CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN));
+ ret = spl_common_init(setup_malloc);
if (ret)
return ret;
}
if (ret)
return ret;
}
@@
-341,6
+345,9
@@
void board_init_r(gd_t *dummy1, ulong dummy2)
#endif
memset(&spl_image, '\0', sizeof(spl_image));
#endif
memset(&spl_image, '\0', sizeof(spl_image));
+#ifdef CONFIG_SYS_SPL_ARGS_ADDR
+ spl_image.arg = (void *)CONFIG_SYS_SPL_ARGS_ADDR;
+#endif
board_boot_order(spl_boot_list);
if (boot_from_devices(&spl_image, spl_boot_list,
board_boot_order(spl_boot_list);
if (boot_from_devices(&spl_image, spl_boot_list,
@@
-357,8
+364,7
@@
void board_init_r(gd_t *dummy1, ulong dummy2)
case IH_OS_LINUX:
debug("Jumping to Linux\n");
spl_board_prepare_for_linux();
case IH_OS_LINUX:
debug("Jumping to Linux\n");
spl_board_prepare_for_linux();
- jump_to_image_linux(&spl_image,
- (void *)CONFIG_SYS_SPL_ARGS_ADDR);
+ jump_to_image_linux(&spl_image);
#endif
default:
debug("Unsupported OS image.. Jumping nevertheless..\n");
#endif
default:
debug("Unsupported OS image.. Jumping nevertheless..\n");