diff options
author | Simon Glass <sjg@chromium.org> | 2012-02-13 13:51:21 (GMT) |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2012-03-18 20:43:17 (GMT) |
commit | f933e84e3497bddf29b8183ca6ee37a7a12e9ac3 (patch) | |
tree | 85217517391aed95264cf6bb9b8dd4186eaa1ffd /arch/arm | |
parent | 573f14fe4ed5b803207824be9e3147e894b68f8b (diff) | |
download | u-boot-f933e84e3497bddf29b8183ca6ee37a7a12e9ac3.tar.xz |
bootstage: arm: Add bootstage calls in board and bootm
Add calls to bootstage before and after relocation, and just
before jumping to the OS.
The idea here is you can call bootstage_report() to get a report.
Additionally, if you define CONFIG_BOOTSTAGE_REPORT then a report is
printed automatically by U-Boot just before jumping to the kernel.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/lib/board.c | 3 | ||||
-rw-r--r-- | arch/arm/lib/bootm.c | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/lib/board.c b/arch/arm/lib/board.c index 500e216..b9b35de 100644 --- a/arch/arm/lib/board.c +++ b/arch/arm/lib/board.c @@ -266,6 +266,8 @@ void board_init_f(ulong bootflag) ulong reg; #endif + bootstage_mark_name(BOOTSTAGE_ID_START_UBOOT_F, "board_init_f"); + /* Pointer is writable since we allocated a register for it */ gd = (gd_t *) ((CONFIG_SYS_INIT_SP_ADDR) & ~0x07); /* compiler optimization barrier needed for GCC >= 3.4 */ @@ -455,6 +457,7 @@ void board_init_r(gd_t *id, ulong dest_addr) gd = id; gd->flags |= GD_FLG_RELOC; /* tell others: relocation done */ + bootstage_mark_name(BOOTSTAGE_ID_START_UBOOT_R, "board_init_r"); monitor_flash_len = _end_ofs; diff --git a/arch/arm/lib/bootm.c b/arch/arm/lib/bootm.c index f114cd6..2961ab2 100644 --- a/arch/arm/lib/bootm.c +++ b/arch/arm/lib/bootm.c @@ -83,6 +83,10 @@ void arch_lmb_reserve(struct lmb *lmb) static void announce_and_cleanup(void) { printf("\nStarting kernel ...\n\n"); + bootstage_mark_name(BOOTSTAGE_ID_BOOTM_HANDOFF, "start_kernel"); +#ifdef CONFIG_BOOTSTAGE_REPORT + bootstage_report(); +#endif #ifdef CONFIG_USB_DEVICE { |