News:

Attention: For security reasons,please choose a user name *different* from your login name.
Also make sure to choose a secure password and change it regularly.

Main Menu

what configuration interface for TE08XX?

Started by johnabel, August 20, 2019, 05:16:25 PM

Previous topic - Next topic

johnabel

The TE0803 I'm using has two QSPI configuration flash memories in parallel.
I tried creating an MCS using QSPIx8-dual_parallel interface and vivado failed with this:

ERROR: [Writecfgmem 68-26] Unsupported interface "QSPIx8-dual_parallel".
Supported interfaces are SMAPx8, SMAPx16, SMAPx32, SERIALx1, SPIx1, SPIx2, SPIx4, SPIx8, BPIx8, BPIx16.

Which interface should I use?

JH

Hi,
Flash is connected as dual parallel. This is also configured in our reference designs and board part files.

Use sdk and *.bin format.
You must also include fsbl and in case of linux also pmu and atf firmware.
See reference design. Definition file (open the bif file with SDK bitgen gui or text editor) for bin is include in the prebuilt folder:

  • prebuilt\boot_images\<assembly version>\u-boot
  • \prebuilt\boot_images\<assembly version>\hello_te0808

br
John

johnabel

I initially selected MCS format, trying BIN produces the same error.
This is something that Vivado does, it doesn't depend on what I attach to create the config file, I'd assume.

The project was created based on the TE0808 board file and anyways the target device is indeed a zynq Ultrascale+ that supports that mode, so I don't understand why the message pops up. Maybe a question for Xilinx instead...

JH


johnabel

#4
That doesn't apply much to me, I'm working on windows

UG1137 is clarifying my doubts... I thought PL and PS were automatically (by the PMU) configured, but it looks like, with Zynq, the PMU just configures the PS and loads any software for it. It's the FSBL who configures the PL.

JH

Hi,
"That doesn't apply much to me, I'm working on windows" --> SDK is available for Win OS.

Linux is only needed in case you want to generate a petalinux project. We do this part in a separate VM for our project for other parts we use also windows.

In case of Barmetal App, use Xilinx design flow.
1. Generate your Vivado design (include PS IP with your settings --> start with our reference design or board part files for your assembly variant)
2. Generate generate this design --> generate bitstream
3. Export HDF from your Vivado Project to SDK
4. generate FSBL with SDK (in case you use our starterkit and the corresponding PS setup, please use our FSBL template --> see reference design documentation)
5. (optional if needed depends on your running app) generate PMU firmware with SDK. --> not needed for simple hello world
6. Generate Boot.bin with SDK --> Include FSBL, Bitstream, App (this is automatically set when you generate before the FSBL and the Hello World app)
7. Use this Boot.bin and boot from SDK or configure QSPI Flash and boot from QSPI

br
John

johnabel

up to #6 it's all clear to me. #7 is the problem

I could write the qspi from the hardware manager, but it asks for a config file (that I assume it must contain an FSBL) and the FSBL in another box. That boots from QSPI, the FSBL prints a message, but doesn't jump to the App (bare metal in this case) and I'm not sure if it loads the PL.

SDK has the 'program flash' button that also asks for both boot image and FSBL. Should the boot image not have FSBL?

JH

#7
Hi,
you must use Boot.bin as programming file and fsbl to initialise zynqMP to programm QSPI. --> so both

Change Boot Mode to JTAG and use also the FSBL, which is used for boot.bin  or use the special FSBL for QSPI programming (in case boot mode is not JTAG) which is provided in our reference designs (also the source code as template.)
Reason for special FSBL in other modes:
https://wiki.trenz-electronic.de/pages/viewpage.action?pageId=14746264#Vivado/SDK/SDSoC-XilinxSoftware-ProductUpdateReleaseNotesandKnownIssues
https://www.xilinx.com/support/answers/70148.html
https://www.xilinx.com/support/answers/70548.html

br
John