12-17-2014 02:35 AM
I have a bare-metal application running on both Zynq processors.
System maintenance will pe performed in local through RS232/USB or remotely through Ethernet.
Do you know a tool that allows in-circuit programming through Ethernet or RS232? (I mean writing the Boot.bin on the SD card or it's equivalent in the QSPI FLASH)
I would like to avoid JTAG since in a "real life" application is not practical to open the equippement, connect the JTAG and reprogram. It's much more simple to connect to Ethernet/USB ports externally available.
I red about U-BOOT but this requires Linux on one of the Zynq cores and also installing Linux on the maintenance PC. I would like to keep both processors running bare-metal.
Is there any other tool (free or commercial) allowing programming the Zynq Flash/SD through serial/Ethernet?
Any suggestions are welcome!
12-23-2014 01:57 AM
12-23-2014 11:05 PM
Thank both of you for your answers.
I was hoping to find some standard programming tool compatible with a baremetal application.
I wanted to avoid running Linux on a maintenance PC (all our tools are on Win7).
I also hoped to avoid Linux on one of the Cortex A9 cores. (both processors will run baremetal applications so I'll have to switch to bare metal after programming in Linux).
Is there some documentation about BOOT.bin format or *.mcs format?
I would like to evaluate the complexity of building the RS232/Ethernet programming tool myself.
12-24-2014 12:43 AM
1 well u-boot is considered baremetal, its SSBL second stage bootloader, not O/S
2 there are no baremetal stuff ready you are seeking for. I know. :(
3 .mcs is intel extended hex, its just a way to use more bytes for binary data than original file
3 BOOT.BIN >>
3a BOOT.BIN "early header" is what zynq BOOTROM fetches, uses to init some regs and then loads to ram or does jump to XiP offset
3b after that comes xilinx partitions, secondary format in BOOT.BIN, those partitions are read by FSBL and then loaded, decrypted if needed and loaded into FPGA or RAM
if you use own FSBL and baremetal you can forget all the partition stuff and only care about the BOOT.BIN early header to make your bootstrap to load, from there you can do whatever you want.
this is BAREMETAL zynq bases system on module, as there is no DDR, so we do need baremetal flash tools :) so we are working on solutions