I am using a ZC706 evaluation board with an fmcomms3-ebz board. The pre-installed SD card works fine. I can also generate a boot image with the fsbl.elf system.bit and u-boot.elf from zynq_image_8gb_2013_12_12.img.
I downloaded the reference design from analogdevicesinc/hdl · GitHub (branch master) and used Vivado 2013.4 tcl command line to source the library xyz_ip.tcl files.
Then I started Vivado 2013.4 GUI to source projects/fmcomms2/zc706/system_project.tcl from within zc706 folder. (Is fmcomms2 project compatible to fmcomms3 board? If not, where can I find a reference design?) The script performs synthesis with no errors and the following critical warnings,
implementation with no errors, creates a bitstream and automatically exports hardware for SDK. In SDK I created a new application project for a fsbl. When I create a Zynq boot image with my own fsbl.elf, the system.bit from Vivado's impl_1 folder and the u-boot.elf from zynq_image_8gb_2013_12_12.img and replace the BOOT.bin on the working SD card, the HDMI output does not work anymore. I can just connect via SDK's serial terminal and see that Ubuntu has booted.
If I create BOOT.bin with reference bootloader and own system.bit, HDMI works, but iio-oscilloscope does not recognize the AD9361.
As I did no changes to the reference design, why does the boot process fail with my own system.bit - fsbl.elf combination?