<div dir="ltr"><div><div><div><div><div><div><div><div>I've managed to get the demo applications to run on the microzed with the following workflow:<br><br></div>-Build the RTEMS xilinx_zynq_zedboard BSP as normal<br></div>-Build a basic FPGA bitstream, Xilinx BSP, and first-stage bootloader (FSBL) as described in the first few tutorials for the microzed.  The FSBL references the BSP, which in turn references the hardware-specific configuration settings provided by Xilinx' tools.  Xilinx BSP is actually a complete freestanding C environment + hardware setup code and drivers.<br></div>- Package a BOOT.BIN file composed of the FSBL, fpga bitstream, and an RTEMS demo program.  BUT, rename the demo application to have the suffix .elf instead of .exe so that the Xilinx "bootgen" utility correctly identifies the entry point of the RTEMS ELF file.<br><br></div><div></div><div><br></div>This seems to work OK for the RTEMS demo programs.  But, some notes in the RTEMS BSP's history and source code suggest that this may be insufficient.  In particular, there are notes referring to the need for the application to specify the system clock frequency, UART freq, and/or MMU tables, presumably based on the exported hardware definitions and/or Xilinx BSP for the processor.<br><br></div>My questions are:<br><br>- Does the Xilinx BSP's C environment conflict with the RTEMS C environment?  A Xilinx BSP's libxil.a is compiled by default with a Xilinx-provided toolchain (arm-xilinx-eabi-tool), while RTEMS is built with an rtems-specific toolchain.  Is it sufficient to simply rebuild the Xilinx BSP with the RTEMS toolchain instead?<br></div><br>- To what extent can you perform custom setup tasks that rely on the Xilinx BSP by modifying their FSBL?  Conversely, what Xilinx BSP-specific tasks must be performed by the RTEMS application instead?  The RTEMS BSP seems to be sufficient to run simple applications like 'ticker' without pulling in the Xilinx BSP at all.<br><br></div><div>- Is it reasonable to maintain the Xilinx FSBL + RTEMS application separation?  It seems to work OK with their tools that way.  Or does it seem better in practice to integrate the FSBL's functionality into an RTEMS-hosted application?<br></div><div><br></div>Thanks,<br></div>Jonathan Brandmeyer<br><br></div>