Hi,
Quote1. What is the difference between 'zynqmp_fsbl.elf', 'zynqmp_fsbl_flash.elf', and 'zynqmp_pmufw.elf' files?
zynqmp_fsbl.elf: generated FSBL for boot.bin
zynqmp_fsbl_flash.elf: special FSBL to program QSPI FLash without changing boot mode to JTAG
zynqmp_pmufw.elf: PMU Firmware, need for Linux application, see reference to Userguides of ZynqMP from Xilinx: https://wiki.trenz-electronic.de/display/PD/Xilinx+Development+Tools#XilinxDevelopmentTools-ExcerptofXilinxUserGuides
bl31.elf: ATF Firmware , need for Linux application, see reference to Userguides of ZynqMP from Xilinx: https://wiki.trenz-electronic.de/display/PD/Xilinx+Development+Tools#XilinxDevelopmentTools-ExcerptofXilinxUserGuides
Quote2. How to create a new FSBL file?
With Vitis or petalinux: https://wiki.trenz-electronic.de/display/PD/Vitis
Quote3. Can we load the 'zynqmp_fsbl_flash.elf' file with our application's MCS or BIN file?
ZynqMP need .bin formate. .mcs is for native FPGA
'zynqmp_fsbl_flash.elf is only for Programming GUI of VIvado, in case boot mode is not JTAG
Quote4. How to specifically program the PLL?
Over FSBL. Our reference design includes source code with our changes
https://wiki.trenz-electronic.de/display/PD/TE0820+Test+Board#TE0820TestBoard-Application
you can load it as local repo into Vitis: https://wiki.trenz-electronic.de/display/PD/Vitis
br
John