Closed dawithers closed 6 years ago
boot.bin does not include rootfs, it includes fsbl,pmufw,bitstream,u-boot.elf. I am failing to understand how will initiramfs cause the circular depedency. Why is rootfs in boot.bin? whats the use case for this?
We have added the Image+rootfs to the boot.bin because for our use, it must boot with the same rootfs on every boot. Basically the way a livecd works. We don't have or want writable storage during runtime. Everything must run from RAM. So the boot.bin contains everything including the Image+rootfs and all are stored in QSPI. We were using rel-v2017.2 previously with no problem. I understand that the typical use case is to have the image and rootfs on some non-volatile memory and therefore it isn't typically built into the boot.bin, but the mechanisms are there for bundling the Image with an initramfs even for use on an SD card, so why not in QSPI as well?
See the patch on mailing list, the bbclass is converted to a bb file which might help your cause
Thanks, do you have a link to the thread? I'm having trouble finding it.
Hello, I think I've found the patch mharth is talking about
https://lists.yoctoproject.org/pipermail/meta-xilinx/2018-January/003545.html
And I've applied it, but I'm still getting dependency loops and errors with PREFERRED_PROVIDER_virtual/boot-bin set to u-boot-xlnx, not xilinx-bootbin When I change to xilinx-bootbin, dependency loops start to appear.
Are there any news on this or some other patches for this issue?
Hi, in the new proposed patch, we dont have any new tasks like do_xilinx-bootbin. All you need is a bbappend to the new recipe to control do_compile when it should be executed. Since you want to run the do_compile after the image+rootfs (initramfs) creation, you can add a dependency like do_compile[depends] += "virtual/kernel:do_deploy"
Every boot-case is different, the dependency for each requirement should be handled in bbappends rather than have tasks limited not to run in parallel. Hope this helps
https://github.com/Xilinx/meta-xilinx-tools/blob/rel-v2018.1/recipes-bsp/bootbin/xilinx-bootbin_1.0.bb this will be moved to master soon
Commit: f9993c8b07c400954eb77e46c4a572e1ad7aef73
This change appears to create a circular dependency loop when using an initramfs. Reverting line 83 solves the issue. I've read the comment on the commit and I don't understand how this wouldn't be expected. If building the rootfs as initramfs into boot.bin, the do_xilinx_bootbin must occur after do_image_complete. Setting it to before do_image will, of course, cause a dependency loop.