[meta-xilinx] rootfs on ram

Jek F. jek.fessia at gmail.com
Tue Sep 17 11:57:37 PDT 2019


Thanks for your reply, i'll try this as soon as i can.

Il lun 16 set 2019, 17:37 Jean-Francois Dagenais <jeff.dagenais at gmail.com>
ha scritto:

> Hi Jek,
>
> > On Sep 16, 2019, at 11:15, Jek F. <jek.fessia at gmail.com> wrote:
> >
> > Hi everyone, i propose again the question i desccribed to you at the
> beginning of the summer because I haven't been able to solve it yet.
> > Sorry if i'm boring, but this is a very important topic to me.
> >
> >
> > I'm using a microzed, and i need to create an image that mount rootf on
> ram.
> > I tried to follow the yocto manual for initramfs (
> https://www.yoctoproject.org/docs/latest/mega-manual/mega-manual.html#building-an-initramfs-image),
> but at bitbake it returns this error:
> >
> > ERROR: Nothing PROVIDES 'core-image-minimal-initramfs'
> > core-image-minimal-initramfs was skipped: incompatible with host
> arm-poky-linux-gnueabi (not in COMPATIBLE_HOST)
> > core-image-minimal-initramfs was skipped: incompatible with host
> arm-poky-linux-gnueabi (not in COMPATIBLE_HOST)
> >
> > Any suggestion?
>
> Indeed, the last lines of core-image-minimal-initramfs.bb are:
> # Use the same restriction as initramfs-live-install
> COMPATIBLE_HOST = "(i.86|x86_64).*-linux"
>
> You would need to why they put that there... My hunch is that loading an
> initrd image is very bootload specific. So you can remove them, or override
> the line with a bbappend. You will be missing some glue to make it work
> though.
>
> On zynqmp, one can use u-boot to load the initrd.
>
> I have this in my machine.conf:
> INITRAMFS_FSTYPES = "cpio.gz.u-boot"
>
>
> Then in my image classes that make the initrd rootfs, I have:
> IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}"
>
> (The image recipes use INITRAMFS_FSTYPES to not include knowledge of the
> bootloader/machine underneath. This is just good practice, so you can do
> whatever you want for your recipes.)
>
> But then this will make the .cpio.gz.u-boot file. If you want an image
> which you can dd on, say, an SD card, you need another image for this, one
> which doesn't really make a rootfs, a relevant one anyway, but is bundled
> in the end with the WIC framework with the initrd.cpio.gz.u-boot file
> included. Your WKS file can just mention the boot part, no second rootfs.
>
> I have this in my other image:
> INITRD_IMAGE = "the-initrd-rootfs-recipe"
> IMAGE_FSTYPES = "wic.lz4"
>
>
> Just specifying wic.lz4 is not enough, you need to specify the kickstart
> file to use:
> WKS_FILES = "my-bootonly.wks"
>
> I personally specify this to all my images by using an IMAGE_CLASSES in my
> machine.conf:
>
> IMAGE_CLASSES += "my-image-wic"
>
> This is "my-image-wic.bbclass":
>
> WKS_FILES ?= "my-bootonly.wks"
> WIC_CREATE_EXTRA_ARGS = " --no-fstab-update"
>
> do_image_wic[depends] += "\
> xilinx-bootbin:do_deploy \
> e2fsprogs-native:do_populate_sysroot \
> "
>
> python () {
>     initRdImage = d.getVar("INITRD_IMAGE")
>     if initRdImage:
>         d.appendVarFlag("do_image_wic", "depends", " " + initRdImage +
> ":do_image_complete")
> }
>
> IMAGE_CMD_wic_append() {
>         cd ${DEPLOY_DIR_IMAGE}
>
>         ln -sfv ${IMAGE_LINK_NAME}.wic.lz4 ${IMAGE_LINK_NAME}.sdcard.lz4
> }
>
>
> here's my-bootonly.wks (1 line only):
> part /boot --source bootimg-partition --fstype=vfat --label boot --active
> --align 4096 --extra-space 10
>
> The "bootimg-partition" wic plugin mentioned above expects variable
> IMAGE_BOOT_FILES to be set. Usually, this is defined in the machine.conf:
> IMAGE_BOOT_FILES = "\
>         BOOT-${MACHINE}.bin;boot.bin \
>         Image \
>         ${MACHINE}.dtb \
>         uEnv.txt.example \
>         ${INITRD_IMAGE}.cpio.gz.u-boot;initrd.cpio.gz.u-boot \
> "
>
> Then you need to make your u-boot configuration find a load as initrd a
> file named initrd.cpio.gz.u-boot...
>
>
> This should get you going. I may be doing way more manually than is
> required. I had developed this a while back and it's been working fine for
> us since.
>
>
> Cheers!
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-xilinx/attachments/20190917/5687d0d0/attachment.html>


More information about the meta-xilinx mailing list