Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page gives an overview of the bare-metal driver support for the Zynq PS QSPI.

Table of Contents

Table of Contents
excludeTable of Contents

...

Driver Name

Path in Vitis

Path in Github

qspips

<Vitis Install Directory>/data/embedded/XilinxProcessorIPLib/drivers/qspips

https://github.com/Xilinx/embeddedsw/tree/master/XilinxProcessorIPLib/drivers/qspips


Info

Note: To view the sources for a particular release, use the rel-version tag in github.  For example, for the 2020.1 release, the proper version of the code is: https://github.com/Xilinx/embeddedsw/tree/xilinx-v2020.1/XilinxProcessorIPLib/drivers/qspips


The driver source code is organized into different folders.  The table below shows the qspips driver source organization.

...

Known Issues and Limitations

Supported Flash vendors

  • Micron

  • ISSI

  • Spansion

  • Macronix

Example Applications

Refer to the driver examples directory for various example applications that exercise the different features of the driver. Each application is linked in the table below. The following sections describe the usage and expected output of the various applications.  These example applications can be imported into the Vitis IDE from the Board Support Package  settings tab

...

Test Name 

Example source

Description

QSPIPS Interrupt Mode Example

xqspips_flash_intr_example.c

This examples does basic read and write test from the SPI-NOR flash device in Interrupt mode

QSPIPS Polled Mode Example

xqspips_flash_polled_example.c

This examples does basic read and write test from the SPI-NOR flash device in Polled mode

QSPIPS G128 Example

xqspips_g128_flash_example.c

This examples does basic read and write test from the SPI-NOR flash device greater than 128MB

QSPIPS Self Test Example

xqspips_selftest_example.c

This examples does basic hardware connection check

Linear QSPIPS Example

xqspips_flash_lqspi_example.c

This example does linear read operation from SPI-NOR flash device in single mode

Linear QSPIPS Stacked mode Example

xqspips_dual_flash_stack_lqspi_example.c

This example does linear read operation from SPI-NOR flash device in stacked mode

Linear QSPIPS Dual mode Example

xqspips_dual_flash_lqspi_example.c

This example does linear read operation from SPI-NOR flash device in dual parallel mode

Example Application Usage

...

QSPI FLASH Polled Example Test FlashID=0x20 0xBB 0x18 Successfully ran QSPI FLASH Polled Example Test

QSPIPS G128 Example

This examples does basic read and write test from the SPI-NOR flash device greater than 128MB

SPI Greater than 128Mb Flash Example Test FlashID=0x20 0xBB 0x18 Successfully ran QSPI Greater than 128Mb Flash Ex Test

...

This example does linear read operation from SPI-NOR flash device in single mode

Linear QSPI FLASH Example Test FlashID=0x20 0xBB 0x18 Successfully ran Linear QSPI FLASH Example Test

QSPIPS Self Test Example

This examples does basic hardware connection check

QSPI Selftest Example Successfully ran QSPI Selftest Example

...

Qspips write throughput is 644 KBPS
Qspips read throughput is 33573 KBPS

Change Log

2025.1

https://github.com/Xilinx/embeddedsw/blob/xlnx_rel_v2025.1/doc/ChangeLog#L78

2024.2

https://github.com/Xilinx/embeddedsw/blob/xlnx_rel_v2024.2/doc/ChangeLog#L608

...