04-14-2016 03:48 PM
What is the advantage of PetaLinux over a custom Yocto build? I am trying to figure out which Linux distribution will be best suitable for a Xilinx Zynq ZC706 evaluation board. I see Xilinx offers BSP's for Yocto build and I would like to know what I will be missing out if I do not choose petaLinux. Any information or links on this are highly appreciated.
04-14-2016 07:45 PM
Yocto is the "disto builder" while PetaLinux is the higher level tool suite. PetaLinux has Xilinx tool integeration, e.g. ability to link to Vivado HW projects and generate DTBs with soft-IP. It also has tools for booting, and integrating HW and SW projects. There are some extra tools for creation of custom kernel modules and apps without Yoctos learning curve.
So its all about preferred developer workflow. There should be none (or very little) difference in the actual generated distro, and nothing board specific.
04-18-2016 08:13 PM
If you are just going to evaluate the platform PetaLinux will get you going faster. Yocto will let you do more customization long term. Personally, I find petalinux unusable, it can't be easily customized and it's not very flexible(like which kernel config to use).
I like being able to try different things quickly and easily, like different kernel configs, devicetrees or bit files so I created a shell script and I can build all the pieces. This works for me since I use the pre-compiled rootfs as a base for my custom rootfs. Otherwise, I would use Yocto; however, I'm not sure how it works with building things like the fsbl, boot.bin and the fpga bit files.
05-15-2018 08:01 PM
Petalinux uses Yocto to build the root filesystem, so it effectively sits on top of Yocto. For a Zynq-7000, this isn't a huge advantage, but with the MPsoc it is really helpful. The MPsoc needs a bootloader, ATF firmware,pmufw, the bitstream and u-boot. Petalinux puts this together for you automatically. One of the things I like about it is I often use different root filesystems, and I also want to have a simple Yocto build. Changing the settings to use different bitstreams, kernels and root filesystems with Petalinx is quite straightforward. You can do most of it with directly Yocto, but having the FPGA support makes it easier. My biggest criticism of Petalinux is the very out of date documentation. A good guide on how to manage a build using git management would be good. The BSP's are huge, and you should only have to manage a few scripts to get a build.