X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=include%2Fbootstage.h;h=f507271375f2882a3d14753523bf0019a76607ff;hb=406df85345f942d9348443983d81a01e013e920b;hp=848769bd1f4b01a5606c72d5fa95f8ab509a6d55;hpb=e003310a76211c2a9bb1939db4633830594c35ba;p=oweals%2Fu-boot.git diff --git a/include/bootstage.h b/include/bootstage.h index 848769bd1f..f507271375 100644 --- a/include/bootstage.h +++ b/include/bootstage.h @@ -1,3 +1,4 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ /* * This file implements recording of each stage of the boot process. It is * intended to implement timing of each stage, reporting this information @@ -5,18 +6,11 @@ * Note that it requires timer_get_boot_us() to be defined by the board * * Copyright (c) 2011 The Chromium OS Authors. - * - * SPDX-License-Identifier: GPL-2.0+ */ #ifndef _BOOTSTAGE_H #define _BOOTSTAGE_H -/* Define this for host tools */ -#ifndef CONFIG_BOOTSTAGE_USER_COUNT -#define CONFIG_BOOTSTAGE_USER_COUNT 20 -#endif - /* Flags for each bootstage record */ enum bootstage_flags { BOOTSTAGEF_ERROR = 1 << 0, /* Error record */ @@ -176,7 +170,10 @@ enum bootstage_id { * rough boot timing information. */ BOOTSTAGE_ID_AWAKE, + BOOTSTAGE_ID_START_TPL, + BOOTSTAGE_ID_END_TPL, BOOTSTAGE_ID_START_SPL, + BOOTSTAGE_ID_END_SPL, BOOTSTAGE_ID_START_UBOOT_F, BOOTSTAGE_ID_START_UBOOT_R, BOOTSTAGE_ID_USB_START, @@ -186,6 +183,7 @@ enum bootstage_id { BOOTSTAGE_ID_BOOTM_START, BOOTSTAGE_ID_BOOTM_HANDOFF, BOOTSTAGE_ID_MAIN_LOOP, + BOOTSTAGE_ID_ENTER_CLI_LOOP, BOOTSTAGE_KERNELREAD_START, BOOTSTAGE_KERNELREAD_STOP, BOOTSTAGE_ID_BOARD_INIT, @@ -199,13 +197,17 @@ enum bootstage_id { BOOTSTAGE_ID_ACCUM_SCSI, BOOTSTAGE_ID_ACCUM_SPI, BOOTSTAGE_ID_ACCUM_DECOMP, + BOOTSTAGE_ID_ACCUM_OF_LIVE, BOOTSTAGE_ID_FPGA_INIT, - BOOTSTATE_ID_ACCUM_DM_F, - BOOTSTATE_ID_ACCUM_DM_R, + BOOTSTAGE_ID_ACCUM_DM_SPL, + BOOTSTAGE_ID_ACCUM_DM_F, + BOOTSTAGE_ID_ACCUM_DM_R, + BOOTSTAGE_ID_ACCUM_FSP_M, + BOOTSTAGE_ID_ACCUM_FSP_S, + BOOTSTAGE_ID_ACCUM_MMAP_SPI, /* a few spare for the user, from here */ BOOTSTAGE_ID_USER, - BOOTSTAGE_ID_COUNT = BOOTSTAGE_ID_USER + CONFIG_BOOTSTAGE_USER_COUNT, BOOTSTAGE_ID_ALLOC, }; @@ -228,8 +230,14 @@ ulong timer_get_boot_us(void); void show_boot_progress(int val); #endif -#if defined(CONFIG_BOOTSTAGE) && !defined(CONFIG_SPL_BUILD) && \ - !defined(USE_HOSTCC) +#if !defined(USE_HOSTCC) +#if CONFIG_IS_ENABLED(BOOTSTAGE) +#define ENABLE_BOOTSTAGE +#endif +#endif + +#ifdef ENABLE_BOOTSTAGE + /* This is the full bootstage implementation */ /** @@ -333,7 +341,7 @@ int bootstage_stash(void *base, int size); * there is not space for read the stacked data, or other error if * something else went wrong */ -int bootstage_unstash(void *base, int size); +int bootstage_unstash(const void *base, int size); /** * bootstage_get_size() - Get the size of the bootstage data @@ -406,7 +414,7 @@ static inline int bootstage_stash(void *base, int size) return 0; /* Pretend to succeed */ } -static inline int bootstage_unstash(void *base, int size) +static inline int bootstage_unstash(const void *base, int size) { return 0; /* Pretend to succeed */ } @@ -420,7 +428,8 @@ static inline int bootstage_init(bool first) { return 0; } -#endif /* CONFIG_BOOTSTAGE */ + +#endif /* ENABLE_BOOTSTAGE */ /* Helper macro for adding a bootstage to a line of code */ #define BOOTSTAGE_MARKER() \