From 5e62146ae34eef49ff8c4b52790e0ba6230377e5 Mon Sep 17 00:00:00 2001 From: Sébastien Mennetrier Date: Fri, 14 Feb 2014 01:22:07 +0200 Subject: Add initramfs support MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Permit to build an image with initramfs. Add information in README to build with initramfs. Change-Id: Icb812151a22771717805ec0a82feb7993f462b47 Signed-off-by: Sébastien Mennetrier --- 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 = "" + - 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 -- cgit v1.2.3-54-g00ecf