UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 64903

Zynq-7000 AP SoC (UG1165) – Booting Linux from QSPI flash does not work

Description

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.

[ERROR] : Section image.ub.0 offset of 0x520000 overlaps with prior section end address of D10D40

What is the reason for this error?

Solution

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.

petalinux-package --boot --fsbl <FSBL image> --fpga <FPGA bitstream> --u-boot --kernel

In the meantime, you can generated the MCS file in SDK with the correct offset and load address setting.

AR# 64903
Date Created 07/02/2015
Last Updated 08/28/2015
Status Active
Type General Article
Devices
  • Zynq-7000
Tools
  • PetaLinux - 2014.4
  • Vivado Design Suite - 2014.4