cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
mkalajian
Adventurer
Adventurer
6,814 Views
Registered: ‎04-02-2013

Having trouble programming the QSPI flash.

Hi all, 

 

I have a zc702 based device that I need to boot from flash.  The device works perfectly when I load the PL bitstream through JTAG with "Xilinx Tools" -> "Program FPGA" in SDK, and then run my application (again, .elf file loaded through SDK).

 

 

I need this to all happen from the flash, so I tried generating a .mcs file with the toolboot1.png

 

and then loading that through "Xilinx Tools" -> "Program Flash"

 

Yet it always fails to verify.  It worked once in the past, but I can no longer get it to work.

 

Please, any help would be appreciated.

 

Thank you

0 Kudos
Reply
7 Replies
sampatd
Scholar
Scholar
6,805 Views
Registered: ‎09-05-2011

Can you post the error log/ screenshot?
0 Kudos
Reply
mkalajian
Adventurer
Adventurer
6,788 Views
Registered: ‎04-02-2013


zynq_flash -f C:\Dev\NSC_MIKE\flash\freertos_hello_world_0.mcs -offset 0 -flash_type \
qspi_single -verify
flash_type=qspi_single, image=C:\Dev\NSC_MIKE\flash\freertos_hello_world_0.mcs
Info:Connecting to TCF agent...
Info:Digilent Plugin: Plugin Version: 2.4.4
Info:Digilent Plugin: no JTAG device was found.
Info:AutoDetecting cable. Please wait.
Info:*** WARNING ***: When port is set to auto detect mode, cable speed is set to default 6 MHz regardless of explicit arguments supplied for setting the baud rates
Info:Connecting to cable (Usb Port - USB21).
Info:Checking cable driver.
Info: Driver file xusb_emb.sys found.
Info: Driver version: src=1029, dest=1029.
Info: Driver windrvr6.sys version = 10.2.1.0.Info: WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021.
Info: Cable PID = 0008.
Info: Max current requested during enumeration is 300 mA.
Info:Type = 0x0005.
Info: Cable Type = 3, Revision = 0.
Info: Setting cable speed to 6 MHz.
Info:Cable connection established.
Info:Firmware version = 2401.
Info:File version of C:/Xilinx/14.5/ISE_DS/ISE/data/xusb_xp2.hex = 2401.
Info:Firmware hex file version = 2401.
Info:PLD file version = 200Dh.
Info: PLD version = 200Dh.
Info:Type = 0x0005.
Info:ESN option: 000015DE641A01.
Info:Opened cable successfully
Info:Obtained cable lock
Info:idcode is 0x4ba00477
Info:idcode is 0x23727093
Info:Found 2 devices
Info:AutoDetecting cable. Please wait.
Info:*** WARNING ***: When port is set to auto detect mode, cable speed is set to default 6 MHz regardless of explicit arguments supplied for setting the baud rates
Info:Connecting to cable (Usb Port - USB21).
Info:Checking cable driver.
Info: Driver file xusb_emb.sys found.
Info: Driver version: src=1029, dest=1029.
Info: Driver windrvr6.sys version = 10.2.1.0.Info: WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021.
Info: Cable PID = 0008.
Info: Max current requested during enumeration is 300 mA.
Info:Type = 0x0005.
Info: Cable Type = 3, Revision = 0.
Info: Setting cable speed to 6 MHz.
Info:Cable connection established.
Info:Firmware version = 2401.
Info:File version of C:/Xilinx/14.5/ISE_DS/ISE/data/xusb_xp2.hex = 2401.
Info:Firmware hex file version = 2401.
Info:PLD file version = 200Dh.
Info: PLD version = 200Dh.
Info:Type = 0x0005.
Info:ESN option: 000015DE641A01.

JTAG chain configuration
--------------------------------------------------
Device ID Code IR Length Part Name
1 4ba00477 4 Cortex-A9
2 23727093 6 XC7Z020

--------------------------------------------------
Enabling extended memory access checks for Zynq.
Writes to reserved memory are not permitted and reads return 0.
To disable this feature, run "debugconfig -memory_access_check disable".

--------------------------------------------------

CortexA9 Processor Configuration
-------------------------------------
Version.............................0x00000003
User ID.............................0x00000000
No of PC Breakpoints................6
No of Addr/Data Watchpoints.........4
Info:Firmware image : C:\Xilinx\14.5\ISE_DS\ISE\data\cse\cseflash\zynq7000\qspi_single.bin.
Downloading Program -- C:\Xilinx\14.5\ISE_DS\ISE\data\cse\cseflash\zynq7000\qspi_single.bin
section, .text: 0xfffc4800-0xfffd50bb
section, .text.unlikely: 0xfffd50bc-0xfffd50cf
section, .rodata: 0xfffd50d0-0xfffd88e6
section, .hash: 0xfffd88e8-0xfffd892f
section, .data: 0xfffd8930-0xfffd8e27
section, .got.plt: 0xfffd8e28-0xfffd8e33
section, .u_boot_cmd: 0xfffd8e34-0xfffd8faf
section, .rel.dyn: 0xfffd8fb0-0xfffdb09f
section, .dynsym: 0xfffdb0a0-0xfffdb16f
section, .bss: 0xfffd8fb0-0xfffd95f3
Setting PC with Program Start Address 0xfffc4800
0% Info:Performing Erase operation.

100% Info:Erase operation completed successfully.
100%

Info:AutoDetecting cable. Please wait.
Info:*** WARNING ***: When port is set to auto detect mode, cable speed is set to default 6 MHz regardless of explicit arguments supplied for setting the baud rates
Info:Connecting to cable (Usb Port - USB21).
Info:Checking cable driver.
Info: Driver file xusb_emb.sys found.
Info: Driver version: src=1029, dest=1029.
Info: Driver windrvr6.sys version = 10.2.1.0.Info: WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021.
Info: Cable PID = 0008.
Info: Max current requested during enumeration is 300 mA.
Info:Type = 0x0005.
Info: Cable Type = 3, Revision = 0.
Info: Setting cable speed to 6 MHz.
Info:Cable connection established.
Info:Firmware version = 2401.
Info:File version of C:/Xilinx/14.5/ISE_DS/ISE/data/xusb_xp2.hex = 2401.
Info:Firmware hex file version = 2401.
Info:PLD file version = 200Dh.
Info: PLD version = 200Dh.
Info:Type = 0x0005.
Info:ESN option: 000015DE641A01.

JTAG chain configuration
--------------------------------------------------
Device ID Code IR Length Part Name
1 4ba00477 4 Cortex-A9
2 23727093 6 XC7Z020

--------------------------------------------------
Enabling extended memory access checks for Zynq.
Writes to reserved memory are not permitted and reads return 0.
To disable this feature, run "debugconfig -memory_access_check disable".

--------------------------------------------------

CortexA9 Processor Configuration
-------------------------------------
Version.............................0x00000003
User ID.............................0x00000000
No of PC Breakpoints................6
No of Addr/Data Watchpoints.........4
Info:Firmware image : C:\Xilinx\14.5\ISE_DS\ISE\data\cse\cseflash\zynq7000\qspi_single.bin.
Downloading Program -- C:\Xilinx\14.5\ISE_DS\ISE\data\cse\cseflash\zynq7000\qspi_single.bin
section, .text: 0xfffc4800-0xfffd50bb
section, .text.unlikely: 0xfffd50bc-0xfffd50cf
section, .rodata: 0xfffd50d0-0xfffd88e6
section, .hash: 0xfffd88e8-0xfffd892f
section, .data: 0xfffd8930-0xfffd8e27
section, .got.plt: 0xfffd8e28-0xfffd8e33
section, .u_boot_cmd: 0xfffd8e34-0xfffd8faf
section, .rel.dyn: 0xfffd8fb0-0xfffdb09f
section, .dynsym: 0xfffdb0a0-0xfffdb16f
section, .bss: 0xfffd8fb0-0xfffd95f3
Setting PC with Program Start Address 0xfffc4800
0% Info:Performing Program operation.
.............2% .............5% .............8% .............11% .............14% .............17% .............20% .............23% .............
26% .............29% .............32% .............35% .............38% .............41% .............44% .............47% .............
50% .............52% .............55% .............58% .............61% .............64% .............67% .............70% .............73% .............
76% .............79% .............82% .............85% .............88% .............91% .............94% .............97% .....100% 100%

Info:Programmed flash successfully
Info:AutoDetecting cable. Please wait.
Info:*** WARNING ***: When port is set to auto detect mode, cable speed is set to default 6 MHz regardless of explicit arguments supplied for setting the baud rates
Info:Connecting to cable (Usb Port - USB21).
Info:Checking cable driver.
Info: Driver file xusb_emb.sys found.
Info: Driver version: src=1029, dest=1029.
Info: Driver windrvr6.sys version = 10.2.1.0.Info: WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021.
Info: Cable PID = 0008.
Info: Max current requested during enumeration is 300 mA.
Info:Type = 0x0005.
Info: Cable Type = 3, Revision = 0.
Info: Setting cable speed to 6 MHz.
Info:Cable connection established.
Info:Firmware version = 2401.
Info:File version of C:/Xilinx/14.5/ISE_DS/ISE/data/xusb_xp2.hex = 2401.
Info:Firmware hex file version = 2401.
Info:PLD file version = 200Dh.
Info: PLD version = 200Dh.
Info:Type = 0x0005.
Info:ESN option: 000015DE641A01.

JTAG chain configuration
--------------------------------------------------
Device ID Code IR Length Part Name
1 4ba00477 4 Cortex-A9
2 23727093 6 XC7Z020

--------------------------------------------------
Enabling extended memory access checks for Zynq.
Writes to reserved memory are not permitted and reads return 0.
To disable this feature, run "debugconfig -memory_access_check disable".

--------------------------------------------------

CortexA9 Processor Configuration
-------------------------------------
Version.............................0x00000003
User ID.............................0x00000000
No of PC Breakpoints................6
No of Addr/Data Watchpoints.........4
Info:Firmware image : C:\Xilinx\14.5\ISE_DS\ISE\data\cse\cseflash\zynq7000\qspi_single.bin.
Downloading Program -- C:\Xilinx\14.5\ISE_DS\ISE\data\cse\cseflash\zynq7000\qspi_single.bin
section, .text: 0xfffc4800-0xfffd50bb
section, .text.unlikely: 0xfffd50bc-0xfffd50cf
section, .rodata: 0xfffd50d0-0xfffd88e6
section, .hash: 0xfffd88e8-0xfffd892f
section, .data: 0xfffd8930-0xfffd8e27
section, .got.plt: 0xfffd8e28-0xfffd8e33
section, .u_boot_cmd: 0xfffd8e34-0xfffd8faf
section, .rel.dyn: 0xfffd8fb0-0xfffdb09f
section, .dynsym: 0xfffdb0a0-0xfffdb16f
section, .bss: 0xfffd8fb0-0xfffd95f3
Setting PC with Program Start Address 0xfffc4800
0% Info:Performing Verify operation. Please wait.
.......Info:Verify operation failed.
100%

Info:Closed cable successfully

0 Kudos
Reply
sampatd
Scholar
Scholar
6,778 Views
Registered: ‎09-05-2011

Can you check with SDK 2013.4?

I am able to create the mcs image without any issues.
0 Kudos
Reply
mkalajian
Adventurer
Adventurer
6,768 Views
Registered: ‎04-02-2013

Same problem.

 

I can create the .mcs file fine, but the flashing is not working.

 

I have used a scope and am observing that the FPGA is not asserting the DQ1 signal (C, DQ0, S_B, all work)

 

What would cause this behavior??? 

0 Kudos
Reply
muzaffer
Teacher
Teacher
6,764 Views
Registered: ‎03-31-2012

I think there is an option to pass to bitgen for wider than 1 bit flash.
- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
0 Kudos
Reply
glester
Observer
Observer
6,538 Views
Registered: ‎03-04-2009

This might be a bit late, but we were directed to http://www.xilinx.com/support/answers/59275.htm, which worked (intended for 2013.3, and also ok for 2013.4).

Gerry

malianhua
Newbie
Newbie
5,411 Views
Registered: ‎05-08-2014

Unable to boot FSBL from QSPI(FL256S ) on zc7020(ZED)

TEST1:

FSBL.ELF+system.bit+USERAPP.elf =>BOOT.BIN to SD card boot is normal

FSBL.ELF+system.bit+USERAPP.elf =>BOOT.mcs to QSPI  boot is normal .

 

TEST2:

FSBL.ELF+system.bit+u-boot.elf =>BOOT.BIN to SD card boot is normal

FSBL.ELF+system.bit+u-boot.elf =>BOOT.mcs to QSPI  is Unable to boot.

bit have  run ,done led is light.

Please tell me what the problem is.

 

0 Kudos
Reply