[yocto] [meta-raspberrypi][PATCH V3] Add initramfs support
Sébastien Mennetrier
s.mennetrier at innotis.org
Tue Feb 11 08:33:30 PST 2014
Permit to build an image with initramfs.
Add information in README to build with initramfs.
Signed-off-by: Sébastien Mennetrier <s.mennetrier at innotis.org>
---
README | 13 +++++++++++++
classes/sdcard_image-rpi.bbclass | 7 +++++--
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/README b/README
index fc492c5..daa4059 100644
--- a/README
+++ b/README
@@ -37,6 +37,7 @@ Contents:
2.F. Optional - Video camera support with V4L2 drivers
2.G. Images
2.H. Boot to U-Boot
+ 2.I. Image with Initramfs
3. Extra apps
3.A. omxplayer
4. Source code and mirrors
@@ -155,6 +156,18 @@ KERNEL_IMAGETYPE = "uImage"
This will make kernel.img be u-boot image which will load uImage.
By default, kernel.img is the actual kernel image (ex. Image).
+2.I. Image with Initramfs
+=========================
+To build an initramfs image :
+ * Set this 3 kernel variables (in linux-raspberrypi.inc for example)
+ - kernel_configure_variable BLK_DEV_INITRD y
+ - kernel_configure_variable INITRAMFS_SOURCE ""
+ - kernel_configure_variable RD_GZIP y
+ * Set the yocto variables (in linux-raspberrypi.inc for example)
+ - INITRAMFS_IMAGE = "<a name for your initramfs image>"
+ - INITRAMFS_IMAGE_BUNDLE = "1"
+ * Set the meta-rasberrypi variable (in raspberrypi.conf for example)
+ - KERNEL_INITRAMFS = "-initramfs"
3. Extra apps
=============
diff --git a/classes/sdcard_image-rpi.bbclass b/classes/sdcard_image-rpi.bbclass
index 179b7b7..eb337dc 100644
--- a/classes/sdcard_image-rpi.bbclass
+++ b/classes/sdcard_image-rpi.bbclass
@@ -26,6 +26,9 @@ inherit image_types
# Set kernel and boot loader
IMAGE_BOOTLOADER ?= "bcm2835-bootfiles"
+# Set initramfs extension
+KERNEL_INITRAMFS ?= ""
+
# Boot partition volume id
BOOTDD_VOLUME_ID ?= "${MACHINE}"
@@ -95,10 +98,10 @@ IMAGE_CMD_rpi-sdimg () {
case "${KERNEL_IMAGETYPE}" in
"uImage")
mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/u-boot.img ::kernel.img
- mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin ::uImage
+ mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin ::uImage
;;
*)
- mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}-${MACHINE}.bin ::kernel.img
+ mcopy -i ${WORKDIR}/boot.img -s ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}${KERNEL_INITRAMFS}-${MACHINE}.bin ::kernel.img
;;
esac
--
1.8.1.2
More information about the yocto
mailing list