Add the option to add the 'linux-appendroot true' to blspec config file
which is very useful in case of using barebox as bootlaoder.

Signed-off-by: Marco Felsch <m.fel...@pengutronix.de>
---
Hi,

the v1 of this patch can be found here:
https://lore.ptxdist.org/ptxdist/20220901085941.2597793-1-m.fel...@pengutronix.de/

Changes:
v2:
 - keep the @LINUXAPPENDROOT@ empty if not enabled

 platforms/blspec-entry.in               |  8 ++++++++
 projectroot/loader/entries/default.conf |  1 +
 rules/blspec-entry.make                 | 10 +++++++++-
 3 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/platforms/blspec-entry.in b/platforms/blspec-entry.in
index aed65d4..c2aea36 100644
--- a/platforms/blspec-entry.in
+++ b/platforms/blspec-entry.in
@@ -16,4 +16,12 @@ config BLSPEC_ENTRY_CMDLINE
        string
        prompt "kernel command-line"
 
+config BLSPEC_ENTRY_APPENDROOT
+       bool
+       prompt "Add 'linux-appendroot true'"
+       help
+         If enabled this options adds 'linux-appendroot true' to the blspec
+         entry. This is a barebox specific blspec option which tells barebox
+         to add the 'root=' kernel command line automatically if set.
+
 endif
diff --git a/projectroot/loader/entries/default.conf 
b/projectroot/loader/entries/default.conf
index 5650907..d281569 100644
--- a/projectroot/loader/entries/default.conf
+++ b/projectroot/loader/entries/default.conf
@@ -3,3 +3,4 @@ version         @VERSION@
 options                @CMDLINE@
 linux          @KERNEL@
 @DEVICETREE@
+@LINUXAPPENDROOT@
diff --git a/rules/blspec-entry.make b/rules/blspec-entry.make
index f393b1b..7523009 100644
--- a/rules/blspec-entry.make
+++ b/rules/blspec-entry.make
@@ -35,6 +35,12 @@ else
 BLSPEC_KERNEL_IMAGE    = $(KERNEL_IMAGE)
 endif
 
+ifdef PTXCONF_BLSPEC_ENTRY_APPENDROOT
+BLSPEC_APPENDROOT      = linux-appendroot\ttrue
+else
+BLSPEC_APPENDROOT      =
+endif
+
 $(STATEDIR)/blspec-entry.targetinstall:
        @$(call targetinfo)
 
@@ -56,7 +62,9 @@ $(STATEDIR)/blspec-entry.targetinstall:
                $(call install_replace, blspec-entry, 
/loader/entries/$(name).conf, \
                        @KERNEL@,'/boot/$(BLSPEC_KERNEL_IMAGE)')$(ptx/nl) \
                $(call install_replace, blspec-entry, 
/loader/entries/$(name).conf, \
-                       @DEVICETREE@,'$(call 
blspec/devicetree,$(name))')$(ptx/nl))
+                       @DEVICETREE@,'$(call 
blspec/devicetree,$(name))')$(ptx/nl) \
+               $(call install_replace, blspec-entry, 
/loader/entries/$(name).conf, \
+                       @LINUXAPPENDROOT@,'$(BLSPEC_APPENDROOT)')$(ptx/nl))
 
        @$(call install_finish,blspec-entry)
 
-- 
2.30.2


Reply via email to