From: E Shattow <e@freeshell.de>
To: Tom Rini <trini@konsulko.com>
Cc: u-boot@lists.denx.de, E Shattow <e@freeshell.de>
Subject: [PATCH v2] scripts/Makefile.lib: increase detail for dtsi debug output
Date: Mon, 1 Sep 2025 02:44:58 -0700 [thread overview]
Message-ID: <20250901094506.647427-1-e@freeshell.de> (raw)
Skip automatic dtsi selection if ARCH is not defined and introduce
u_boot_dtsi_search for use with foreach method to implement the automatic
dtsi inclusion. Increase code re-use and detail for debug output.
Detailed dtsi automatic selection debug output when DEVICE_TREE_DEBUG=1
- Indicate when key is undefined and skip undefined search pattern
- Indicate when search pattern is found or not found, and the pattern
- Show values of defined keys
Signed-off-by: E Shattow <e@freeshell.de>
---
scripts/Makefile.lib | 34 +++++++++++++++++++++++-----------
1 file changed, 23 insertions(+), 11 deletions(-)
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 5db2fbc418a..0d70868a339 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -195,21 +195,33 @@ cpp_flags = -Wp,-MD,$(depfile) $(NOSTDINC_FLAGS) $(UBOOTINCLUDE) \
ld_flags = $(KBUILD_LDFLAGS) $(ldflags-y) $(LDFLAGS_$(@F))
# Try these files in order to find the U-Boot-specific .dtsi include file
+ifneq ($(strip $(ARCH)),)
+
u_boot_dtsi_loc = $(srctree)/arch/$(ARCH)/dts/
-u_boot_dtsi_options = $(strip $(wildcard $(u_boot_dtsi_loc)$(basename $(notdir $<))-u-boot.dtsi) \
- $(wildcard $(u_boot_dtsi_loc)$(subst $\",,$(CONFIG_SYS_SOC))-u-boot.dtsi) \
- $(wildcard $(u_boot_dtsi_loc)$(subst $\",,$(CONFIG_SYS_CPU))-u-boot.dtsi) \
- $(wildcard $(u_boot_dtsi_loc)$(subst $\",,$(CONFIG_SYS_VENDOR))-u-boot.dtsi) \
+u_boot_dtsi_search = $(<) \
+ $(CONFIG_SYS_SOC) $(CONFIG_SYS_CPU) $(CONFIG_SYS_VENDOR)
+
+u_boot_dtsi_pattern = $(eval x=$$(patsubst "%",%,$(i)))$(strip \
+ $(and $(x),$(wildcard \
+ $(u_boot_dtsi_loc)$(basename $(notdir $(x)))-u-boot.dtsi)))
+
+u_boot_dtsi_options = $(strip \
+ $(foreach i,$(value u_boot_dtsi_search),$(u_boot_dtsi_pattern)) \
$(wildcard $(u_boot_dtsi_loc)u-boot.dtsi))
-u_boot_dtsi_options_raw = $(warning Automatic .dtsi inclusion: options: \
- $(u_boot_dtsi_loc)$(basename $(notdir $<))-u-boot.dtsi \
- $(u_boot_dtsi_loc)$(subst $\",,$(CONFIG_SYS_SOC))-u-boot.dtsi \
- $(u_boot_dtsi_loc)$(subst $\",,$(CONFIG_SYS_CPU))-u-boot.dtsi \
- $(u_boot_dtsi_loc)$(subst $\",,$(CONFIG_SYS_VENDOR))-u-boot.dtsi \
- $(u_boot_dtsi_loc)u-boot.dtsi ... \
- found: $(if $(u_boot_dtsi_options),"$(u_boot_dtsi_options)",nothing!))
+u_boot_dtsi_pattern_raw = $(eval x=$$(patsubst "%",%,$(i))) \
+ $(i)=$(if $(x),$(and $(x),$(x) $(if $(u_boot_dtsi_pattern),,not) \
+ found @ $(u_boot_dtsi_loc)$(basename $(notdir $(x)))-u-boot.dtsi),(undefined)) ||
+
+u_boot_dtsi_options_raw = $(strip \
+ Automatic inclusion \
+ $(or $(u_boot_dtsi_options),(undefined)) from search: \
+ $(foreach i,$(value u_boot_dtsi_search),$(u_boot_dtsi_pattern_raw)) \
+ u-boot.dtsi $(if $(wildcard $(u_boot_dtsi_loc)u-boot.dtsi),,not) \
+ found @ $(u_boot_dtsi_loc)u-boot.dtsi)
+
+endif
# Uncomment for debugging
# This shows all the files that were considered and the one that we chose.
base-commit: e4c8b32d03d7ecffd586b7d33336603ad639d7c0
--
2.50.0
next reply other threads:[~2025-09-01 9:48 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-01 9:44 E Shattow [this message]
2025-09-03 9:17 ` [PATCH v2] scripts/Makefile.lib: increase detail for dtsi debug output E Shattow
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250901094506.647427-1-e@freeshell.de \
--to=e@freeshell.de \
--cc=trini@konsulko.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.