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# 55082

Zynq-7000 AP SoC: BootROM Error Codes for 7z020 CES Devices

Description

When the BootROM detects an error during the boot process, it stores an error code that the user can access in order to determine why the device did not boot.

Note: These error codes are only for the pre-production 7z020 devices.

For 7z045 and all production devices, refer to the UG585 Technical Reference Manual, chapter 6 - Boot and Configuration.

Solution

The error codes for the Z-7020 CES device are different to those used in the Z-7045 CES and all production devices. 

The error codes for Z-7045 CES and all production devices are defined in the Zynq-7000 AP SoC Technical Reference Manual, UG585.

When the BootROM detects an error during the boot process, it stores an error code in the REBOOT_STATUS or register. Those error codes are listed in the table below.

Note: Similar types of errors have the same error codes, potentially making the debugging process more difficult. This is acknowledged in (Xilinx Answer 47568) "Zynq-7000 AP SoC, Boot - BootROM Error Codes are Not Unique."

 

This Error Codes only apply to the Z-7020 CES and Z-7020 ESLAB devices.

 Error Code Access:

After the BootROM had detected an error, the REBOOT_STATUS [BOOTROM_ERROR_CODE, 15:0] register bit field contains a 16-bit error code. The error codes are listed in the table below. These can be accessed by JTAG using TBD.

Error Code Values Table - Only for Z-7045 CES and ESLAB devices:

Note: the UG585 Zynq Technical Reference Manual contains error codes for Z-7045 CES and all production devices.
 
All errors result in a system lockdown.
  
Value
Description
Remedies
0x1000
BOOT_ROM_CRC_FAIL occurs if the CRC unlock value created does not unlock the DevC block. This is a catastrophic error in that JTAG is not enabled and there is no recovery possible.
* Retry booting, if the error code persists then replace the device.
0x80xx The BootROM failed to write the proper value into the devcfg.UNLOCK register. This is a catastrophic error. JTAG is kept disabled and a POR reset is needed to reset the device. * If the problem persists, replace the device.
0x8101
The boot mode is not recognized.
* Check the strap pin settings.
0x8102
There is an issue initializing the PCAP interface. It does not start up correctly and the BootROM times out.
* Ensure that the PL is powered up.
0x8103
The handoff to the FSBL/User code did not start up correctly.
0x8110
There is a problem decrypting the secure FSBL/User code boot image.
0x8111
There is a problem authenticating the secure FSBL/User code boot image.
0x8201
There is a problem with the FSBL/User code boot image that is not covered by the other error checks.

* Check the Header Format
* Flash device is blank.
* In SD boot MIO pin 0 is not pulled low.(Xilinx Answer 52016)

0x8202
The Register Initialization address/data pair is writing to an illegal address.
* Make sure the register address is within its allowed range.
0x8203
The Start of Execution word in the BootROM Header either not 0 or not in the proper address range for execute-in-place.
* Ensure that this parameter points to the proper location.
0x8204
The cause of this error code is either:
1) The image is encrypted but the boot header indicates execute-in-place, or
2) Boot Mode is NAND or SD card but the image header indicates execute-in-place.
* Check to see that the boot header is programmed with a supported combination of device and execute-in-place.
0x8205
The checksum of the header is not correct. This triggers the Boot Header Search for NOR, NAND, and Quad-SPI boot modes.
* Make sure the header has the correct checksum value.
0x8300
The BootROM triggered an exception. This should not happen. It indicates that the device is bad.
* If the problem persists, replace the device.
 
 

 

 

AR# 55082
Date Created 03/22/2013
Last Updated 04/24/2014
Status Active
Type Documentation Changes
Devices
  • Zynq-7000