Porting meta mender software onto zcu102 board with petalinux 2019.1

Hello Team,

I am working on xilinx ZCU102 board with petalinux 2019.1. Wanted to port the meta-mender client onto board. Petalinux 2019.1 uses the thud branch. porting required for standalone mode. Is there any support available for this board integration ?

Hi @adavappa, welcome to Mender hub.

The thud branch is well supported in Mender so that should not be an issue. I am unaware of any specific integrations into either Petalinux or the ZCU boards so it will probably require an integration effort. See our Yocto integration docs for the full details.


I have a working implementation of mender on petalinux 2019.1 for zcu102. It depends how you want your configuration to work. I reconfigured my build to produce a fitImage consisting of kernel, device-tree, and rootfs. That way the image simply runs out of RAM. I then removed everything from the image except for the fitimage, uEnv.txt, and fpga.bin.

If that is something that’s of interest, I could send some tips.

@wkswain I would be very interested into some tips for the ZCU102 :slight_smile:
We are trying to integrate Mender into our Petalinux build and it seems from what I read in your posts that you succeeded !

We didn’t finish the ZCU102 implementation, but did get it working on the Zynq7. We are just starting the ZCU102 integration again, and I expect few problems. I may have more on that as we work through it.

Much of the work was started here (by a working colleague), and has some readme stuff and instructions:

From what I recall, we followed the directions for mender U-boot integration. You have to setup the memory partitions and do your own custom U-boot patches, and uEnv.txt.

We didn’t do a traditional file system implementation. OS partitions A and B contain a single file which is a fit image. The fit image contains the rootfs, device-tree and kernel.

I was unable to figure out how to build an image from an image, so the first build creates the image. The second build image recipe target creates the mender image. Our system runs from RAM. We can power off at any time with no data loss. If you unplug during update that isn’t committed, it reverts to the previous OS image. It’s pretty ideal - no data loss, and no bricking. We are not using any of the OTA features, just local file updates through a web browser, much like an internet router.

Thanks for the reply! I am currently trying to implement meta-mender with Petalinux 2020.2 on an Enclustra XU8+ module.
I saw your repo on github and started to modify it to be used by the newer version of Petalinux.
My first roadblock is that Xilinx decided to use a patched version of u-boot (u-boot-xlnx) and therefore, I have to modify something in meta-mender to even start the compilation (otherwise, the build complains that I don’t provide u-boot).
If anyone has an idea about the subject, I am more than open!


There is information about how to deal with that in the Forks of U-Boot section in the Mender documentation.

Thanks! To be cleaner I started a new thread for the integration of my board.