Message ID | 20220724131202.1364133-1-yann.morin.1998@free.fr |
---|---|
State | Accepted |
Headers | show |
Series | package/rpi-firmware: add option to use custom cmdline.txt | expand |
All, On 2022-07-24 15:12 +0200, Yann E. MORIN spake thusly: > Currently, the cmdline.txt file is installed in $(BINARIES_DIR) by the > rpi-firmware package. Overriding files in there can not be done with an > overlay (which only applies to $(TARGET_DIR)), and thus requires using > either a post-build or post-image script, which is not always very > practical when a custom file must be used. > > Like was done in 689b9ac439ab (package/rpi-firmware: rework boot/config > file handling) for config.txt, add an option to allow users to specify > the path to a custom cmdline.txt. > > Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> > Cc: Peter Seiderer <ps.report@gmx.net> Applied to master, thanks. Regards, Yann E. MORIN. > --- > .../rpi-firmware => board/raspberrypi}/cmdline.txt | 0 > package/rpi-firmware/Config.in | 7 +++++++ > package/rpi-firmware/rpi-firmware.mk | 10 +++++++++- > 3 files changed, 16 insertions(+), 1 deletion(-) > rename {package/rpi-firmware => board/raspberrypi}/cmdline.txt (100%) > > diff --git a/package/rpi-firmware/cmdline.txt b/board/raspberrypi/cmdline.txt > similarity index 100% > rename from package/rpi-firmware/cmdline.txt > rename to board/raspberrypi/cmdline.txt > diff --git a/package/rpi-firmware/Config.in b/package/rpi-firmware/Config.in > index 8070dc3019..a9aeaed745 100644 > --- a/package/rpi-firmware/Config.in > +++ b/package/rpi-firmware/Config.in > @@ -69,6 +69,13 @@ config BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE > Path to a file stored as config.txt in the boot partiton > of the generated SD card image. > > +config BR2_PACKAGE_RPI_FIRMWARE_CMDLINE_FILE > + string "Path to a file stored as boot/cmdline.txt" > + default "board/raspberrypi/cmdline.txt" # legacy > + help > + Path to a file stored as cmdline.txt in the boot partiton > + of the generated SD card image. > + > config BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS > bool "Install Device Tree Blobs (DTBs)" > default y > diff --git a/package/rpi-firmware/rpi-firmware.mk b/package/rpi-firmware/rpi-firmware.mk > index d4d1d07b3f..6f5902fd52 100644 > --- a/package/rpi-firmware/rpi-firmware.mk > +++ b/package/rpi-firmware/rpi-firmware.mk > @@ -35,6 +35,14 @@ define RPI_FIRMWARE_INSTALL_CONFIG > endef > endif > > +RPI_FIRMWARE_CMDLINE_FILE = $(call qstrip,$(BR2_PACKAGE_RPI_FIRMWARE_CMDLINE_FILE)) > +ifneq ($(RPI_FIRMWARE_CMDLINE_FILE),) > +define RPI_FIRMWARE_INSTALL_CMDLINE > + $(INSTALL) -D -m 0644 $(RPI_FIRMWARE_CMDLINE_FILE) \ > + $(BINARIES_DIR)/rpi-firmware/cmdline.txt > +endef > +endif > + > ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS),y) > define RPI_FIRMWARE_INSTALL_DTB > $(foreach dtb,$(wildcard $(@D)/boot/*.dtb), \ > @@ -79,9 +87,9 @@ endef > endif # INSTALL_VCDBG > > define RPI_FIRMWARE_INSTALL_IMAGES_CMDS > - $(INSTALL) -D -m 0644 package/rpi-firmware/cmdline.txt $(BINARIES_DIR)/rpi-firmware/cmdline.txt > $(RPI_FIRMWARE_INSTALL_BIN) > $(RPI_FIRMWARE_INSTALL_CONFIG) > + $(RPI_FIRMWARE_INSTALL_CMDLINE) > $(RPI_FIRMWARE_INSTALL_DTB) > $(RPI_FIRMWARE_INSTALL_DTB_OVERLAYS) > endef > -- > 2.25.1 > > _______________________________________________ > buildroot mailing list > buildroot@buildroot.org > https://lists.buildroot.org/mailman/listinfo/buildroot
diff --git a/package/rpi-firmware/cmdline.txt b/board/raspberrypi/cmdline.txt similarity index 100% rename from package/rpi-firmware/cmdline.txt rename to board/raspberrypi/cmdline.txt diff --git a/package/rpi-firmware/Config.in b/package/rpi-firmware/Config.in index 8070dc3019..a9aeaed745 100644 --- a/package/rpi-firmware/Config.in +++ b/package/rpi-firmware/Config.in @@ -69,6 +69,13 @@ config BR2_PACKAGE_RPI_FIRMWARE_CONFIG_FILE Path to a file stored as config.txt in the boot partiton of the generated SD card image. +config BR2_PACKAGE_RPI_FIRMWARE_CMDLINE_FILE + string "Path to a file stored as boot/cmdline.txt" + default "board/raspberrypi/cmdline.txt" # legacy + help + Path to a file stored as cmdline.txt in the boot partiton + of the generated SD card image. + config BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS bool "Install Device Tree Blobs (DTBs)" default y diff --git a/package/rpi-firmware/rpi-firmware.mk b/package/rpi-firmware/rpi-firmware.mk index d4d1d07b3f..6f5902fd52 100644 --- a/package/rpi-firmware/rpi-firmware.mk +++ b/package/rpi-firmware/rpi-firmware.mk @@ -35,6 +35,14 @@ define RPI_FIRMWARE_INSTALL_CONFIG endef endif +RPI_FIRMWARE_CMDLINE_FILE = $(call qstrip,$(BR2_PACKAGE_RPI_FIRMWARE_CMDLINE_FILE)) +ifneq ($(RPI_FIRMWARE_CMDLINE_FILE),) +define RPI_FIRMWARE_INSTALL_CMDLINE + $(INSTALL) -D -m 0644 $(RPI_FIRMWARE_CMDLINE_FILE) \ + $(BINARIES_DIR)/rpi-firmware/cmdline.txt +endef +endif + ifeq ($(BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTBS),y) define RPI_FIRMWARE_INSTALL_DTB $(foreach dtb,$(wildcard $(@D)/boot/*.dtb), \ @@ -79,9 +87,9 @@ endef endif # INSTALL_VCDBG define RPI_FIRMWARE_INSTALL_IMAGES_CMDS - $(INSTALL) -D -m 0644 package/rpi-firmware/cmdline.txt $(BINARIES_DIR)/rpi-firmware/cmdline.txt $(RPI_FIRMWARE_INSTALL_BIN) $(RPI_FIRMWARE_INSTALL_CONFIG) + $(RPI_FIRMWARE_INSTALL_CMDLINE) $(RPI_FIRMWARE_INSTALL_DTB) $(RPI_FIRMWARE_INSTALL_DTB_OVERLAYS) endef
Currently, the cmdline.txt file is installed in $(BINARIES_DIR) by the rpi-firmware package. Overriding files in there can not be done with an overlay (which only applies to $(TARGET_DIR)), and thus requires using either a post-build or post-image script, which is not always very practical when a custom file must be used. Like was done in 689b9ac439ab (package/rpi-firmware: rework boot/config file handling) for config.txt, add an option to allow users to specify the path to a custom cmdline.txt. Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr> Cc: Peter Seiderer <ps.report@gmx.net> --- .../rpi-firmware => board/raspberrypi}/cmdline.txt | 0 package/rpi-firmware/Config.in | 7 +++++++ package/rpi-firmware/rpi-firmware.mk | 10 +++++++++- 3 files changed, 16 insertions(+), 1 deletion(-) rename {package/rpi-firmware => board/raspberrypi}/cmdline.txt (100%)