From cb80ff20f2c8392f19248418f9a19a0474661860 Mon Sep 17 00:00:00 2001 From: Tom Rini Date: Mon, 3 May 2021 16:48:58 -0400 Subject: [PATCH] bootstage: Eliminate when not enabled When we do not have bootstage enabled, rather than include an empty dummy function, we just don't reference it. This saves us space in some tight builds. This also shows a few cases where show_boot_progress was incorrectly guarded before. Cc: Simon Glass Signed-off-by: Tom Rini --- arch/x86/cpu/cpu.c | 2 ++ board/Seagate/dockstar/dockstar.c | 2 ++ board/Seagate/goflexhome/goflexhome.c | 2 ++ board/bosch/shc/board.c | 6 +++--- board/buffalo/lsxl/lsxl.c | 2 +- board/k+p/kp_imx53/kp_imx53.c | 2 ++ board/st/stv0991/stv0991.c | 2 +- common/init/board_init.c | 2 ++ common/spl/spl.c | 2 ++ include/bootstage.h | 4 +++- 10 files changed, 20 insertions(+), 6 deletions(-) diff --git a/arch/x86/cpu/cpu.c b/arch/x86/cpu/cpu.c index 9c4edfcbfd..01dece5769 100644 --- a/arch/x86/cpu/cpu.c +++ b/arch/x86/cpu/cpu.c @@ -178,10 +178,12 @@ int default_print_cpuinfo(void) return 0; } +#if CONFIG_IS_ENABLED(BOOTSTAGE) void show_boot_progress(int val) { outb(val, POST_PORT); } +#endif #if !defined(CONFIG_SYS_COREBOOT) && !defined(CONFIG_EFI_STUB) /* diff --git a/board/Seagate/dockstar/dockstar.c b/board/Seagate/dockstar/dockstar.c index 380e37be55..fb69193158 100644 --- a/board/Seagate/dockstar/dockstar.c +++ b/board/Seagate/dockstar/dockstar.c @@ -140,6 +140,7 @@ void reset_phy(void) } #endif /* CONFIG_RESET_PHY_R */ +#if CONFIG_IS_ENABLED(BOOTSTAGE) #define GREEN_LED (1 << 14) #define ORANGE_LED (1 << 15) #define BOTH_LEDS (GREEN_LED | ORANGE_LED) @@ -169,3 +170,4 @@ void show_boot_progress(int val) break; } } +#endif diff --git a/board/Seagate/goflexhome/goflexhome.c b/board/Seagate/goflexhome/goflexhome.c index 4c19fa7195..af8cab7bdc 100644 --- a/board/Seagate/goflexhome/goflexhome.c +++ b/board/Seagate/goflexhome/goflexhome.c @@ -142,6 +142,7 @@ void reset_phy(void) } #endif /* CONFIG_RESET_PHY_R */ +#if CONFIG_IS_ENABLED(BOOTSTAGE) #define GREEN_LED (1 << 14) #define ORANGE_LED (1 << 15) #define BOTH_LEDS (GREEN_LED | ORANGE_LED) @@ -175,3 +176,4 @@ void show_boot_progress(int val) break; } } +#endif diff --git a/board/bosch/shc/board.c b/board/bosch/shc/board.c index 86356e3875..13fd25e407 100644 --- a/board/bosch/shc/board.c +++ b/board/bosch/shc/board.c @@ -188,7 +188,7 @@ static void __maybe_unused leds_set_booting(void) /* * Function to set the LEDs in the state "Bootloader error" */ -static void leds_set_failure(int state) +static void __maybe_unused leds_set_failure(int state) { #if defined(CONFIG_B_SAMPLE) /* Turn all blue and green LEDs off */ @@ -479,7 +479,7 @@ int board_eth_init(struct bd_info *bis) } #endif -#ifdef CONFIG_SHOW_BOOT_PROGRESS +#if CONFIG_IS_ENABLED(BOOTSTAGE) static void bosch_check_reset_pin(void) { if (readl(GPIO1_BASE + OMAP_GPIO_IRQSTATUS_SET_0) & RESET_MASK) { @@ -525,9 +525,9 @@ void show_boot_progress(int val) break; } } +#endif void arch_preboot_os(void) { leds_set_finish(); } -#endif diff --git a/board/buffalo/lsxl/lsxl.c b/board/buffalo/lsxl/lsxl.c index 34be601fdd..738b6bc25c 100644 --- a/board/buffalo/lsxl/lsxl.c +++ b/board/buffalo/lsxl/lsxl.c @@ -271,7 +271,7 @@ int misc_init_r(void) } #endif -#ifdef CONFIG_SHOW_BOOT_PROGRESS +#if CONFIG_IS_ENABLED(BOOTSTAGE) void show_boot_progress(int progress) { if (progress > 0) diff --git a/board/k+p/kp_imx53/kp_imx53.c b/board/k+p/kp_imx53/kp_imx53.c index cc8118b4ad..7c3a695cb2 100644 --- a/board/k+p/kp_imx53/kp_imx53.c +++ b/board/k+p/kp_imx53/kp_imx53.c @@ -155,6 +155,7 @@ int board_late_init(void) return ret; } +#if CONFIG_IS_ENABLED(BOOTSTAGE) #define GPIO_DR 0x0 #define GPIO_GDIR 0x4 #define GPIO_ALT1 0x1 @@ -203,3 +204,4 @@ void show_boot_progress(int status) gpio_direction_output(LED_RED, 1); } } +#endif diff --git a/board/st/stv0991/stv0991.c b/board/st/stv0991/stv0991.c index 3b0de82db2..57ca9f659c 100644 --- a/board/st/stv0991/stv0991.c +++ b/board/st/stv0991/stv0991.c @@ -37,7 +37,7 @@ U_BOOT_DRVINFO(stv09911_serials) = { }; #endif -#ifdef CONFIG_SHOW_BOOT_PROGRESS +#if CONFIG_IS_ENABLED(BOOTSTAGE) void show_boot_progress(int progress) { printf("%i\n", progress); diff --git a/common/init/board_init.c b/common/init/board_init.c index 3f183ee113..0965b96fa3 100644 --- a/common/init/board_init.c +++ b/common/init/board_init.c @@ -166,7 +166,9 @@ void board_init_f_init_reserve(ulong base) board_init_f_init_stack_protection(); } +#if CONFIG_IS_ENABLED(BOOTSTAGE) /* * Board-specific Platform code can reimplement show_boot_progress () if needed */ __weak void show_boot_progress(int val) {} +#endif diff --git a/common/spl/spl.c b/common/spl/spl.c index a0a608fd77..eba77cace6 100644 --- a/common/spl/spl.c +++ b/common/spl/spl.c @@ -58,10 +58,12 @@ binman_sym_declare(ulong, spl, size); /* Define board data structure */ static struct bd_info bdata __attribute__ ((section(".data"))); +#if CONFIG_IS_ENABLED(BOOTSTAGE) /* * Board-specific Platform code can reimplement show_boot_progress () if needed */ __weak void show_boot_progress(int val) {} +#endif #if defined(CONFIG_SPL_OS_BOOT) || CONFIG_IS_ENABLED(HANDOFF) || \ defined(CONFIG_SPL_ATF) diff --git a/include/bootstage.h b/include/bootstage.h index 00c85fb86a..f837a387c8 100644 --- a/include/bootstage.h +++ b/include/bootstage.h @@ -11,6 +11,8 @@ #ifndef _BOOTSTAGE_H #define _BOOTSTAGE_H +#include + /* Flags for each bootstage record */ enum bootstage_flags { BOOTSTAGEF_ERROR = 1 << 0, /* Error record */ @@ -218,7 +220,7 @@ enum bootstage_id { */ ulong timer_get_boot_us(void); -#if defined(USE_HOSTCC) +#if defined(USE_HOSTCC) || !CONFIG_IS_ENABLED(BOOTSTAGE) #define show_boot_progress(val) do {} while (0) #else /** -- 2.39.5