[meta-xilinx] PetaLinux Yocto Build

Nathan Rossi nathan.rossi at xilinx.com
Wed Mar 11 22:01:11 PDT 2015


> -----Original Message-----
> From: Harold Lapprich [mailto:hlapprich at pixel-velocity.com]
> Sent: Thursday, 12 March 2015 12:21 AM
> To: Nathan Rossi
> Cc: meta-xilinx at lists.yoctoproject.org
> Subject: RE: PetaLinux Yocto Build
> 
> Hi Nathan,
> 
> Thanks for the quick response it is greatly appreciated.
> 
> The AVNET BSP petalinux boot prompt states it is Yocto 1.6 Daisy but it
> has none of the recipes so this claim appears to be false.
> 
> Answering the following question:
> 
> "Technically it does not matter which Zynq-7000 chip you are using as the
> programmable silicon is consistent across the models. It is the board that
> is generally configured differently, I assume you are asking this question
> due to the four SKUs for the picoZed (7010, 7015, 7020, 7030)?"
> 
> Yes I am asking because of the 4 SKUs. Very familiar with the Xilinx Zynq
> chips from both a FPGA and Vivado/SDK development point of view. Have
> worked Linux for years but Yocto is new to me and I've been doing a lot of
> reading and 'canned' builds.
> 
> If I read between the lines of your response your saying all the Zynq
> builds are identical from the Zynq-Arm view point but the deviceTree is
> unique due to the board hardware specifics?

That is correct to a certain degree. However you may need to enable additional kernel configs for devices that are on the board (e.g. some Ethernet PHYs, I2C devices, etc), and anything you implement in the FPGA logic (however the Xilinx IP is enabled by default too, so things like AXI SPI just need to be setup in the device tree).

> 
> If the build is unique due to the board specifics can I take a kernel +
> rootfs from one Yocto ARM build and add a deviceTree for a specific board
> to get the desire operational functionality?

You can do exactly that if you want to work that way however you must be careful of mixing and matching device-trees with kernels, especially due to differing bindings between linux-xlnx and mainline kernels and even different versions. Also the meta-xilinx layer is able to build out the device trees if you want to work that way, have a look at some of the device trees in the layer at https://github.com/Xilinx/meta-xilinx/tree/master/conf/machine/boards. 

> 
> The u-boot is a unique piece of the puzzle due to it being tied to some of
> the kernel build specifics (i.e., memory size, types of memory and etc)
> and has to reflect these kernel build attributes?

So U-Boot works a bit differently due to the configuration of boards being defined within the U-Boot source. In most cases there will be a config defined for each board (e.g. 'zynq_zed_config' for zedboard), the meta-xilinx layer provides has UBOOT_MACHINE set for each board that is available. There would need to be patches applied to u-boot for other boards (e.g. picozed).

Regards,
Nathan

> 
> 
> 
> Thanks,
> Harold
> 
> -----Original Message-----
> From: Nathan Rossi [mailto:nathan.rossi at xilinx.com]
> Sent: Tuesday, March 10, 2015 9:47 PM
> To: Harold Lapprich
> Cc: meta-xilinx at lists.yoctoproject.org
> Subject: RE: PetaLinux Yocto Build
> 
> > -----Original Message-----
> > From: Harold Lapprich [mailto:hlapprich at pixel-velocity.com]
> > Sent: Wednesday, 11 March 2015 6:42 AM
> > To: meta-xilinx at lists.yoctoproject.org
> > Cc: Nathan Rossi
> > Subject: PetaLinux Yocto Build
> >
> >
> >
> > To Whom It May Concern,
> >
> >
> >
> > Currently using an AVNET Board Support Package (BSP) for the picoZed
> > that supposedly supports the PetaLinux Yocto 1.6: Daisy build process
> > but doesn't make use of 'bitbake' and 'reciepes' which are standard
> > Yocto directives.
> 
> So let's clear up your confusion. BSPs that are provided for PetaLinux are
> not Yocto BSPs, and PetaLinux does not interoperate with Yocto (in any
> way). PetaLinux does however use a Root Filesystem that is pre-built by
> Yocto. From a functional use stand point PetaLinux has nothing to do with
> Yocto, and Yocto has nothing to do with PetaLinux.
> 
> >
> >
> >
> > Can you point me to a version of PetaLinux in the Yocto repository
> > that does make use of standard Yocto directives and supports the
> > Xilinx 7z7030 (currently supports ZC702:7z020 and ZC706:7z045)?
> >
> >
> >
> > Have found what I believe to be the PetaLinux Yocto formal support
> > information at https://github.com/Xilinx/meta-xilinx.
> 
> In terms of Yocto support, meta-xilinx is what you are after for Xilinx
> architectures (including Zynq). There is board support for the ZC702 and
> ZC706 available (and picoZed is planned for the upcoming release).
> 
> >
> >
> >
> > Would you please tell me what MACHINE to use in build/conf/local.conf
> > file that supports the Xilinx 7z030?
> >
> 
> Technically it does not matter which Zynq-7000 chip you are using as the
> programmable silicon is consistent across the models. It is the board that
> is generally configured differently, I assume you are asking this question
> due to the four SKUs for the picoZed (7010, 7015, 7020, 7030)?
> 
> Regards,
> Nathan




More information about the meta-xilinx mailing list