summaryrefslogtreecommitdiff
path: root/meta-raspberrypi-extra
diff options
context:
space:
mode:
authorunitexe <unitexe70@gmail.com>2026-01-10 23:33:48 -0600
committerunitexe <unitexe70@gmail.com>2026-01-11 00:30:56 -0600
commite99d9bb6788424ec7711d187985bb93b8b5c1175 (patch)
treebc37f1d07e4a27a62099b8160b6e40a73ce631f2 /meta-raspberrypi-extra
parentd9466d72d1bed7f6fa34ae14cbf81395c9bde705 (diff)
Introduce meta-raspberrypi-extra
- Install copies of cmdline, config & uboot script to rootfs; they are normally just installed to the boot partitioin but having a copy on the rootfs makes making changes and updating them easier - The rpi-eeprom package does not support raspberrypi3-64, it has not EEPROM
Diffstat (limited to 'meta-raspberrypi-extra')
-rw-r--r--meta-raspberrypi-extra/conf/layer.conf14
-rw-r--r--meta-raspberrypi-extra/recipes-bsp/bootfiles/rpi-cmdline-rootfs.bb16
-rw-r--r--meta-raspberrypi-extra/recipes-bsp/bootfiles/rpi-config-rootfs.bb16
-rw-r--r--meta-raspberrypi-extra/recipes-bsp/rpi-u-boot-scr/rpi-u-boot-scr-rootfs.bb16
-rw-r--r--meta-raspberrypi-extra/recipes-core/packagegroups/packagegroup-unit-rpi.bb13
5 files changed, 75 insertions, 0 deletions
diff --git a/meta-raspberrypi-extra/conf/layer.conf b/meta-raspberrypi-extra/conf/layer.conf
new file mode 100644
index 0000000..3f02a5e
--- /dev/null
+++ b/meta-raspberrypi-extra/conf/layer.conf
@@ -0,0 +1,14 @@
+BBPATH .= ":${LAYERDIR}"
+
+BBFILES += "\
+ ${LAYERDIR}/recipes-*/*/*.bb \
+ ${LAYERDIR}/recipes-*/*/*.bbappend \
+"
+
+BBFILE_COLLECTIONS += "raspberrypi-extra-layer"
+BBFILE_PATTERN_raspberrypi-extra-layer = "^${LAYERDIR}/"
+BBFILE_PRIORITY_raspberrypi-extra-layer = "12"
+
+LAYERDEPENDS_raspberrypi-extra-layer += "raspberrypi"
+
+LAYERSERIES_COMPAT_raspberrypi-extra-layer = "whinlatter"
diff --git a/meta-raspberrypi-extra/recipes-bsp/bootfiles/rpi-cmdline-rootfs.bb b/meta-raspberrypi-extra/recipes-bsp/bootfiles/rpi-cmdline-rootfs.bb
new file mode 100644
index 0000000..22cf176
--- /dev/null
+++ b/meta-raspberrypi-extra/recipes-bsp/bootfiles/rpi-cmdline-rootfs.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Install a copy of cmdline.txt to rootfs"
+LICENSE = "MIT"
+
+DEPENDS = "rpi-cmdline"
+
+inherit allarch
+
+do_install() {
+ install -d ${D}${sysconfdir}/rpi
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/${BOOTFILES_DIR_NAME}/cmdline.txt ${D}${sysconfdir}/rpi/cmdline.txt
+}
+
+FILES:${PN} = "${sysconfdir}/rpi/cmdline.txt"
+
+# Ensure rpi-cmdline's do_deploy runs before rootfs installation
+do_install[depends] += "rpi-cmdline:do_deploy"
diff --git a/meta-raspberrypi-extra/recipes-bsp/bootfiles/rpi-config-rootfs.bb b/meta-raspberrypi-extra/recipes-bsp/bootfiles/rpi-config-rootfs.bb
new file mode 100644
index 0000000..0bea2a2
--- /dev/null
+++ b/meta-raspberrypi-extra/recipes-bsp/bootfiles/rpi-config-rootfs.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Install a copy of config.txt to rootfs"
+LICENSE = "MIT"
+
+DEPENDS = "rpi-config"
+
+inherit allarch
+
+do_install() {
+ install -d ${D}${sysconfdir}/rpi
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/${BOOTFILES_DIR_NAME}/config.txt ${D}${sysconfdir}/rpi/config.txt
+}
+
+FILES:${PN} = "${sysconfdir}/rpi/config.txt"
+
+# Ensure rpi-config's do_deploy runs before rootfs installation
+do_install[depends] += "rpi-config:do_deploy"
diff --git a/meta-raspberrypi-extra/recipes-bsp/rpi-u-boot-scr/rpi-u-boot-scr-rootfs.bb b/meta-raspberrypi-extra/recipes-bsp/rpi-u-boot-scr/rpi-u-boot-scr-rootfs.bb
new file mode 100644
index 0000000..60b6f37
--- /dev/null
+++ b/meta-raspberrypi-extra/recipes-bsp/rpi-u-boot-scr/rpi-u-boot-scr-rootfs.bb
@@ -0,0 +1,16 @@
+SUMMARY = "Install a copy of rpi u-boot boot script to rootfs"
+LICENSE = "MIT"
+
+DEPENDS = "rpi-u-boot-scr"
+
+inherit allarch
+
+do_install() {
+ install -d ${D}${sysconfdir}/rpi
+ install -m 0644 ${DEPLOY_DIR_IMAGE}/boot.scr ${D}${sysconfdir}/rpi/boot.scr
+}
+
+FILES:${PN} = "${sysconfdir}/rpi/boot.scr"
+
+# Ensure rpi-u-boot-scr's do_deploy runs before rootfs installation
+do_install[depends] += "rpi-u-boot-scr:do_deploy"
diff --git a/meta-raspberrypi-extra/recipes-core/packagegroups/packagegroup-unit-rpi.bb b/meta-raspberrypi-extra/recipes-core/packagegroups/packagegroup-unit-rpi.bb
new file mode 100644
index 0000000..d606aba
--- /dev/null
+++ b/meta-raspberrypi-extra/recipes-core/packagegroups/packagegroup-unit-rpi.bb
@@ -0,0 +1,13 @@
+SUMMARY = "Raspberrypi specific packages"
+
+inherit packagegroup
+
+# Allows updating RPIs on board EEPROM (if it has one).
+RDEPENDS:${PN}:append:raspberrypi5 = " rpi-eeprom"
+
+# Install copies of files that reside on
+# the boot partition to make updating them
+# easier.
+RDEPENDS:${PN}:append = " rpi-config-rootfs"
+RDEPENDS:${PN}:append = " rpi-cmdline-rootfs"
+RDEPENDS:${PN}:append = " rpi-u-boot-scr-rootfs"