Skip to content
Snippets Groups Projects
Commit a91f02ab authored by Kumar Gala's avatar Kumar Gala Committed by Tom Rix
Browse files

Add ability for arch code to make changes before we boot


Added a arch_preboot_os() function that cpu specific code can implement to
allow for various modifications to the state of the machine right before
we boot.  This can be useful to setup register state to a specific
configuration.

Signed-off-by: default avatarKumar Gala <galak@kernel.crashing.org>
parent 3fbde187
No related branches found
No related tags found
No related merge requests found
...@@ -166,6 +166,13 @@ void __arch_lmb_reserve(struct lmb *lmb) ...@@ -166,6 +166,13 @@ void __arch_lmb_reserve(struct lmb *lmb)
} }
void arch_lmb_reserve(struct lmb *lmb) __attribute__((weak, alias("__arch_lmb_reserve"))); void arch_lmb_reserve(struct lmb *lmb) __attribute__((weak, alias("__arch_lmb_reserve")));
/* Allow for arch specific config before we boot */
void __arch_preboot_os(void)
{
/* please define platform specific arch_preboot_os() */
}
void arch_preboot_os(void) __attribute__((weak, alias("__arch_preboot_os")));
#if defined(__ARM__) #if defined(__ARM__)
#define IH_INITRD_ARCH IH_ARCH_ARM #define IH_INITRD_ARCH IH_ARCH_ARM
#elif defined(__avr32__) #elif defined(__avr32__)
...@@ -543,6 +550,7 @@ int do_bootm_subcommand (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) ...@@ -543,6 +550,7 @@ int do_bootm_subcommand (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
break; break;
case BOOTM_STATE_OS_GO: case BOOTM_STATE_OS_GO:
disable_interrupts(); disable_interrupts();
arch_preboot_os();
boot_fn(BOOTM_STATE_OS_GO, argc, argv, &images); boot_fn(BOOTM_STATE_OS_GO, argc, argv, &images);
break; break;
} }
...@@ -673,6 +681,8 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) ...@@ -673,6 +681,8 @@ int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
return 1; return 1;
} }
arch_preboot_os();
boot_fn(0, argc, argv, &images); boot_fn(0, argc, argv, &images);
show_boot_progress (-9); show_boot_progress (-9);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment