I have created the UEFI boot code from the directions in the Intel Arria 10 SoC UEFI Boot Loader User Guide - UG-20100 | 2017.12.15.
This boot code processes the Core RBF file with a prepended 64-byte mkimage header at 0x00820000. The LoadCoreRbfImageToRam function loads the RBF image from location 0x00820000 to DDR, and this is then loaded into the FPGA, using the RbfSize that was read from the mkimage header. Therefore the MkImage header is included in what is loaded into the FPGA and the 64-bytes at the end of the RBF file is not.
Can anyone please confirm that this is not correct behaviour ?
Strangely, the FPGA appears to operate OK when loaded with this mechanism using the golden reference design. However, it also operates OK when I change the behaviour to skip the mkimage header and only load the actual RBF file data.
The NAND implementation appears to do the same.