Config_reg (QSPI) Register - UG1087

Zynq UltraScale+ Devices Register Reference (UG1087)

Document ID
UG1087
Release Date
2024-03-13
Revision
1.10

Config_reg (QSPI) Register Description

Register NameConfig_reg
Offset Address0x0000000000
Absolute Address 0x00FF0F0000 (QSPI)
Width32
TypemixedMixed types. See bit-field details.
Reset Value0x80000000
DescriptionQSPI configuration register

Note: Change this value only when controller is not communicating with the memory device. Software Driver name: XQSPIPS_CR

Config_reg (QSPI) Register Bit-Field Summary

Field NameBitsTypeReset ValueDescription
leg_flsh31rwNormal read/write0x1Flash memory interface mode control:
1: Flash memory interface mode
0: legacy SPI mode
This control is required to enable or disable automatic recognition of instruction bytes in the first byte of a transfer.
If this mode is disabled, the core will operate in standard SPI mode, with no dual- or quad-bit input or output capability; the extended bits will be configured as inputs to prevent any driver contention on these pins.
If enabled, flash memory interface instructions are automatically recognized and the I/O configured accordingly.
Software Driver name: XQSPIPS_CR_IFMODE
Reserved30:27roRead-only0x0Reserved, read as zero, ignored on write.
endian26rwNormal read/write0x00: little endian format when writing to the transmit data register 0x1C or reading from the receive data register 0x20.
1: big endian format when writing to the transmit data register 0x1C or reading from the receive data register 0x20.
Software Driver name: XQSPIPS_CR_ENDIAN
Reserved25:20roRead-only0x0Reserved, read as zero, ignored on write.
Holdb_dr19rwNormal read/write0x0If set, Holdb and WPn pins are actively driven by the qspi controller in 1-bit and 2-bit modes.
If not set, then external pull up is required on HOLDb and WPn pins.
Note that this bit doesn't affect the quad (4-bit) mode as Controller always drives these pins in quad mode.
It is highly recommended to set this bit always(irrespective of mode of operation) while using QSPI.
Reserved18:17rwNormal read/write0x0Reserved
Man_start_com16woWrite-only0x0Manual Start Command
Software Driver name: XQSPIPS_CR_MANSTRT
0: don't care
1: start transmission of data
Man_start_en15rwNormal read/write0x0Manual Start Enable
Software Driver name: XQSPIPS_CR_MANSTRTEN
0: auto mode
1: enables manual start
Manual_CS14rwNormal read/write0x0Manual CS
Software Driver name: XQSPIPS_CR_SSFORCE
0: auto mode
1: manual CS mode
Reserved13:11rwNormal read/write0x0Reserved
PCS10rwNormal read/write0x0Peripheral chip select line, directly drive n_ss_out if Manual_CS is set. In manual CS mode, this bit should be programmed before writing Transmit Data Registers (TXDx).
Reserved 9rwNormal read/write0x0Reserved
REF_CLK 8rwNormal read/write0x0Reserved. Must be 0
FIFO_WIDTH 7:6rwNormal read/write0x0FIFO width
Must be set to 2b11 (32bits). All other settings are not supported.
BAUD_RATE_DIV 5:3rwNormal read/write0x0Master mode baud rate divisor
000: divide by 2. This is the only baud rate setting that can be used if the loopback clock is enabled [USE_LPBK].
001: divide by 4
010: divide by 8
011: divide by 16
100: divide by 32
101: divide by 64
110: divide by 128
111: divide by 256
CLK_PH 2rwNormal read/write0x0Clock phase
Software Driver name: XQSPIPS_CR_CPHA
0: QSPI clock is active outside the word
1: QSPI clock is inactive outside the word
Note: For {CLK_PH, CLK_POL}, only 2b11 and 2b00 are supported.
CLK_POL 1rwNormal read/write0x0Clock polarity outside QSPI word
Software Driver name: XQSPIPS_CR_CPOL
0: QSPI clock is quiescent low
1: QSPI clock is quiescent high
Note: For {CLK_PH, CLK_POL}, only 2b11 and 2b00 are supported.
MODE_SEL 0rwNormal read/write0x0Mode select
Software Driver name: XQSPIPS_CR_MSTREN
0: reserved
1: QSPI is in master mode
In QSPI boot mode, ROM code will set this bit. In other boot modes, this bit must be set before using QSPI.