[PATCH v2 3/3] pbl: define DEBUG globally when CONFIG_INITCALL_DEBUG=y

Ahmad Fatoum a.fatoum at pengutronix.de
Mon Dec 12 08:42:12 PST 2022


CONFIG_INITCALL_DEBUG=y is a very useful tool for debugging barebox
hangs, but it's not so useful if the hang happens very early.
Define a new CONFIG_PBL_DEBUG symbol that will define DEBUG globally
in PBL to get more insight into boot hangs.

Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
v1 -> v2:
  - changed into separate config option instead of piggy backing
    CONFIG_DEBUG_INITCALLS (Sascha)
---
 common/Kconfig       | 9 +++++++++
 scripts/Makefile.lib | 4 ++++
 2 files changed, 13 insertions(+)

diff --git a/common/Kconfig b/common/Kconfig
index 19cd79311016..46675dfe2ea7 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -1566,6 +1566,15 @@ config DEBUG_INITCALLS
 	help
 	  If enabled this will print initcall traces.
 
+config DEBUG_PBL
+	bool "Print PBL debugging information"
+	depends on PBL_CONSOLE || DEBUG_LL
+	help
+	  If enabled this will enable all debug prints in the prebootloader.
+	  For this to work, a console needs to be configured in the
+	  board-specific entry point and configured for either DEBUG_LL
+	  or PBL_CONSOLE.
+
 config DEBUG_PROBES
 	bool "Trace driver probes/removes"
 	help
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 85d18f07a2b6..6e0d92cf756d 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -156,6 +156,10 @@ _c_flags       += $(if $(patsubst n%,, \
 PBL_CPPFLAGS   += $(call cc-option,-fno-sanitize=all)
 endif
 
+ifeq ($(CONFIG_DEBUG_PBL),y)
+PBL_CPPFLAGS   += -DDEBUG
+endif
+
 # If building barebox in a separate objtree expand all occurrences
 # of -Idir to -I$(srctree)/dir except for absolute paths (starting with '/').
 
-- 
2.30.2




More information about the barebox mailing list