Author Topic: Program QSPI flash from Vitis Failed  (Read 91 times)


  • Active Member
  • *
  • Posts: 3
Program QSPI flash from Vitis Failed
« on: February 05, 2021, 11:58:15 AM »

I use TE0726-03M board (Zynq 7000 series SOC). I programmed the QSPI flash with wrong BOOT.bin file to the qspi flash using Vitis (2019.2) and now uboot is not loading. There is only a blank screen when i connect to the board with putty and the green light on the board is always on. The board does not support direct boot from SD-card. I have to do the initial boot from flash. I am not sure how to boot from JTAG since there is no jumpers on the board. (if its possible)

Now I am not able to reprogram the QSPI flash again with the correct BOOT.bin and fsbl.elf files.

Could anyone please help me on how to erase my QSPI flash and reprogram it. 

Here is the error log from Vitis:

****** Xilinx Program Flash
****** Program Flash v2019.2 (64-bit)
**** SW Build 2708876 on Wed Nov 6 21:39:14 MST 2019
** Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.

Connected to hw_server @ TCP:
Available targets and devices:
Target 0 : jsn-JTAG-ONB4-251633000000A
Device 0: jsn-JTAG-ONB4-251633000000A-4ba00477-0

Retrieving Flash info...

Initialization done, programming the memory
Using default mini u-boot image file - /home/deepak/Softwares/xilinx/Vitis/2019.2/data/xicom/cfgmem/uboot/zynq_qspi_x4_single.bin
===== mrd->addr=0xF800025C, data=0x00000001 =====
BOOT_MODE REG = 0x00000001
WARNING: [Xicom 50-100] The current boot mode is QSPI.
If flash programming fails, configure device for JTAG boot mode and try again.
===== mrd->addr=0xF8007080, data=0x30800100 =====
===== mrd->addr=0xF8000B18, data=0x00000000 =====
Downloading FSBL...
Running FSBL...
Finished running FSBL.
===== mrd->addr=0xF8000110, data=0x00177EA0 =====
READ: ARM_PLL_CFG (0xF8000110) = 0x00177EA0
===== mrd->addr=0xF8000100, data=0x0001A008 =====
READ: ARM_PLL_CTRL (0xF8000100) = 0x0001A008
===== mrd->addr=0xF8000120, data=0x1F000400 =====
READ: ARM_CLK_CTRL (0xF8000120) = 0x1F000400
===== mrd->addr=0xF8000118, data=0x00177EA0 =====
READ: IO_PLL_CFG (0xF8000118) = 0x00177EA0
===== mrd->addr=0xF8000108, data=0x0001A008 =====
READ: IO_PLL_CTRL (0xF8000108) = 0x0001A008
Info: Remapping 256KB of on-chip-memory RAM memory to 0xFFFC0000.
===== mrd->addr=0xF8000008, data=0x00000000 =====
===== mwr->addr=0xF8000008, data=0x0000DF0D =====
MASKWRITE: addr=0xF8000008, mask=0x0000FFFF, newData=0x0000DF0D
===== mwr->addr=0xF8000910, data=0x000001FF =====
===== mrd->addr=0xF8000004, data=0x00000000 =====
===== mwr->addr=0xF8000004, data=0x0000767B =====
MASKWRITE: addr=0xF8000004, mask=0x0000FFFF, newData=0x0000767B

U-Boot 2019.01-00203-g2229398 (Aug 26 2019 - 04:42:15 -0600)

Model: Zynq CSE QSPI SINGLE Board
DRAM: 256 KiB
WARNING: Caches not enabled
In: dcc
Out: dcc
Err: dcc
Zynq> sf probe 0 0 0

Warning: SPI speed fallback to 100 kHz
SF: unrecognized JEDEC id bytes: ff, ff, 00
Failed to initialize SPI flash at 0:0 (error -2)
Zynq> ERROR: [Xicom 50-186] Error while detecting SPI flash device - unrecognized JEDEC id bytes: ff, ff, 00
Problem in running uboot
Flash programming initialization failed.

ERROR: Flash Operation Failed


  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1554
Re: Program QSPI flash from Vitis Failed
« Reply #1 on: February 05, 2021, 12:05:49 PM »

There are some new issues with 19.x and newer.
Please check solutions with different Vivado versions:

PS: We have 2019.2 reference designs online:



  • Active Member
  • *
  • Posts: 3
Re: Program QSPI flash from Vitis Failed
« Reply #2 on: February 06, 2021, 03:40:18 PM »
Thanks for the reply.
I managed to resolve the issue by programming the flash with <reference_design>/zynqberrydemo2/prebuilt/software/m_512MB/fsbl_flash.elf file. Now i am able to flash my BOOT.BIN and able to start u-boot