diff options
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/arm/armv4/bootblock_simple.c | 7 | ||||
-rw-r--r-- | src/arch/arm/armv7/bootblock_simple.c | 7 | ||||
-rw-r--r-- | src/arch/arm/include/bootblock_common.h | 1 |
3 files changed, 11 insertions, 4 deletions
diff --git a/src/arch/arm/armv4/bootblock_simple.c b/src/arch/arm/armv4/bootblock_simple.c index 9e399a9b7c..26646eebf5 100644 --- a/src/arch/arm/armv4/bootblock_simple.c +++ b/src/arch/arm/armv4/bootblock_simple.c @@ -26,18 +26,21 @@ #include <console/console.h> #include <program_loading.h> +__attribute__((weak)) void bootblock_mainboard_early_init(void) { /* no-op */ } __attribute__((weak)) void bootblock_soc_init(void) { /* do nothing */ } __attribute__((weak)) void bootblock_mainboard_init(void) { /* do nothing */ } void main(void) { - bootblock_soc_init(); - bootblock_mainboard_init(); + bootblock_mainboard_early_init(); if (CONFIG_BOOTBLOCK_CONSOLE) { console_init(); exception_init(); } + bootblock_soc_init(); + bootblock_mainboard_init(); + run_romstage(); } diff --git a/src/arch/arm/armv7/bootblock_simple.c b/src/arch/arm/armv7/bootblock_simple.c index 450e5b437b..564db5b80a 100644 --- a/src/arch/arm/armv7/bootblock_simple.c +++ b/src/arch/arm/armv7/bootblock_simple.c @@ -27,18 +27,21 @@ #include <program_loading.h> #include <smp/node.h> +__attribute__((weak)) void bootblock_mainboard_early_init(void) { /* no-op */ } __attribute__((weak)) void bootblock_soc_init(void) { /* do nothing */ } __attribute__((weak)) void bootblock_mainboard_init(void) { /* do nothing */ } void main(void) { - bootblock_soc_init(); - bootblock_mainboard_init(); + bootblock_mainboard_early_init(); #if CONFIG_BOOTBLOCK_CONSOLE console_init(); exception_init(); #endif + bootblock_soc_init(); + bootblock_mainboard_init(); + run_romstage(); } diff --git a/src/arch/arm/include/bootblock_common.h b/src/arch/arm/include/bootblock_common.h index 413a206177..06312928da 100644 --- a/src/arch/arm/include/bootblock_common.h +++ b/src/arch/arm/include/bootblock_common.h @@ -21,6 +21,7 @@ #define __ARCH_BOOTBLOCK_COMMON_H /* These are defined as weak no-ops that can be overridden by mainboard/SoC. */ +void bootblock_mainboard_early_init(void); void bootblock_mainboard_init(void); void bootblock_soc_init(void); |