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 <s...@chromium.org>
Signed-off-by: Tom Rini <tr...@konsulko.com>
---
Moving to gcc-11 causes at least one well maintained and used board to
now run out of space, and this saves us 400 bytes in SPL.
---
 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 9c4edfcbfdaa..01dece5769c8 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 380e37be5502..fb6919315804 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 4c19fa7195e8..af8cab7bdc73 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 e89378188728..01d9ce4f71f9 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 34be601fdde6..738b6bc25cea 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 cc8118b4ad4f..7c3a695cb258 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 3b0de82db283..57ca9f659c16 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 3f183ee11326..0965b96fa3ad 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 a0a608fd7725..eba77cace6df 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 00c85fb86aa2..f837a387c8c7 100644
--- a/include/bootstage.h
+++ b/include/bootstage.h
@@ -11,6 +11,8 @@
 #ifndef _BOOTSTAGE_H
 #define _BOOTSTAGE_H
 
+#include <linux/kconfig.h>
+
 /* 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.17.1

Reply via email to