I am following the "Make a Linux Bootable Image for QSPI Flash" section in (UG1165) to generate a MCS file for QSPI boot.
The only difference is that I have added a bitstream file. (FSBL + bitstream + u-boot + image.ub)
However I cannot boot from Linux.
In SDK, if I generate a MCS without Offset to uImag.ub., a Kernel image cannot be found in the QSPI boot.
However If I set the offset with 0x520000 as described in (UG1165), I receive the following error message.
What is the reason for this error?
By default the Petalinux image is set with offset 0x520000 and U-boot is also set with this offset.
But if a bitstream is inserted as part of the Petalinux image, 0x520000 will be out of range.
You will need to extend the offset and regenerate the u-boot with the new offset.
PetaLinux supports the u-boot generation, and you can change the partition setting in the GUI.
An alternative method is to manually modify <petalinux-proj>/subsystems/linux/configs/u-boot/platform-top.h, but it is not recommended.
In the example from the Description, after the offset is extended to 0xE00000, PetaLinux can boot.
Note: MCS files can be generated in Petalinux with the following command, but it does not work correctly because the partition setting is not reflected in the MCS.
In the meantime, you can generated the MCS file in SDK with the correct offset and load address setting.