News:

Attention: For security reasons,please choose a user name *different* from your login name.
Also make sure to choose a secure password and change it regularly.

Main Menu

Methods for updating a running system

Started by r.brue, February 12, 2021, 10:57:20 AM

Previous topic - Next topic

r.brue

Hi, I have a running Petalinux system (TE0820) on a SD card.

The SD card has two partitions:


  • FAT32 (boot), which contains the BOOT.BIN and the image.ub;
  • EXT4 (rootfs), which contains all the extracted rootfs.tar.gz file.

I've generated the BOOT.BIN file using the following command:

petalinux-package --boot --format BIN --force --fsbl images/linux/zynqmp_fsbl.elf --fpga ./bitstreams/my_fpga.bit --u-boot --kernel

Now I've two questions:

Firstly, I've to move the system from the SD card to the internal flash, how can I do that?
Secondly, I've to add the possibility to update a running system in terms of bitstream and internal Linux services.
Because for updating the Linux services could be easy (I think that a SSH connection in order to update the binaries could be enough), I would like to know how I can update the "embedded" bitstream file which is inside my BOOT.BIN file in the boot partition.

Do you suggest to rewrite completely the internal flash? How can I perform such update? It is possible to rewrite the entire flash with a new system image through the ethernet port? Which documentation do I have to follow for such goals?

PS: The system is running on a custom carrier board with both Ethernet and SD card access.

Thank you.

JH

Hi,

QuoteFirstly, I've to move the system from the SD card to the internal flash, how can I do that?
Program QSPI Flash with the same Boot.bin
See references https://wiki.trenz-electronic.de/display/PD/Xilinx+Development+Tools#XilinxDevelopmentTools-XilinxSoftwareProgrammingandDebugging

Note: with 2020.x pay attention with boot.scr files which is new

QuoteDo you suggest to rewrite completely the internal flash? How can I perform such update? It is possible to rewrite the entire flash with a new system image through the ethernet port? Which documentation do I have to follow for such goals?
You can use linux to write predefined partitions in the flash, we add a example to our reference designs, where you can do this via ETH:
https://wiki.trenz-electronic.de/display/PD/TE0820+Test+Board
https://wiki.trenz-electronic.de/display/PD/TE0820+Test+Board#TE0820TestBoard-webfwu
https://wiki.trenz-electronic.de/display/PD/TE0820+Test+Board#TE0820TestBoard-Usage
-->  insert IP from TE0820 on web browser to start web interface which has simple gui to write partitions.
Prebuilt binaries and source code is include, so you can change to you needs.

br
John