blob: 183318a77bf27e42c10a891378b0beae612bee73 [file] [log] [blame]
/*******************************************************************************
* *
* Copyright 2013 Altera Corporation. All Rights Reserved. *
* *
* Redistribution and use in source and binary forms, with or without *
* modification, are permitted provided that the following conditions are met: *
* *
* 1. Redistributions of source code must retain the above copyright notice, *
* this list of conditions and the following disclaimer. *
* *
* 2. Redistributions in binary form must reproduce the above copyright notice, *
* this list of conditions and the following disclaimer in the documentation *
* and/or other materials provided with the distribution. *
* *
* 3. The name of the author may not be used to endorse or promote products *
* derived from this software without specific prior written permission. *
* *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER "AS IS" AND ANY EXPRESS OR *
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF *
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE DISCLAIMED. IN NO *
* EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, *
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, *
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; *
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, *
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR *
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF *
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
* *
*******************************************************************************/
/* Altera - ALT_QSPI */
#ifndef __ALTERA_ALT_QSPI_H__
#define __ALTERA_ALT_QSPI_H__
#ifdef __cplusplus
extern "C"
{
#endif /* __cplusplus */
/*
* Component : QSPI Flash Controller Module Registers - ALT_QSPI
* QSPI Flash Controller Module Registers
*
* Registers in the QSPI Flash Controller module accessible via its APB slave
*
*/
/*
* Register : QSPI Configuration Register - cfg
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:-------------------------------------------
* [0] | RW | 0x0 | QSPI Enable
* [1] | RW | 0x0 | Clock Polarity
* [2] | RW | 0x0 | Select Clock Phase
* [6:3] | ??? | 0x0 | *UNDEFINED*
* [7] | RW | 0x0 | Enable Direct Access Controller
* [8] | RW | 0x0 | Legacy IP Mode Enable
* [9] | RW | 0x0 | Peripheral select decode
* [13:10] | RW | 0x0 | Peripheral Chip Select Lines
* [14] | RW | 0x0 | Write Protect Flash Pin
* [15] | RW | 0x0 | Enable DMA Peripheral Interface
* [16] | RW | 0x0 | Enable AHB Address Re-mapping
* [17] | RW | 0x0 | Enter XIP Mode on next READ
* [18] | RW | 0x0 | Enter XIP Mode Immediately
* [22:19] | RW | 0xf | Master Mode Baud Rate Divisor
* [30:23] | ??? | 0x0 | *UNDEFINED*
* [31] | R | 0x0 | Serial interface and QSPI pipeline is IDLE
*
*/
/*
* Field : QSPI Enable - en
*
* If this bit is disabled, the QSPI will finish the current transfer of the data
* word (FF_W) and stop sending. When Enabled, and qspi_n_mo_en = 0, all output
* enables are inactive and all pins are set to input mode.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------|:------|:-----------------
* ALT_QSPI_CFG_EN_E_DIS | 0x0 | Disable the QSPI
* ALT_QSPI_CFG_EN_E_EN | 0x1 | Enable the QSPI
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_EN
*
* Disable the QSPI
*/
#define ALT_QSPI_CFG_EN_E_DIS 0x0
/*
* Enumerated value for register field ALT_QSPI_CFG_EN
*
* Enable the QSPI
*/
#define ALT_QSPI_CFG_EN_E_EN 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_EN register field. */
#define ALT_QSPI_CFG_EN_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_EN register field. */
#define ALT_QSPI_CFG_EN_MSB 0
/* The width in bits of the ALT_QSPI_CFG_EN register field. */
#define ALT_QSPI_CFG_EN_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_EN register field value. */
#define ALT_QSPI_CFG_EN_SET_MSK 0x00000001
/* The mask used to clear the ALT_QSPI_CFG_EN register field value. */
#define ALT_QSPI_CFG_EN_CLR_MSK 0xfffffffe
/* The reset value of the ALT_QSPI_CFG_EN register field. */
#define ALT_QSPI_CFG_EN_RESET 0x0
/* Extracts the ALT_QSPI_CFG_EN field value from a register. */
#define ALT_QSPI_CFG_EN_GET(value) (((value) & 0x00000001) >> 0)
/* Produces a ALT_QSPI_CFG_EN register field value suitable for setting the register. */
#define ALT_QSPI_CFG_EN_SET(value) (((value) << 0) & 0x00000001)
/*
* Field : Clock Polarity - selclkpol
*
* Controls spiclk modes of operation.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------|:------|:----------------------------
* ALT_QSPI_CFG_SELCLKPOL_E_LOW | 0x1 | SPI clock is quiescent low
* ALT_QSPI_CFG_SELCLKPOL_E_HIGH | 0x0 | SPI clock is quiescent high
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_SELCLKPOL
*
* SPI clock is quiescent low
*/
#define ALT_QSPI_CFG_SELCLKPOL_E_LOW 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_SELCLKPOL
*
* SPI clock is quiescent high
*/
#define ALT_QSPI_CFG_SELCLKPOL_E_HIGH 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_SELCLKPOL register field. */
#define ALT_QSPI_CFG_SELCLKPOL_LSB 1
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_SELCLKPOL register field. */
#define ALT_QSPI_CFG_SELCLKPOL_MSB 1
/* The width in bits of the ALT_QSPI_CFG_SELCLKPOL register field. */
#define ALT_QSPI_CFG_SELCLKPOL_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_SELCLKPOL register field value. */
#define ALT_QSPI_CFG_SELCLKPOL_SET_MSK 0x00000002
/* The mask used to clear the ALT_QSPI_CFG_SELCLKPOL register field value. */
#define ALT_QSPI_CFG_SELCLKPOL_CLR_MSK 0xfffffffd
/* The reset value of the ALT_QSPI_CFG_SELCLKPOL register field. */
#define ALT_QSPI_CFG_SELCLKPOL_RESET 0x0
/* Extracts the ALT_QSPI_CFG_SELCLKPOL field value from a register. */
#define ALT_QSPI_CFG_SELCLKPOL_GET(value) (((value) & 0x00000002) >> 1)
/* Produces a ALT_QSPI_CFG_SELCLKPOL register field value suitable for setting the register. */
#define ALT_QSPI_CFG_SELCLKPOL_SET(value) (((value) << 1) & 0x00000002)
/*
* Field : Select Clock Phase - selclkphase
*
* Selects whether the clock is in an active or inactive phase outside the SPI
* word.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------------|:------|:---------------------------
* ALT_QSPI_CFG_SELCLKPHASE_E_ACT | 0x0 | SPI clock is quiescent low
* ALT_QSPI_CFG_SELCLKPHASE_E_INACT | 0x1 | Clock Inactive
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_SELCLKPHASE
*
* SPI clock is quiescent low
*/
#define ALT_QSPI_CFG_SELCLKPHASE_E_ACT 0x0
/*
* Enumerated value for register field ALT_QSPI_CFG_SELCLKPHASE
*
* Clock Inactive
*/
#define ALT_QSPI_CFG_SELCLKPHASE_E_INACT 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_SELCLKPHASE register field. */
#define ALT_QSPI_CFG_SELCLKPHASE_LSB 2
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_SELCLKPHASE register field. */
#define ALT_QSPI_CFG_SELCLKPHASE_MSB 2
/* The width in bits of the ALT_QSPI_CFG_SELCLKPHASE register field. */
#define ALT_QSPI_CFG_SELCLKPHASE_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_SELCLKPHASE register field value. */
#define ALT_QSPI_CFG_SELCLKPHASE_SET_MSK 0x00000004
/* The mask used to clear the ALT_QSPI_CFG_SELCLKPHASE register field value. */
#define ALT_QSPI_CFG_SELCLKPHASE_CLR_MSK 0xfffffffb
/* The reset value of the ALT_QSPI_CFG_SELCLKPHASE register field. */
#define ALT_QSPI_CFG_SELCLKPHASE_RESET 0x0
/* Extracts the ALT_QSPI_CFG_SELCLKPHASE field value from a register. */
#define ALT_QSPI_CFG_SELCLKPHASE_GET(value) (((value) & 0x00000004) >> 2)
/* Produces a ALT_QSPI_CFG_SELCLKPHASE register field value suitable for setting the register. */
#define ALT_QSPI_CFG_SELCLKPHASE_SET(value) (((value) << 2) & 0x00000004)
/*
* Field : Enable Direct Access Controller - endiracc
*
* If disabled, the Direct Access Controller becomes inactive once the current
* transfer of the data word (FF_W) is complete. When the Direct Access Controller
* and Indirect Access Controller are both disabled, all AHB requests are completed
* with an error response.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------|:------|:---------------------------
* ALT_QSPI_CFG_ENDIRACC_E_DIS | 0x0 | Disable Direct Access Ctrl
* ALT_QSPI_CFG_ENDIRACC_E_EN | 0x1 | Enable Direct Access Ctrl
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_ENDIRACC
*
* Disable Direct Access Ctrl
*/
#define ALT_QSPI_CFG_ENDIRACC_E_DIS 0x0
/*
* Enumerated value for register field ALT_QSPI_CFG_ENDIRACC
*
* Enable Direct Access Ctrl
*/
#define ALT_QSPI_CFG_ENDIRACC_E_EN 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_ENDIRACC register field. */
#define ALT_QSPI_CFG_ENDIRACC_LSB 7
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_ENDIRACC register field. */
#define ALT_QSPI_CFG_ENDIRACC_MSB 7
/* The width in bits of the ALT_QSPI_CFG_ENDIRACC register field. */
#define ALT_QSPI_CFG_ENDIRACC_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_ENDIRACC register field value. */
#define ALT_QSPI_CFG_ENDIRACC_SET_MSK 0x00000080
/* The mask used to clear the ALT_QSPI_CFG_ENDIRACC register field value. */
#define ALT_QSPI_CFG_ENDIRACC_CLR_MSK 0xffffff7f
/* The reset value of the ALT_QSPI_CFG_ENDIRACC register field. */
#define ALT_QSPI_CFG_ENDIRACC_RESET 0x0
/* Extracts the ALT_QSPI_CFG_ENDIRACC field value from a register. */
#define ALT_QSPI_CFG_ENDIRACC_GET(value) (((value) & 0x00000080) >> 7)
/* Produces a ALT_QSPI_CFG_ENDIRACC register field value suitable for setting the register. */
#define ALT_QSPI_CFG_ENDIRACC_SET(value) (((value) << 7) & 0x00000080)
/*
* Field : Legacy IP Mode Enable - enlegacyip
*
* This bit can select the Direct Access Controller/Indirect Access Controller or
* legacy mode.If legacy mode is selected, any write to the controller via the AHB
* interface is serialized and sent to the FLASH device. Any valid AHB read will
* pop the internal RX-FIFO, retrieving data that was forwarded by the external
* FLASH device on the SPI lines, byte transfers of 4, 2 or 1 are permitted and
* controlled via the HSIZE input.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------------|:------|:--------------------------------------
* ALT_QSPI_CFG_ENLEGACYIP_E_LEGMOD | 0x1 | Legacy Mode
* ALT_QSPI_CFG_ENLEGACYIP_E_DIMOD | 0x0 | Use Direct/Indirect Access Controller
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_ENLEGACYIP
*
* Legacy Mode
*/
#define ALT_QSPI_CFG_ENLEGACYIP_E_LEGMOD 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_ENLEGACYIP
*
* Use Direct/Indirect Access Controller
*/
#define ALT_QSPI_CFG_ENLEGACYIP_E_DIMOD 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_ENLEGACYIP register field. */
#define ALT_QSPI_CFG_ENLEGACYIP_LSB 8
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_ENLEGACYIP register field. */
#define ALT_QSPI_CFG_ENLEGACYIP_MSB 8
/* The width in bits of the ALT_QSPI_CFG_ENLEGACYIP register field. */
#define ALT_QSPI_CFG_ENLEGACYIP_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_ENLEGACYIP register field value. */
#define ALT_QSPI_CFG_ENLEGACYIP_SET_MSK 0x00000100
/* The mask used to clear the ALT_QSPI_CFG_ENLEGACYIP register field value. */
#define ALT_QSPI_CFG_ENLEGACYIP_CLR_MSK 0xfffffeff
/* The reset value of the ALT_QSPI_CFG_ENLEGACYIP register field. */
#define ALT_QSPI_CFG_ENLEGACYIP_RESET 0x0
/* Extracts the ALT_QSPI_CFG_ENLEGACYIP field value from a register. */
#define ALT_QSPI_CFG_ENLEGACYIP_GET(value) (((value) & 0x00000100) >> 8)
/* Produces a ALT_QSPI_CFG_ENLEGACYIP register field value suitable for setting the register. */
#define ALT_QSPI_CFG_ENLEGACYIP_SET(value) (((value) << 8) & 0x00000100)
/*
* Field : Peripheral select decode - perseldec
*
* Select between '1 of 4 selects' or 'external 4-to-16 decode'. The
* qspi_n_ss_out[3:0] output signals are controlled.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:----------------------------------
* ALT_QSPI_CFG_PERSELDEC_E_SEL4TO16 | 0x1 | Select external 4-to-16 decode
* ALT_QSPI_CFG_PERSELDEC_E_SEL1OF4 | 0x0 | Selects 1 of 4 qspi_n_ss_out[3:0]
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_PERSELDEC
*
* Select external 4-to-16 decode
*/
#define ALT_QSPI_CFG_PERSELDEC_E_SEL4TO16 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_PERSELDEC
*
* Selects 1 of 4 qspi_n_ss_out[3:0]
*/
#define ALT_QSPI_CFG_PERSELDEC_E_SEL1OF4 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_PERSELDEC register field. */
#define ALT_QSPI_CFG_PERSELDEC_LSB 9
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_PERSELDEC register field. */
#define ALT_QSPI_CFG_PERSELDEC_MSB 9
/* The width in bits of the ALT_QSPI_CFG_PERSELDEC register field. */
#define ALT_QSPI_CFG_PERSELDEC_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_PERSELDEC register field value. */
#define ALT_QSPI_CFG_PERSELDEC_SET_MSK 0x00000200
/* The mask used to clear the ALT_QSPI_CFG_PERSELDEC register field value. */
#define ALT_QSPI_CFG_PERSELDEC_CLR_MSK 0xfffffdff
/* The reset value of the ALT_QSPI_CFG_PERSELDEC register field. */
#define ALT_QSPI_CFG_PERSELDEC_RESET 0x0
/* Extracts the ALT_QSPI_CFG_PERSELDEC field value from a register. */
#define ALT_QSPI_CFG_PERSELDEC_GET(value) (((value) & 0x00000200) >> 9)
/* Produces a ALT_QSPI_CFG_PERSELDEC register field value suitable for setting the register. */
#define ALT_QSPI_CFG_PERSELDEC_SET(value) (((value) << 9) & 0x00000200)
/*
* Field : Peripheral Chip Select Lines - percslines
*
* Peripheral chip select line output decode type. As per perseldec, if perseldec =
* 0, the decode is select 1 of 4 decoding on signals, qspi_n_ss_out[3:0], The
* asserted decode line goes to 0. If perseldec = 1, the signals qspi_n_ss_out[3:0]
* require an external 4 to 16 decoder.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_PERCSLINES register field. */
#define ALT_QSPI_CFG_PERCSLINES_LSB 10
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_PERCSLINES register field. */
#define ALT_QSPI_CFG_PERCSLINES_MSB 13
/* The width in bits of the ALT_QSPI_CFG_PERCSLINES register field. */
#define ALT_QSPI_CFG_PERCSLINES_WIDTH 4
/* The mask used to set the ALT_QSPI_CFG_PERCSLINES register field value. */
#define ALT_QSPI_CFG_PERCSLINES_SET_MSK 0x00003c00
/* The mask used to clear the ALT_QSPI_CFG_PERCSLINES register field value. */
#define ALT_QSPI_CFG_PERCSLINES_CLR_MSK 0xffffc3ff
/* The reset value of the ALT_QSPI_CFG_PERCSLINES register field. */
#define ALT_QSPI_CFG_PERCSLINES_RESET 0x0
/* Extracts the ALT_QSPI_CFG_PERCSLINES field value from a register. */
#define ALT_QSPI_CFG_PERCSLINES_GET(value) (((value) & 0x00003c00) >> 10)
/* Produces a ALT_QSPI_CFG_PERCSLINES register field value suitable for setting the register. */
#define ALT_QSPI_CFG_PERCSLINES_SET(value) (((value) << 10) & 0x00003c00)
/*
* Field : Write Protect Flash Pin - wp
*
* This bit controls the write protect pin of the flash devices. The signal
* qspi_mo2_wpn needs to be resynchronized to the generated memory clock as
* necessary.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-----------------------------|:------|:----------------------
* ALT_QSPI_CFG_WP_E_WRPROTON | 0x1 | Enable Write Protect
* ALT_QSPI_CFG_WP_E_WRTPROTOFF | 0x0 | Disable Write Protect
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_WP
*
* Enable Write Protect
*/
#define ALT_QSPI_CFG_WP_E_WRPROTON 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_WP
*
* Disable Write Protect
*/
#define ALT_QSPI_CFG_WP_E_WRTPROTOFF 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_WP register field. */
#define ALT_QSPI_CFG_WP_LSB 14
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_WP register field. */
#define ALT_QSPI_CFG_WP_MSB 14
/* The width in bits of the ALT_QSPI_CFG_WP register field. */
#define ALT_QSPI_CFG_WP_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_WP register field value. */
#define ALT_QSPI_CFG_WP_SET_MSK 0x00004000
/* The mask used to clear the ALT_QSPI_CFG_WP register field value. */
#define ALT_QSPI_CFG_WP_CLR_MSK 0xffffbfff
/* The reset value of the ALT_QSPI_CFG_WP register field. */
#define ALT_QSPI_CFG_WP_RESET 0x0
/* Extracts the ALT_QSPI_CFG_WP field value from a register. */
#define ALT_QSPI_CFG_WP_GET(value) (((value) & 0x00004000) >> 14)
/* Produces a ALT_QSPI_CFG_WP register field value suitable for setting the register. */
#define ALT_QSPI_CFG_WP_SET(value) (((value) << 14) & 0x00004000)
/*
* Field : Enable DMA Peripheral Interface - endma
*
* Allows DMA handshaking mode. When enabled the QSPI will trigger DMA transfer
* requests via the DMA peripheral interface.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-------------------------|:------|:-----------------
* ALT_QSPI_CFG_ENDMA_E_EN | 0x1 | Enable DMA Mode
* ALT_QSPI_CFG_ENDMA_E_DIS | 0x0 | Disable DMA Mode
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_ENDMA
*
* Enable DMA Mode
*/
#define ALT_QSPI_CFG_ENDMA_E_EN 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_ENDMA
*
* Disable DMA Mode
*/
#define ALT_QSPI_CFG_ENDMA_E_DIS 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_ENDMA register field. */
#define ALT_QSPI_CFG_ENDMA_LSB 15
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_ENDMA register field. */
#define ALT_QSPI_CFG_ENDMA_MSB 15
/* The width in bits of the ALT_QSPI_CFG_ENDMA register field. */
#define ALT_QSPI_CFG_ENDMA_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_ENDMA register field value. */
#define ALT_QSPI_CFG_ENDMA_SET_MSK 0x00008000
/* The mask used to clear the ALT_QSPI_CFG_ENDMA register field value. */
#define ALT_QSPI_CFG_ENDMA_CLR_MSK 0xffff7fff
/* The reset value of the ALT_QSPI_CFG_ENDMA register field. */
#define ALT_QSPI_CFG_ENDMA_RESET 0x0
/* Extracts the ALT_QSPI_CFG_ENDMA field value from a register. */
#define ALT_QSPI_CFG_ENDMA_GET(value) (((value) & 0x00008000) >> 15)
/* Produces a ALT_QSPI_CFG_ENDMA register field value suitable for setting the register. */
#define ALT_QSPI_CFG_ENDMA_SET(value) (((value) << 15) & 0x00008000)
/*
* Field : Enable AHB Address Re-mapping - enahbremap
*
* (Direct Access Mode Only) When enabled, the incoming AHB address will be adapted
* and sent to the FLASH device as (address + N), where N is the value stored in
* the remap address register.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------|:------|:-----------------------
* ALT_QSPI_CFG_ENAHBREMAP_E_EN | 0x1 | Enable AHB Re-mapping
* ALT_QSPI_CFG_ENAHBREMAP_E_DIS | 0x0 | Disable AHB Re-mapping
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_ENAHBREMAP
*
* Enable AHB Re-mapping
*/
#define ALT_QSPI_CFG_ENAHBREMAP_E_EN 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_ENAHBREMAP
*
* Disable AHB Re-mapping
*/
#define ALT_QSPI_CFG_ENAHBREMAP_E_DIS 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_ENAHBREMAP register field. */
#define ALT_QSPI_CFG_ENAHBREMAP_LSB 16
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_ENAHBREMAP register field. */
#define ALT_QSPI_CFG_ENAHBREMAP_MSB 16
/* The width in bits of the ALT_QSPI_CFG_ENAHBREMAP register field. */
#define ALT_QSPI_CFG_ENAHBREMAP_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_ENAHBREMAP register field value. */
#define ALT_QSPI_CFG_ENAHBREMAP_SET_MSK 0x00010000
/* The mask used to clear the ALT_QSPI_CFG_ENAHBREMAP register field value. */
#define ALT_QSPI_CFG_ENAHBREMAP_CLR_MSK 0xfffeffff
/* The reset value of the ALT_QSPI_CFG_ENAHBREMAP register field. */
#define ALT_QSPI_CFG_ENAHBREMAP_RESET 0x0
/* Extracts the ALT_QSPI_CFG_ENAHBREMAP field value from a register. */
#define ALT_QSPI_CFG_ENAHBREMAP_GET(value) (((value) & 0x00010000) >> 16)
/* Produces a ALT_QSPI_CFG_ENAHBREMAP register field value suitable for setting the register. */
#define ALT_QSPI_CFG_ENAHBREMAP_SET(value) (((value) << 16) & 0x00010000)
/*
* Field : Enter XIP Mode on next READ - enterxipnextrd
*
* If XIP is enabled, then setting to disabled will cause the controller to exit
* XIP mode on the next READ instruction. If XIP is disabled, then setting to
* enabled will inform the controller that the device is ready to enter XIP on the
* next READ instruction. The controller will therefore send the appropriate
* command sequence, including mode bits to cause the device to enter XIP mode. Use
* this register after the controller has ensured the FLASH device has been
* configured to be ready to enter XIP mode. Note : To exit XIP mode, this bit
* should be set to 0. This will take effect in the attached device only AFTER the
* next READ instruction is executed. Software should therefore ensure that at
* least one READ instruction is requested after resetting this bit before it can
* be sure XIP mode in the device is exited.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:----------------------------------------
* ALT_QSPI_CFG_ENTERXIPNEXTRD_E_EN | 0x1 | Enter XIP Mode on next READ instruction
* ALT_QSPI_CFG_ENTERXIPNEXTRD_E_DIS | 0x0 | Exit XIP Mode on next READ instruction
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_ENTERXIPNEXTRD
*
* Enter XIP Mode on next READ instruction
*/
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_E_EN 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_ENTERXIPNEXTRD
*
* Exit XIP Mode on next READ instruction
*/
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_E_DIS 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_ENTERXIPNEXTRD register field. */
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_LSB 17
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_ENTERXIPNEXTRD register field. */
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_MSB 17
/* The width in bits of the ALT_QSPI_CFG_ENTERXIPNEXTRD register field. */
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_ENTERXIPNEXTRD register field value. */
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_SET_MSK 0x00020000
/* The mask used to clear the ALT_QSPI_CFG_ENTERXIPNEXTRD register field value. */
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_CLR_MSK 0xfffdffff
/* The reset value of the ALT_QSPI_CFG_ENTERXIPNEXTRD register field. */
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_RESET 0x0
/* Extracts the ALT_QSPI_CFG_ENTERXIPNEXTRD field value from a register. */
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_GET(value) (((value) & 0x00020000) >> 17)
/* Produces a ALT_QSPI_CFG_ENTERXIPNEXTRD register field value suitable for setting the register. */
#define ALT_QSPI_CFG_ENTERXIPNEXTRD_SET(value) (((value) << 17) & 0x00020000)
/*
* Field : Enter XIP Mode Immediately - enterxipimm
*
* If XIP is enabled, then setting to disabled will cause the controller to exit
* XIP mode on the next READ instruction. If XIP is disabled, then setting enable
* will operate the device in XIP mode immediately. Use this register when the
* external device wakes up in XIP mode (as per the contents of its non- volatile
* configuration register). The controller will assume the next READ instruction
* will be passed to the device as an XIP instruction, and therefore will not
* require the READ opcode to be transferred. Note: To exit XIP mode, this bit
* should be set to 0. This will take effect in the attached device only after the
* next READ instruction is executed. Software therefore should ensure that at
* least one READ instruction is requested after resetting this bit in order to be
* sure that XIP mode is exited.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-------------------------------|:------|:---------------------------------------
* ALT_QSPI_CFG_ENTERXIPIMM_E_EN | 0x1 | Enter XIP Mode immediately
* ALT_QSPI_CFG_ENTERXIPIMM_E_DIS | 0x0 | Exit XIP Mode on next READ instruction
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_ENTERXIPIMM
*
* Enter XIP Mode immediately
*/
#define ALT_QSPI_CFG_ENTERXIPIMM_E_EN 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_ENTERXIPIMM
*
* Exit XIP Mode on next READ instruction
*/
#define ALT_QSPI_CFG_ENTERXIPIMM_E_DIS 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_ENTERXIPIMM register field. */
#define ALT_QSPI_CFG_ENTERXIPIMM_LSB 18
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_ENTERXIPIMM register field. */
#define ALT_QSPI_CFG_ENTERXIPIMM_MSB 18
/* The width in bits of the ALT_QSPI_CFG_ENTERXIPIMM register field. */
#define ALT_QSPI_CFG_ENTERXIPIMM_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_ENTERXIPIMM register field value. */
#define ALT_QSPI_CFG_ENTERXIPIMM_SET_MSK 0x00040000
/* The mask used to clear the ALT_QSPI_CFG_ENTERXIPIMM register field value. */
#define ALT_QSPI_CFG_ENTERXIPIMM_CLR_MSK 0xfffbffff
/* The reset value of the ALT_QSPI_CFG_ENTERXIPIMM register field. */
#define ALT_QSPI_CFG_ENTERXIPIMM_RESET 0x0
/* Extracts the ALT_QSPI_CFG_ENTERXIPIMM field value from a register. */
#define ALT_QSPI_CFG_ENTERXIPIMM_GET(value) (((value) & 0x00040000) >> 18)
/* Produces a ALT_QSPI_CFG_ENTERXIPIMM register field value suitable for setting the register. */
#define ALT_QSPI_CFG_ENTERXIPIMM_SET(value) (((value) << 18) & 0x00040000)
/*
* Field : Master Mode Baud Rate Divisor - bauddiv
*
* SPI baud rate = ref_clk / (2 * baud_rate_divisor)
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------|:------|:-----------------
* ALT_QSPI_CFG_BAUDDIV_E_BAUD2 | 0x0 | Baud Rate Div/2
* ALT_QSPI_CFG_BAUDDIV_E_BAUD4 | 0x1 | Baud Rate Div/4
* ALT_QSPI_CFG_BAUDDIV_E_BAUD6 | 0x2 | Baud Rate Div/6
* ALT_QSPI_CFG_BAUDDIV_E_BAUD8 | 0x3 | Baud Rate Div/8
* ALT_QSPI_CFG_BAUDDIV_E_BAUD10 | 0x4 | Baud Rate Div/10
* ALT_QSPI_CFG_BAUDDIV_E_BAUD12 | 0x5 | Baud Rate Div/12
* ALT_QSPI_CFG_BAUDDIV_E_BAUD14 | 0x6 | Baud Rate Div/14
* ALT_QSPI_CFG_BAUDDIV_E_BAUD16 | 0x7 | Baud Rate Div/16
* ALT_QSPI_CFG_BAUDDIV_E_BAUD18 | 0x8 | Baud Rate Div/18
* ALT_QSPI_CFG_BAUDDIV_E_BAUD20 | 0x9 | Baud Rate Div/20
* ALT_QSPI_CFG_BAUDDIV_E_BAUD22 | 0xa | Baud Rate Div/22
* ALT_QSPI_CFG_BAUDDIV_E_BAUD24 | 0xb | Baud Rate Div/24
* ALT_QSPI_CFG_BAUDDIV_E_BAUD26 | 0xc | Baud Rate Div/26
* ALT_QSPI_CFG_BAUDDIV_E_BAUD28 | 0xd | Baud Rate Div/28
* ALT_QSPI_CFG_BAUDDIV_E_BAUD30 | 0xe | Baud Rate Div/30
* ALT_QSPI_CFG_BAUDDIV_E_BAUD32 | 0xf | Baud Rate Div/32
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/2
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD2 0x0
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/4
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD4 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/6
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD6 0x2
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/8
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD8 0x3
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/10
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD10 0x4
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/12
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD12 0x5
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/14
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD14 0x6
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/16
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD16 0x7
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/18
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD18 0x8
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/20
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD20 0x9
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/22
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD22 0xa
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/24
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD24 0xb
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/26
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD26 0xc
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/28
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD28 0xd
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/30
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD30 0xe
/*
* Enumerated value for register field ALT_QSPI_CFG_BAUDDIV
*
* Baud Rate Div/32
*/
#define ALT_QSPI_CFG_BAUDDIV_E_BAUD32 0xf
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_BAUDDIV register field. */
#define ALT_QSPI_CFG_BAUDDIV_LSB 19
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_BAUDDIV register field. */
#define ALT_QSPI_CFG_BAUDDIV_MSB 22
/* The width in bits of the ALT_QSPI_CFG_BAUDDIV register field. */
#define ALT_QSPI_CFG_BAUDDIV_WIDTH 4
/* The mask used to set the ALT_QSPI_CFG_BAUDDIV register field value. */
#define ALT_QSPI_CFG_BAUDDIV_SET_MSK 0x00780000
/* The mask used to clear the ALT_QSPI_CFG_BAUDDIV register field value. */
#define ALT_QSPI_CFG_BAUDDIV_CLR_MSK 0xff87ffff
/* The reset value of the ALT_QSPI_CFG_BAUDDIV register field. */
#define ALT_QSPI_CFG_BAUDDIV_RESET 0xf
/* Extracts the ALT_QSPI_CFG_BAUDDIV field value from a register. */
#define ALT_QSPI_CFG_BAUDDIV_GET(value) (((value) & 0x00780000) >> 19)
/* Produces a ALT_QSPI_CFG_BAUDDIV register field value suitable for setting the register. */
#define ALT_QSPI_CFG_BAUDDIV_SET(value) (((value) << 19) & 0x00780000)
/*
* Field : Serial interface and QSPI pipeline is IDLE - idle
*
* This is a STATUS read-only bit. Note this is a retimed signal, so there will be
* some inherent delay on the generation of this status signal.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------|:------|:--------------
* ALT_QSPI_CFG_IDLE_E_SET | 0x1 | Idle Mode
* ALT_QSPI_CFG_IDLE_E_NOTSET | 0x0 | Non-Idle Mode
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_CFG_IDLE
*
* Idle Mode
*/
#define ALT_QSPI_CFG_IDLE_E_SET 0x1
/*
* Enumerated value for register field ALT_QSPI_CFG_IDLE
*
* Non-Idle Mode
*/
#define ALT_QSPI_CFG_IDLE_E_NOTSET 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_CFG_IDLE register field. */
#define ALT_QSPI_CFG_IDLE_LSB 31
/* The Most Significant Bit (MSB) position of the ALT_QSPI_CFG_IDLE register field. */
#define ALT_QSPI_CFG_IDLE_MSB 31
/* The width in bits of the ALT_QSPI_CFG_IDLE register field. */
#define ALT_QSPI_CFG_IDLE_WIDTH 1
/* The mask used to set the ALT_QSPI_CFG_IDLE register field value. */
#define ALT_QSPI_CFG_IDLE_SET_MSK 0x80000000
/* The mask used to clear the ALT_QSPI_CFG_IDLE register field value. */
#define ALT_QSPI_CFG_IDLE_CLR_MSK 0x7fffffff
/* The reset value of the ALT_QSPI_CFG_IDLE register field. */
#define ALT_QSPI_CFG_IDLE_RESET 0x0
/* Extracts the ALT_QSPI_CFG_IDLE field value from a register. */
#define ALT_QSPI_CFG_IDLE_GET(value) (((value) & 0x80000000) >> 31)
/* Produces a ALT_QSPI_CFG_IDLE register field value suitable for setting the register. */
#define ALT_QSPI_CFG_IDLE_SET(value) (((value) << 31) & 0x80000000)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_CFG.
*/
struct ALT_QSPI_CFG_s
{
uint32_t en : 1; /* QSPI Enable */
uint32_t selclkpol : 1; /* Clock Polarity */
uint32_t selclkphase : 1; /* Select Clock Phase */
uint32_t : 4; /* *UNDEFINED* */
uint32_t endiracc : 1; /* Enable Direct Access Controller */
uint32_t enlegacyip : 1; /* Legacy IP Mode Enable */
uint32_t perseldec : 1; /* Peripheral select decode */
uint32_t percslines : 4; /* Peripheral Chip Select Lines */
uint32_t wp : 1; /* Write Protect Flash Pin */
uint32_t endma : 1; /* Enable DMA Peripheral Interface */
uint32_t enahbremap : 1; /* Enable AHB Address Re-mapping */
uint32_t enterxipnextrd : 1; /* Enter XIP Mode on next READ */
uint32_t enterxipimm : 1; /* Enter XIP Mode Immediately */
uint32_t bauddiv : 4; /* Master Mode Baud Rate Divisor */
uint32_t : 8; /* *UNDEFINED* */
const uint32_t idle : 1; /* Serial interface and QSPI pipeline is IDLE */
};
/* The typedef declaration for register ALT_QSPI_CFG. */
typedef volatile struct ALT_QSPI_CFG_s ALT_QSPI_CFG_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_CFG register from the beginning of the component. */
#define ALT_QSPI_CFG_OFST 0x0
/*
* Register : Device Read Instruction Register - devrd
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:----------------------------
* [7:0] | RW | 0x3 | Read Opcode in non-XIP mode
* [9:8] | RW | 0x0 | Instruction Transfer Width
* [11:10] | ??? | 0x0 | *UNDEFINED*
* [13:12] | RW | 0x0 | Address Transfer Width
* [15:14] | ??? | 0x0 | *UNDEFINED*
* [17:16] | RW | 0x0 | Data Transfer Width
* [19:18] | ??? | 0x0 | *UNDEFINED*
* [20] | RW | 0x0 | Mode Bit Enable
* [23:21] | ??? | 0x0 | *UNDEFINED*
* [28:24] | RW | 0x0 | Dummy Read Clock Cycles
* [31:29] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Read Opcode in non-XIP mode - rdopcode
*
* Read Opcode to use when not in XIP mode
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------------|:------|:----------------------------
* ALT_QSPI_DEVRD_RDOPCODE_E_RD | 0x3 | Read Opcode in Non-XIP mode
* ALT_QSPI_DEVRD_RDOPCODE_E_FASTRD | 0xb | Fast Read in Non-XIP mode
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_DEVRD_RDOPCODE
*
* Read Opcode in Non-XIP mode
*/
#define ALT_QSPI_DEVRD_RDOPCODE_E_RD 0x3
/*
* Enumerated value for register field ALT_QSPI_DEVRD_RDOPCODE
*
* Fast Read in Non-XIP mode
*/
#define ALT_QSPI_DEVRD_RDOPCODE_E_FASTRD 0xb
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVRD_RDOPCODE register field. */
#define ALT_QSPI_DEVRD_RDOPCODE_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVRD_RDOPCODE register field. */
#define ALT_QSPI_DEVRD_RDOPCODE_MSB 7
/* The width in bits of the ALT_QSPI_DEVRD_RDOPCODE register field. */
#define ALT_QSPI_DEVRD_RDOPCODE_WIDTH 8
/* The mask used to set the ALT_QSPI_DEVRD_RDOPCODE register field value. */
#define ALT_QSPI_DEVRD_RDOPCODE_SET_MSK 0x000000ff
/* The mask used to clear the ALT_QSPI_DEVRD_RDOPCODE register field value. */
#define ALT_QSPI_DEVRD_RDOPCODE_CLR_MSK 0xffffff00
/* The reset value of the ALT_QSPI_DEVRD_RDOPCODE register field. */
#define ALT_QSPI_DEVRD_RDOPCODE_RESET 0x3
/* Extracts the ALT_QSPI_DEVRD_RDOPCODE field value from a register. */
#define ALT_QSPI_DEVRD_RDOPCODE_GET(value) (((value) & 0x000000ff) >> 0)
/* Produces a ALT_QSPI_DEVRD_RDOPCODE register field value suitable for setting the register. */
#define ALT_QSPI_DEVRD_RDOPCODE_SET(value) (((value) << 0) & 0x000000ff)
/*
* Field : Instruction Transfer Width - instwidth
*
* Sets instruction transfer width (1, 2, or 4 bits). Applies to all instructions
* sent to SPI flash device (not just read instructions).
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-------------------------------------------------
* ALT_QSPI_DEVRD_INSTWIDTH_E_SINGLE | 0x0 | Instruction transferred on DQ0. Supported by all
* : | | SPI flash devices.
* ALT_QSPI_DEVRD_INSTWIDTH_E_DUAL | 0x1 | Instruction transferred on DQ0 and DQ1.
* : | | Supported by all SPI flash devices that support
* : | | the Dual SP (DIO-SPI) Protocol.
* ALT_QSPI_DEVRD_INSTWIDTH_E_QUAD | 0x2 | Instruction transferred on DQ0, DQ1, DQ2, and
* : | | DQ3. Supported by all SPI flash devices that
* : | | support the Quad SP (QIO-SPI) Protocol.
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_DEVRD_INSTWIDTH
*
* Instruction transferred on DQ0. Supported by all SPI flash devices.
*/
#define ALT_QSPI_DEVRD_INSTWIDTH_E_SINGLE 0x0
/*
* Enumerated value for register field ALT_QSPI_DEVRD_INSTWIDTH
*
* Instruction transferred on DQ0 and DQ1. Supported by all SPI flash devices that
* support the Dual SP (DIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVRD_INSTWIDTH_E_DUAL 0x1
/*
* Enumerated value for register field ALT_QSPI_DEVRD_INSTWIDTH
*
* Instruction transferred on DQ0, DQ1, DQ2, and DQ3. Supported by all SPI flash
* devices that support the Quad SP (QIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVRD_INSTWIDTH_E_QUAD 0x2
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVRD_INSTWIDTH register field. */
#define ALT_QSPI_DEVRD_INSTWIDTH_LSB 8
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVRD_INSTWIDTH register field. */
#define ALT_QSPI_DEVRD_INSTWIDTH_MSB 9
/* The width in bits of the ALT_QSPI_DEVRD_INSTWIDTH register field. */
#define ALT_QSPI_DEVRD_INSTWIDTH_WIDTH 2
/* The mask used to set the ALT_QSPI_DEVRD_INSTWIDTH register field value. */
#define ALT_QSPI_DEVRD_INSTWIDTH_SET_MSK 0x00000300
/* The mask used to clear the ALT_QSPI_DEVRD_INSTWIDTH register field value. */
#define ALT_QSPI_DEVRD_INSTWIDTH_CLR_MSK 0xfffffcff
/* The reset value of the ALT_QSPI_DEVRD_INSTWIDTH register field. */
#define ALT_QSPI_DEVRD_INSTWIDTH_RESET 0x0
/* Extracts the ALT_QSPI_DEVRD_INSTWIDTH field value from a register. */
#define ALT_QSPI_DEVRD_INSTWIDTH_GET(value) (((value) & 0x00000300) >> 8)
/* Produces a ALT_QSPI_DEVRD_INSTWIDTH register field value suitable for setting the register. */
#define ALT_QSPI_DEVRD_INSTWIDTH_SET(value) (((value) << 8) & 0x00000300)
/*
* Field : Address Transfer Width - addrwidth
*
* Sets read address transfer width (1, 2, or 4 bits).
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-------------------------------------------------
* ALT_QSPI_DEVRD_ADDRWIDTH_E_SINGLE | 0x0 | Read address transferred on DQ0. Supported by
* : | | all SPI flash devices
* ALT_QSPI_DEVRD_ADDRWIDTH_E_DUAL | 0x1 | Read address transferred on DQ0 and DQ1.
* : | | Supported by some SPI flash devices that support
* : | | the Extended SPI Protocol and by all SPI flash
* : | | devices that support the Dual SP (DIO-SPI)
* : | | Protocol.
* ALT_QSPI_DEVRD_ADDRWIDTH_E_QUAD | 0x2 | Read address transferred on DQ0, DQ1, DQ2, and
* : | | DQ3. Supported by some SPI flash devices that
* : | | support the Extended SPI Protocol and by all SPI
* : | | flash devices that support the Quad SP (QIO-SPI)
* : | | Protocol.
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_DEVRD_ADDRWIDTH
*
* Read address transferred on DQ0. Supported by all SPI flash devices
*/
#define ALT_QSPI_DEVRD_ADDRWIDTH_E_SINGLE 0x0
/*
* Enumerated value for register field ALT_QSPI_DEVRD_ADDRWIDTH
*
* Read address transferred on DQ0 and DQ1. Supported by some SPI flash devices
* that support the Extended SPI Protocol and by all SPI flash devices that support
* the Dual SP (DIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVRD_ADDRWIDTH_E_DUAL 0x1
/*
* Enumerated value for register field ALT_QSPI_DEVRD_ADDRWIDTH
*
* Read address transferred on DQ0, DQ1, DQ2, and DQ3. Supported by some SPI flash
* devices that support the Extended SPI Protocol and by all SPI flash devices that
* support the Quad SP (QIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVRD_ADDRWIDTH_E_QUAD 0x2
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVRD_ADDRWIDTH register field. */
#define ALT_QSPI_DEVRD_ADDRWIDTH_LSB 12
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVRD_ADDRWIDTH register field. */
#define ALT_QSPI_DEVRD_ADDRWIDTH_MSB 13
/* The width in bits of the ALT_QSPI_DEVRD_ADDRWIDTH register field. */
#define ALT_QSPI_DEVRD_ADDRWIDTH_WIDTH 2
/* The mask used to set the ALT_QSPI_DEVRD_ADDRWIDTH register field value. */
#define ALT_QSPI_DEVRD_ADDRWIDTH_SET_MSK 0x00003000
/* The mask used to clear the ALT_QSPI_DEVRD_ADDRWIDTH register field value. */
#define ALT_QSPI_DEVRD_ADDRWIDTH_CLR_MSK 0xffffcfff
/* The reset value of the ALT_QSPI_DEVRD_ADDRWIDTH register field. */
#define ALT_QSPI_DEVRD_ADDRWIDTH_RESET 0x0
/* Extracts the ALT_QSPI_DEVRD_ADDRWIDTH field value from a register. */
#define ALT_QSPI_DEVRD_ADDRWIDTH_GET(value) (((value) & 0x00003000) >> 12)
/* Produces a ALT_QSPI_DEVRD_ADDRWIDTH register field value suitable for setting the register. */
#define ALT_QSPI_DEVRD_ADDRWIDTH_SET(value) (((value) << 12) & 0x00003000)
/*
* Field : Data Transfer Width - datawidth
*
* Sets read data transfer width (1, 2, or 4 bits).
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-------------------------------------------------
* ALT_QSPI_DEVRD_DATAWIDTH_E_SINGLE | 0x0 | Read data transferred on DQ0. Supported by all
* : | | SPI flash devices
* ALT_QSPI_DEVRD_DATAWIDTH_E_DUAL | 0x1 | Read data transferred on DQ0 and DQ1. Supported
* : | | by some SPI flash devices that support the
* : | | Extended SPI Protocol and by all SPI flash
* : | | devices that support the Dual SP (DIO-SPI)
* : | | Protocol.
* ALT_QSPI_DEVRD_DATAWIDTH_E_QUAD | 0x2 | Read data transferred on DQ0, DQ1, DQ2, and DQ3.
* : | | Supported by some SPI flash devices that support
* : | | the Extended SPI Protocol and by all SPI flash
* : | | devices that support the Quad SP (QIO-SPI)
* : | | Protocol.
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_DEVRD_DATAWIDTH
*
* Read data transferred on DQ0. Supported by all SPI flash devices
*/
#define ALT_QSPI_DEVRD_DATAWIDTH_E_SINGLE 0x0
/*
* Enumerated value for register field ALT_QSPI_DEVRD_DATAWIDTH
*
* Read data transferred on DQ0 and DQ1. Supported by some SPI flash devices that
* support the Extended SPI Protocol and by all SPI flash devices that support the
* Dual SP (DIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVRD_DATAWIDTH_E_DUAL 0x1
/*
* Enumerated value for register field ALT_QSPI_DEVRD_DATAWIDTH
*
* Read data transferred on DQ0, DQ1, DQ2, and DQ3. Supported by some SPI flash
* devices that support the Extended SPI Protocol and by all SPI flash devices that
* support the Quad SP (QIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVRD_DATAWIDTH_E_QUAD 0x2
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVRD_DATAWIDTH register field. */
#define ALT_QSPI_DEVRD_DATAWIDTH_LSB 16
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVRD_DATAWIDTH register field. */
#define ALT_QSPI_DEVRD_DATAWIDTH_MSB 17
/* The width in bits of the ALT_QSPI_DEVRD_DATAWIDTH register field. */
#define ALT_QSPI_DEVRD_DATAWIDTH_WIDTH 2
/* The mask used to set the ALT_QSPI_DEVRD_DATAWIDTH register field value. */
#define ALT_QSPI_DEVRD_DATAWIDTH_SET_MSK 0x00030000
/* The mask used to clear the ALT_QSPI_DEVRD_DATAWIDTH register field value. */
#define ALT_QSPI_DEVRD_DATAWIDTH_CLR_MSK 0xfffcffff
/* The reset value of the ALT_QSPI_DEVRD_DATAWIDTH register field. */
#define ALT_QSPI_DEVRD_DATAWIDTH_RESET 0x0
/* Extracts the ALT_QSPI_DEVRD_DATAWIDTH field value from a register. */
#define ALT_QSPI_DEVRD_DATAWIDTH_GET(value) (((value) & 0x00030000) >> 16)
/* Produces a ALT_QSPI_DEVRD_DATAWIDTH register field value suitable for setting the register. */
#define ALT_QSPI_DEVRD_DATAWIDTH_SET(value) (((value) << 16) & 0x00030000)
/*
* Field : Mode Bit Enable - enmodebits
*
* If this bit is set, the mode bits as defined in the Mode Bit Configuration
* register are sent following the address bytes.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-----------------------------------|:------|:-------------------------------
* ALT_QSPI_DEVRD_ENMODBITS_E_NOORDER | 0x0 | No Order
* ALT_QSPI_DEVRD_ENMODBITS_E_ORDER | 0x1 | Mode Bits follow address bytes
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_DEVRD_ENMODBITS
*
* No Order
*/
#define ALT_QSPI_DEVRD_ENMODBITS_E_NOORDER 0x0
/*
* Enumerated value for register field ALT_QSPI_DEVRD_ENMODBITS
*
* Mode Bits follow address bytes
*/
#define ALT_QSPI_DEVRD_ENMODBITS_E_ORDER 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVRD_ENMODBITS register field. */
#define ALT_QSPI_DEVRD_ENMODBITS_LSB 20
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVRD_ENMODBITS register field. */
#define ALT_QSPI_DEVRD_ENMODBITS_MSB 20
/* The width in bits of the ALT_QSPI_DEVRD_ENMODBITS register field. */
#define ALT_QSPI_DEVRD_ENMODBITS_WIDTH 1
/* The mask used to set the ALT_QSPI_DEVRD_ENMODBITS register field value. */
#define ALT_QSPI_DEVRD_ENMODBITS_SET_MSK 0x00100000
/* The mask used to clear the ALT_QSPI_DEVRD_ENMODBITS register field value. */
#define ALT_QSPI_DEVRD_ENMODBITS_CLR_MSK 0xffefffff
/* The reset value of the ALT_QSPI_DEVRD_ENMODBITS register field. */
#define ALT_QSPI_DEVRD_ENMODBITS_RESET 0x0
/* Extracts the ALT_QSPI_DEVRD_ENMODBITS field value from a register. */
#define ALT_QSPI_DEVRD_ENMODBITS_GET(value) (((value) & 0x00100000) >> 20)
/* Produces a ALT_QSPI_DEVRD_ENMODBITS register field value suitable for setting the register. */
#define ALT_QSPI_DEVRD_ENMODBITS_SET(value) (((value) << 20) & 0x00100000)
/*
* Field : Dummy Read Clock Cycles - dummyrdclks
*
* Number of dummy clock cycles required by device for read instruction.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVRD_DUMMYRDCLKS register field. */
#define ALT_QSPI_DEVRD_DUMMYRDCLKS_LSB 24
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVRD_DUMMYRDCLKS register field. */
#define ALT_QSPI_DEVRD_DUMMYRDCLKS_MSB 28
/* The width in bits of the ALT_QSPI_DEVRD_DUMMYRDCLKS register field. */
#define ALT_QSPI_DEVRD_DUMMYRDCLKS_WIDTH 5
/* The mask used to set the ALT_QSPI_DEVRD_DUMMYRDCLKS register field value. */
#define ALT_QSPI_DEVRD_DUMMYRDCLKS_SET_MSK 0x1f000000
/* The mask used to clear the ALT_QSPI_DEVRD_DUMMYRDCLKS register field value. */
#define ALT_QSPI_DEVRD_DUMMYRDCLKS_CLR_MSK 0xe0ffffff
/* The reset value of the ALT_QSPI_DEVRD_DUMMYRDCLKS register field. */
#define ALT_QSPI_DEVRD_DUMMYRDCLKS_RESET 0x0
/* Extracts the ALT_QSPI_DEVRD_DUMMYRDCLKS field value from a register. */
#define ALT_QSPI_DEVRD_DUMMYRDCLKS_GET(value) (((value) & 0x1f000000) >> 24)
/* Produces a ALT_QSPI_DEVRD_DUMMYRDCLKS register field value suitable for setting the register. */
#define ALT_QSPI_DEVRD_DUMMYRDCLKS_SET(value) (((value) << 24) & 0x1f000000)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_DEVRD.
*/
struct ALT_QSPI_DEVRD_s
{
uint32_t rdopcode : 8; /* Read Opcode in non-XIP mode */
uint32_t instwidth : 2; /* Instruction Transfer Width */
uint32_t : 2; /* *UNDEFINED* */
uint32_t addrwidth : 2; /* Address Transfer Width */
uint32_t : 2; /* *UNDEFINED* */
uint32_t datawidth : 2; /* Data Transfer Width */
uint32_t : 2; /* *UNDEFINED* */
uint32_t enmodebits : 1; /* Mode Bit Enable */
uint32_t : 3; /* *UNDEFINED* */
uint32_t dummyrdclks : 5; /* Dummy Read Clock Cycles */
uint32_t : 3; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_DEVRD. */
typedef volatile struct ALT_QSPI_DEVRD_s ALT_QSPI_DEVRD_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_DEVRD register from the beginning of the component. */
#define ALT_QSPI_DEVRD_OFST 0x4
/*
* Register : Device Write Instruction Register - devwr
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:-------------------------
* [7:0] | RW | 0x2 | Write Opcode
* [11:8] | ??? | 0x0 | *UNDEFINED*
* [13:12] | RW | 0x0 | Address Transfer Width
* [15:14] | ??? | 0x0 | *UNDEFINED*
* [17:16] | RW | 0x0 | Data Transfer Width
* [23:18] | ??? | 0x0 | *UNDEFINED*
* [28:24] | RW | 0x0 | Dummy Write Clock Cycles
* [31:29] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Write Opcode - wropcode
*
* Write Opcode
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVWR_WROPCODE register field. */
#define ALT_QSPI_DEVWR_WROPCODE_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVWR_WROPCODE register field. */
#define ALT_QSPI_DEVWR_WROPCODE_MSB 7
/* The width in bits of the ALT_QSPI_DEVWR_WROPCODE register field. */
#define ALT_QSPI_DEVWR_WROPCODE_WIDTH 8
/* The mask used to set the ALT_QSPI_DEVWR_WROPCODE register field value. */
#define ALT_QSPI_DEVWR_WROPCODE_SET_MSK 0x000000ff
/* The mask used to clear the ALT_QSPI_DEVWR_WROPCODE register field value. */
#define ALT_QSPI_DEVWR_WROPCODE_CLR_MSK 0xffffff00
/* The reset value of the ALT_QSPI_DEVWR_WROPCODE register field. */
#define ALT_QSPI_DEVWR_WROPCODE_RESET 0x2
/* Extracts the ALT_QSPI_DEVWR_WROPCODE field value from a register. */
#define ALT_QSPI_DEVWR_WROPCODE_GET(value) (((value) & 0x000000ff) >> 0)
/* Produces a ALT_QSPI_DEVWR_WROPCODE register field value suitable for setting the register. */
#define ALT_QSPI_DEVWR_WROPCODE_SET(value) (((value) << 0) & 0x000000ff)
/*
* Field : Address Transfer Width - addrwidth
*
* Sets write address transfer width (1, 2, or 4 bits).
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-------------------------------------------------
* ALT_QSPI_DEVWR_ADDRWIDTH_E_SINGLE | 0x0 | Write address transferred on DQ0. Supported by
* : | | all SPI flash devices
* ALT_QSPI_DEVWR_ADDRWIDTH_E_DUAL | 0x1 | Read address transferred on DQ0 and DQ1.
* : | | Supported by some SPI flash devices that support
* : | | the Extended SPI Protocol and by all SPI flash
* : | | devices that support the Dual SP (DIO-SPI)
* : | | Protocol.
* ALT_QSPI_DEVWR_ADDRWIDTH_E_QUAD | 0x2 | Read address transferred on DQ0, DQ1, DQ2, and
* : | | DQ3. Supported by some SPI flash devices that
* : | | support the Extended SPI Protocol and by all SPI
* : | | flash devices that support the Quad SP (QIO-SPI)
* : | | Protocol.
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_DEVWR_ADDRWIDTH
*
* Write address transferred on DQ0. Supported by all SPI flash devices
*/
#define ALT_QSPI_DEVWR_ADDRWIDTH_E_SINGLE 0x0
/*
* Enumerated value for register field ALT_QSPI_DEVWR_ADDRWIDTH
*
* Read address transferred on DQ0 and DQ1. Supported by some SPI flash devices
* that support the Extended SPI Protocol and by all SPI flash devices that support
* the Dual SP (DIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVWR_ADDRWIDTH_E_DUAL 0x1
/*
* Enumerated value for register field ALT_QSPI_DEVWR_ADDRWIDTH
*
* Read address transferred on DQ0, DQ1, DQ2, and DQ3. Supported by some SPI flash
* devices that support the Extended SPI Protocol and by all SPI flash devices that
* support the Quad SP (QIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVWR_ADDRWIDTH_E_QUAD 0x2
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVWR_ADDRWIDTH register field. */
#define ALT_QSPI_DEVWR_ADDRWIDTH_LSB 12
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVWR_ADDRWIDTH register field. */
#define ALT_QSPI_DEVWR_ADDRWIDTH_MSB 13
/* The width in bits of the ALT_QSPI_DEVWR_ADDRWIDTH register field. */
#define ALT_QSPI_DEVWR_ADDRWIDTH_WIDTH 2
/* The mask used to set the ALT_QSPI_DEVWR_ADDRWIDTH register field value. */
#define ALT_QSPI_DEVWR_ADDRWIDTH_SET_MSK 0x00003000
/* The mask used to clear the ALT_QSPI_DEVWR_ADDRWIDTH register field value. */
#define ALT_QSPI_DEVWR_ADDRWIDTH_CLR_MSK 0xffffcfff
/* The reset value of the ALT_QSPI_DEVWR_ADDRWIDTH register field. */
#define ALT_QSPI_DEVWR_ADDRWIDTH_RESET 0x0
/* Extracts the ALT_QSPI_DEVWR_ADDRWIDTH field value from a register. */
#define ALT_QSPI_DEVWR_ADDRWIDTH_GET(value) (((value) & 0x00003000) >> 12)
/* Produces a ALT_QSPI_DEVWR_ADDRWIDTH register field value suitable for setting the register. */
#define ALT_QSPI_DEVWR_ADDRWIDTH_SET(value) (((value) << 12) & 0x00003000)
/*
* Field : Data Transfer Width - datawidth
*
* Sets write data transfer width (1, 2, or 4 bits).
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-------------------------------------------------
* ALT_QSPI_DEVWR_DATAWIDTH_E_SINGLE | 0x0 | Write data transferred on DQ0. Supported by all
* : | | SPI flash devices
* ALT_QSPI_DEVWR_DATAWIDTH_E_DUAL | 0x1 | Read data transferred on DQ0 and DQ1. Supported
* : | | by some SPI flash devices that support the
* : | | Extended SPI Protocol and by all SPI flash
* : | | devices that support the Dual SP (DIO-SPI)
* : | | Protocol.
* ALT_QSPI_DEVWR_DATAWIDTH_E_QUAD | 0x2 | Read data transferred on DQ0, DQ1, DQ2, and DQ3.
* : | | Supported by some SPI flash devices that support
* : | | the Extended SPI Protocol and by all SPI flash
* : | | devices that support the Quad SP (QIO-SPI)
* : | | Protocol.
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_DEVWR_DATAWIDTH
*
* Write data transferred on DQ0. Supported by all SPI flash devices
*/
#define ALT_QSPI_DEVWR_DATAWIDTH_E_SINGLE 0x0
/*
* Enumerated value for register field ALT_QSPI_DEVWR_DATAWIDTH
*
* Read data transferred on DQ0 and DQ1. Supported by some SPI flash devices that
* support the Extended SPI Protocol and by all SPI flash devices that support the
* Dual SP (DIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVWR_DATAWIDTH_E_DUAL 0x1
/*
* Enumerated value for register field ALT_QSPI_DEVWR_DATAWIDTH
*
* Read data transferred on DQ0, DQ1, DQ2, and DQ3. Supported by some SPI flash
* devices that support the Extended SPI Protocol and by all SPI flash devices that
* support the Quad SP (QIO-SPI) Protocol.
*/
#define ALT_QSPI_DEVWR_DATAWIDTH_E_QUAD 0x2
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVWR_DATAWIDTH register field. */
#define ALT_QSPI_DEVWR_DATAWIDTH_LSB 16
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVWR_DATAWIDTH register field. */
#define ALT_QSPI_DEVWR_DATAWIDTH_MSB 17
/* The width in bits of the ALT_QSPI_DEVWR_DATAWIDTH register field. */
#define ALT_QSPI_DEVWR_DATAWIDTH_WIDTH 2
/* The mask used to set the ALT_QSPI_DEVWR_DATAWIDTH register field value. */
#define ALT_QSPI_DEVWR_DATAWIDTH_SET_MSK 0x00030000
/* The mask used to clear the ALT_QSPI_DEVWR_DATAWIDTH register field value. */
#define ALT_QSPI_DEVWR_DATAWIDTH_CLR_MSK 0xfffcffff
/* The reset value of the ALT_QSPI_DEVWR_DATAWIDTH register field. */
#define ALT_QSPI_DEVWR_DATAWIDTH_RESET 0x0
/* Extracts the ALT_QSPI_DEVWR_DATAWIDTH field value from a register. */
#define ALT_QSPI_DEVWR_DATAWIDTH_GET(value) (((value) & 0x00030000) >> 16)
/* Produces a ALT_QSPI_DEVWR_DATAWIDTH register field value suitable for setting the register. */
#define ALT_QSPI_DEVWR_DATAWIDTH_SET(value) (((value) << 16) & 0x00030000)
/*
* Field : Dummy Write Clock Cycles - dummywrclks
*
* Number of dummy clock cycles required by device for write instruction.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVWR_DUMMYWRCLKS register field. */
#define ALT_QSPI_DEVWR_DUMMYWRCLKS_LSB 24
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVWR_DUMMYWRCLKS register field. */
#define ALT_QSPI_DEVWR_DUMMYWRCLKS_MSB 28
/* The width in bits of the ALT_QSPI_DEVWR_DUMMYWRCLKS register field. */
#define ALT_QSPI_DEVWR_DUMMYWRCLKS_WIDTH 5
/* The mask used to set the ALT_QSPI_DEVWR_DUMMYWRCLKS register field value. */
#define ALT_QSPI_DEVWR_DUMMYWRCLKS_SET_MSK 0x1f000000
/* The mask used to clear the ALT_QSPI_DEVWR_DUMMYWRCLKS register field value. */
#define ALT_QSPI_DEVWR_DUMMYWRCLKS_CLR_MSK 0xe0ffffff
/* The reset value of the ALT_QSPI_DEVWR_DUMMYWRCLKS register field. */
#define ALT_QSPI_DEVWR_DUMMYWRCLKS_RESET 0x0
/* Extracts the ALT_QSPI_DEVWR_DUMMYWRCLKS field value from a register. */
#define ALT_QSPI_DEVWR_DUMMYWRCLKS_GET(value) (((value) & 0x1f000000) >> 24)
/* Produces a ALT_QSPI_DEVWR_DUMMYWRCLKS register field value suitable for setting the register. */
#define ALT_QSPI_DEVWR_DUMMYWRCLKS_SET(value) (((value) << 24) & 0x1f000000)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_DEVWR.
*/
struct ALT_QSPI_DEVWR_s
{
uint32_t wropcode : 8; /* Write Opcode */
uint32_t : 4; /* *UNDEFINED* */
uint32_t addrwidth : 2; /* Address Transfer Width */
uint32_t : 2; /* *UNDEFINED* */
uint32_t datawidth : 2; /* Data Transfer Width */
uint32_t : 6; /* *UNDEFINED* */
uint32_t dummywrclks : 5; /* Dummy Write Clock Cycles */
uint32_t : 3; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_DEVWR. */
typedef volatile struct ALT_QSPI_DEVWR_s ALT_QSPI_DEVWR_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_DEVWR register from the beginning of the component. */
#define ALT_QSPI_DEVWR_OFST 0x8
/*
* Register : QSPI Device Delay Register - delay
*
* This register is used to introduce relative delays into the generation of the
* master output signals. All timings are defined in cycles of the qspi_clk.
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:-----------------------------------------
* [7:0] | RW | 0x0 | Clock Delay with qspi_n_ss_out
* [15:8] | RW | 0x0 | Clock Delay for Last Transaction Bit
* [23:16] | RW | 0x0 | Clock Delay for Chip Select Deactivation
* [31:24] | RW | 0x0 | Clock Delay for Chip Select Deassert
*
*/
/*
* Field : Clock Delay with qspi_n_ss_out - init
*
* Delay in master reference clocks between setting qspi_n_ss_out low and first bit
* transfer.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DELAY_INIT register field. */
#define ALT_QSPI_DELAY_INIT_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DELAY_INIT register field. */
#define ALT_QSPI_DELAY_INIT_MSB 7
/* The width in bits of the ALT_QSPI_DELAY_INIT register field. */
#define ALT_QSPI_DELAY_INIT_WIDTH 8
/* The mask used to set the ALT_QSPI_DELAY_INIT register field value. */
#define ALT_QSPI_DELAY_INIT_SET_MSK 0x000000ff
/* The mask used to clear the ALT_QSPI_DELAY_INIT register field value. */
#define ALT_QSPI_DELAY_INIT_CLR_MSK 0xffffff00
/* The reset value of the ALT_QSPI_DELAY_INIT register field. */
#define ALT_QSPI_DELAY_INIT_RESET 0x0
/* Extracts the ALT_QSPI_DELAY_INIT field value from a register. */
#define ALT_QSPI_DELAY_INIT_GET(value) (((value) & 0x000000ff) >> 0)
/* Produces a ALT_QSPI_DELAY_INIT register field value suitable for setting the register. */
#define ALT_QSPI_DELAY_INIT_SET(value) (((value) << 0) & 0x000000ff)
/*
* Field : Clock Delay for Last Transaction Bit - after
*
* Delay in master reference clocks between last bit of current transaction and
* deasserting the device chip select (qspi_n_ss_out). By default, the chip select
* will be deasserted on the cycle following the completion of the current
* transaction.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DELAY_AFTER register field. */
#define ALT_QSPI_DELAY_AFTER_LSB 8
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DELAY_AFTER register field. */
#define ALT_QSPI_DELAY_AFTER_MSB 15
/* The width in bits of the ALT_QSPI_DELAY_AFTER register field. */
#define ALT_QSPI_DELAY_AFTER_WIDTH 8
/* The mask used to set the ALT_QSPI_DELAY_AFTER register field value. */
#define ALT_QSPI_DELAY_AFTER_SET_MSK 0x0000ff00
/* The mask used to clear the ALT_QSPI_DELAY_AFTER register field value. */
#define ALT_QSPI_DELAY_AFTER_CLR_MSK 0xffff00ff
/* The reset value of the ALT_QSPI_DELAY_AFTER register field. */
#define ALT_QSPI_DELAY_AFTER_RESET 0x0
/* Extracts the ALT_QSPI_DELAY_AFTER field value from a register. */
#define ALT_QSPI_DELAY_AFTER_GET(value) (((value) & 0x0000ff00) >> 8)
/* Produces a ALT_QSPI_DELAY_AFTER register field value suitable for setting the register. */
#define ALT_QSPI_DELAY_AFTER_SET(value) (((value) << 8) & 0x0000ff00)
/*
* Field : Clock Delay for Chip Select Deactivation - btwn
*
* Delay in master reference clocks between one chip select being de-activated and
* the activation of another. This is used to ensure a quiet period between the
* selection of two different slaves and requires the transmit FIFO to be empty.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DELAY_BTWN register field. */
#define ALT_QSPI_DELAY_BTWN_LSB 16
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DELAY_BTWN register field. */
#define ALT_QSPI_DELAY_BTWN_MSB 23
/* The width in bits of the ALT_QSPI_DELAY_BTWN register field. */
#define ALT_QSPI_DELAY_BTWN_WIDTH 8
/* The mask used to set the ALT_QSPI_DELAY_BTWN register field value. */
#define ALT_QSPI_DELAY_BTWN_SET_MSK 0x00ff0000
/* The mask used to clear the ALT_QSPI_DELAY_BTWN register field value. */
#define ALT_QSPI_DELAY_BTWN_CLR_MSK 0xff00ffff
/* The reset value of the ALT_QSPI_DELAY_BTWN register field. */
#define ALT_QSPI_DELAY_BTWN_RESET 0x0
/* Extracts the ALT_QSPI_DELAY_BTWN field value from a register. */
#define ALT_QSPI_DELAY_BTWN_GET(value) (((value) & 0x00ff0000) >> 16)
/* Produces a ALT_QSPI_DELAY_BTWN register field value suitable for setting the register. */
#define ALT_QSPI_DELAY_BTWN_SET(value) (((value) << 16) & 0x00ff0000)
/*
* Field : Clock Delay for Chip Select Deassert - nss
*
* Delay in master reference clocks for the length that the master mode chip select
* outputs are de-asserted between transactions. The minimum delay is always
* qspi_sck_out period to ensure the chip select is never re-asserted within an
* qspi_sck_out period.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DELAY_NSS register field. */
#define ALT_QSPI_DELAY_NSS_LSB 24
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DELAY_NSS register field. */
#define ALT_QSPI_DELAY_NSS_MSB 31
/* The width in bits of the ALT_QSPI_DELAY_NSS register field. */
#define ALT_QSPI_DELAY_NSS_WIDTH 8
/* The mask used to set the ALT_QSPI_DELAY_NSS register field value. */
#define ALT_QSPI_DELAY_NSS_SET_MSK 0xff000000
/* The mask used to clear the ALT_QSPI_DELAY_NSS register field value. */
#define ALT_QSPI_DELAY_NSS_CLR_MSK 0x00ffffff
/* The reset value of the ALT_QSPI_DELAY_NSS register field. */
#define ALT_QSPI_DELAY_NSS_RESET 0x0
/* Extracts the ALT_QSPI_DELAY_NSS field value from a register. */
#define ALT_QSPI_DELAY_NSS_GET(value) (((value) & 0xff000000) >> 24)
/* Produces a ALT_QSPI_DELAY_NSS register field value suitable for setting the register. */
#define ALT_QSPI_DELAY_NSS_SET(value) (((value) << 24) & 0xff000000)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_DELAY.
*/
struct ALT_QSPI_DELAY_s
{
uint32_t init : 8; /* Clock Delay with qspi_n_ss_out */
uint32_t after : 8; /* Clock Delay for Last Transaction Bit */
uint32_t btwn : 8; /* Clock Delay for Chip Select Deactivation */
uint32_t nss : 8; /* Clock Delay for Chip Select Deassert */
};
/* The typedef declaration for register ALT_QSPI_DELAY. */
typedef volatile struct ALT_QSPI_DELAY_s ALT_QSPI_DELAY_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_DELAY register from the beginning of the component. */
#define ALT_QSPI_DELAY_OFST 0xc
/*
* Register : Read Data Capture Register - rddatacap
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:------------
* [0] | RW | 0x1 | Bypass
* [4:1] | RW | 0x0 | Read Delay
* [31:5] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Bypass - byp
*
* Controls bypass of the adapted loopback clock circuit
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:------------------------------
* ALT_QSPI_RDDATACAP_BYP_E_NOBYPASS | 0x0 | No Bypass
* ALT_QSPI_RDDATACAP_BYP_E_BYPASS | 0x1 | Bypass loopback clock circuit
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_RDDATACAP_BYP
*
* No Bypass
*/
#define ALT_QSPI_RDDATACAP_BYP_E_NOBYPASS 0x0
/*
* Enumerated value for register field ALT_QSPI_RDDATACAP_BYP
*
* Bypass loopback clock circuit
*/
#define ALT_QSPI_RDDATACAP_BYP_E_BYPASS 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_RDDATACAP_BYP register field. */
#define ALT_QSPI_RDDATACAP_BYP_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_RDDATACAP_BYP register field. */
#define ALT_QSPI_RDDATACAP_BYP_MSB 0
/* The width in bits of the ALT_QSPI_RDDATACAP_BYP register field. */
#define ALT_QSPI_RDDATACAP_BYP_WIDTH 1
/* The mask used to set the ALT_QSPI_RDDATACAP_BYP register field value. */
#define ALT_QSPI_RDDATACAP_BYP_SET_MSK 0x00000001
/* The mask used to clear the ALT_QSPI_RDDATACAP_BYP register field value. */
#define ALT_QSPI_RDDATACAP_BYP_CLR_MSK 0xfffffffe
/* The reset value of the ALT_QSPI_RDDATACAP_BYP register field. */
#define ALT_QSPI_RDDATACAP_BYP_RESET 0x1
/* Extracts the ALT_QSPI_RDDATACAP_BYP field value from a register. */
#define ALT_QSPI_RDDATACAP_BYP_GET(value) (((value) & 0x00000001) >> 0)
/* Produces a ALT_QSPI_RDDATACAP_BYP register field value suitable for setting the register. */
#define ALT_QSPI_RDDATACAP_BYP_SET(value) (((value) << 0) & 0x00000001)
/*
* Field : Read Delay - delay
*
* Delay the read data capturing logic by the programmed number of qspi_clk cycles
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_RDDATACAP_DELAY register field. */
#define ALT_QSPI_RDDATACAP_DELAY_LSB 1
/* The Most Significant Bit (MSB) position of the ALT_QSPI_RDDATACAP_DELAY register field. */
#define ALT_QSPI_RDDATACAP_DELAY_MSB 4
/* The width in bits of the ALT_QSPI_RDDATACAP_DELAY register field. */
#define ALT_QSPI_RDDATACAP_DELAY_WIDTH 4
/* The mask used to set the ALT_QSPI_RDDATACAP_DELAY register field value. */
#define ALT_QSPI_RDDATACAP_DELAY_SET_MSK 0x0000001e
/* The mask used to clear the ALT_QSPI_RDDATACAP_DELAY register field value. */
#define ALT_QSPI_RDDATACAP_DELAY_CLR_MSK 0xffffffe1
/* The reset value of the ALT_QSPI_RDDATACAP_DELAY register field. */
#define ALT_QSPI_RDDATACAP_DELAY_RESET 0x0
/* Extracts the ALT_QSPI_RDDATACAP_DELAY field value from a register. */
#define ALT_QSPI_RDDATACAP_DELAY_GET(value) (((value) & 0x0000001e) >> 1)
/* Produces a ALT_QSPI_RDDATACAP_DELAY register field value suitable for setting the register. */
#define ALT_QSPI_RDDATACAP_DELAY_SET(value) (((value) << 1) & 0x0000001e)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_RDDATACAP.
*/
struct ALT_QSPI_RDDATACAP_s
{
uint32_t byp : 1; /* Bypass */
uint32_t delay : 4; /* Read Delay */
uint32_t : 27; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_RDDATACAP. */
typedef volatile struct ALT_QSPI_RDDATACAP_s ALT_QSPI_RDDATACAP_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_RDDATACAP register from the beginning of the component. */
#define ALT_QSPI_RDDATACAP_OFST 0x10
/*
* Register : Device Size Register - devsz
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:--------------------------------
* [3:0] | RW | 0x2 | Number of address Bytes
* [15:4] | RW | 0x100 | Number of Bytes per Device Page
* [20:16] | RW | 0x10 | Number of Bytes per Block
* [31:21] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Number of address Bytes - numaddrbytes
*
* Number of address bytes. A value of 0 indicates 1 byte.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVSZ_NUMADDRBYTES register field. */
#define ALT_QSPI_DEVSZ_NUMADDRBYTES_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVSZ_NUMADDRBYTES register field. */
#define ALT_QSPI_DEVSZ_NUMADDRBYTES_MSB 3
/* The width in bits of the ALT_QSPI_DEVSZ_NUMADDRBYTES register field. */
#define ALT_QSPI_DEVSZ_NUMADDRBYTES_WIDTH 4
/* The mask used to set the ALT_QSPI_DEVSZ_NUMADDRBYTES register field value. */
#define ALT_QSPI_DEVSZ_NUMADDRBYTES_SET_MSK 0x0000000f
/* The mask used to clear the ALT_QSPI_DEVSZ_NUMADDRBYTES register field value. */
#define ALT_QSPI_DEVSZ_NUMADDRBYTES_CLR_MSK 0xfffffff0
/* The reset value of the ALT_QSPI_DEVSZ_NUMADDRBYTES register field. */
#define ALT_QSPI_DEVSZ_NUMADDRBYTES_RESET 0x2
/* Extracts the ALT_QSPI_DEVSZ_NUMADDRBYTES field value from a register. */
#define ALT_QSPI_DEVSZ_NUMADDRBYTES_GET(value) (((value) & 0x0000000f) >> 0)
/* Produces a ALT_QSPI_DEVSZ_NUMADDRBYTES register field value suitable for setting the register. */
#define ALT_QSPI_DEVSZ_NUMADDRBYTES_SET(value) (((value) << 0) & 0x0000000f)
/*
* Field : Number of Bytes per Device Page - bytesperdevicepage
*
* Number of bytes per device page. This is required by the controller for
* performing FLASH writes up to and across page boundaries.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE register field. */
#define ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE_LSB 4
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE register field. */
#define ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE_MSB 15
/* The width in bits of the ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE register field. */
#define ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE_WIDTH 12
/* The mask used to set the ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE register field value. */
#define ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE_SET_MSK 0x0000fff0
/* The mask used to clear the ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE register field value. */
#define ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE_CLR_MSK 0xffff000f
/* The reset value of the ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE register field. */
#define ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE_RESET 0x100
/* Extracts the ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE field value from a register. */
#define ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE_GET(value) (((value) & 0x0000fff0) >> 4)
/* Produces a ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE register field value suitable for setting the register. */
#define ALT_QSPI_DEVSZ_BYTESPERDEVICEPAGE_SET(value) (((value) << 4) & 0x0000fff0)
/*
* Field : Number of Bytes per Block - bytespersubsector
*
* Number of bytes per Block. This is required by the controller for performing the
* write protection logic. The number of bytes per block must be a power of 2
* number.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR register field. */
#define ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR_LSB 16
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR register field. */
#define ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR_MSB 20
/* The width in bits of the ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR register field. */
#define ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR_WIDTH 5
/* The mask used to set the ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR register field value. */
#define ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR_SET_MSK 0x001f0000
/* The mask used to clear the ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR register field value. */
#define ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR_CLR_MSK 0xffe0ffff
/* The reset value of the ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR register field. */
#define ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR_RESET 0x10
/* Extracts the ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR field value from a register. */
#define ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR_GET(value) (((value) & 0x001f0000) >> 16)
/* Produces a ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR register field value suitable for setting the register. */
#define ALT_QSPI_DEVSZ_BYTESPERSUBSECTOR_SET(value) (((value) << 16) & 0x001f0000)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_DEVSZ.
*/
struct ALT_QSPI_DEVSZ_s
{
uint32_t numaddrbytes : 4; /* Number of address Bytes */
uint32_t bytesperdevicepage : 12; /* Number of Bytes per Device Page */
uint32_t bytespersubsector : 5; /* Number of Bytes per Block */
uint32_t : 11; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_DEVSZ. */
typedef volatile struct ALT_QSPI_DEVSZ_s ALT_QSPI_DEVSZ_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_DEVSZ register from the beginning of the component. */
#define ALT_QSPI_DEVSZ_OFST 0x14
/*
* Register : SRAM Partition Register - srampart
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:-----------------------------
* [6:0] | RW | 0x40 | Indirect Read Partition Size
* [31:7] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Indirect Read Partition Size - addr
*
* Defines the size of the indirect read partition in the SRAM, in units of SRAM
* locations. By default, half of the SRAM is reserved for indirect read operations
* and half for indirect write operations.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_SRAMPART_ADDR register field. */
#define ALT_QSPI_SRAMPART_ADDR_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_SRAMPART_ADDR register field. */
#define ALT_QSPI_SRAMPART_ADDR_MSB 6
/* The width in bits of the ALT_QSPI_SRAMPART_ADDR register field. */
#define ALT_QSPI_SRAMPART_ADDR_WIDTH 7
/* The mask used to set the ALT_QSPI_SRAMPART_ADDR register field value. */
#define ALT_QSPI_SRAMPART_ADDR_SET_MSK 0x0000007f
/* The mask used to clear the ALT_QSPI_SRAMPART_ADDR register field value. */
#define ALT_QSPI_SRAMPART_ADDR_CLR_MSK 0xffffff80
/* The reset value of the ALT_QSPI_SRAMPART_ADDR register field. */
#define ALT_QSPI_SRAMPART_ADDR_RESET 0x40
/* Extracts the ALT_QSPI_SRAMPART_ADDR field value from a register. */
#define ALT_QSPI_SRAMPART_ADDR_GET(value) (((value) & 0x0000007f) >> 0)
/* Produces a ALT_QSPI_SRAMPART_ADDR register field value suitable for setting the register. */
#define ALT_QSPI_SRAMPART_ADDR_SET(value) (((value) << 0) & 0x0000007f)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_SRAMPART.
*/
struct ALT_QSPI_SRAMPART_s
{
uint32_t addr : 7; /* Indirect Read Partition Size */
uint32_t : 25; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_SRAMPART. */
typedef volatile struct ALT_QSPI_SRAMPART_s ALT_QSPI_SRAMPART_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_SRAMPART register from the beginning of the component. */
#define ALT_QSPI_SRAMPART_OFST 0x18
/*
* Register : Indirect AHB Address Trigger Register - indaddrtrig
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:----------------
* [31:0] | RW | 0x0 | Trigger Address
*
*/
/*
* Field : Trigger Address - addr
*
* This is the base address that will be used by the AHB controller. When the
* incoming AHB read access address matches a range of addresses from this trigger
* address to the trigger address + 15, then the AHB request will be completed by
* fetching data from the Indirect Controllers SRAM.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDADDRTRIG_ADDR register field. */
#define ALT_QSPI_INDADDRTRIG_ADDR_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDADDRTRIG_ADDR register field. */
#define ALT_QSPI_INDADDRTRIG_ADDR_MSB 31
/* The width in bits of the ALT_QSPI_INDADDRTRIG_ADDR register field. */
#define ALT_QSPI_INDADDRTRIG_ADDR_WIDTH 32
/* The mask used to set the ALT_QSPI_INDADDRTRIG_ADDR register field value. */
#define ALT_QSPI_INDADDRTRIG_ADDR_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_INDADDRTRIG_ADDR register field value. */
#define ALT_QSPI_INDADDRTRIG_ADDR_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_INDADDRTRIG_ADDR register field. */
#define ALT_QSPI_INDADDRTRIG_ADDR_RESET 0x0
/* Extracts the ALT_QSPI_INDADDRTRIG_ADDR field value from a register. */
#define ALT_QSPI_INDADDRTRIG_ADDR_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_INDADDRTRIG_ADDR register field value suitable for setting the register. */
#define ALT_QSPI_INDADDRTRIG_ADDR_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_INDADDRTRIG.
*/
struct ALT_QSPI_INDADDRTRIG_s
{
uint32_t addr : 32; /* Trigger Address */
};
/* The typedef declaration for register ALT_QSPI_INDADDRTRIG. */
typedef volatile struct ALT_QSPI_INDADDRTRIG_s ALT_QSPI_INDADDRTRIG_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_INDADDRTRIG register from the beginning of the component. */
#define ALT_QSPI_INDADDRTRIG_OFST 0x1c
/*
* Register : DMA Peripheral Register - dmaper
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:-----------------------
* [3:0] | RW | 0x0 | Number of Single Bytes
* [7:4] | ??? | 0x0 | *UNDEFINED*
* [11:8] | RW | 0x0 | Number of Burst Bytes
* [31:12] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Number of Single Bytes - numsglreqbytes
*
* Number of bytes in a single type request on the DMA peripheral request. A
* programmed value of 0 represents a single byte. This should be setup before
* starting the indirect read or write operation. The actual number of bytes used
* is 2**(value in this register) which will simplify implementation.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DMAPER_NUMSGLREQBYTES register field. */
#define ALT_QSPI_DMAPER_NUMSGLREQBYTES_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DMAPER_NUMSGLREQBYTES register field. */
#define ALT_QSPI_DMAPER_NUMSGLREQBYTES_MSB 3
/* The width in bits of the ALT_QSPI_DMAPER_NUMSGLREQBYTES register field. */
#define ALT_QSPI_DMAPER_NUMSGLREQBYTES_WIDTH 4
/* The mask used to set the ALT_QSPI_DMAPER_NUMSGLREQBYTES register field value. */
#define ALT_QSPI_DMAPER_NUMSGLREQBYTES_SET_MSK 0x0000000f
/* The mask used to clear the ALT_QSPI_DMAPER_NUMSGLREQBYTES register field value. */
#define ALT_QSPI_DMAPER_NUMSGLREQBYTES_CLR_MSK 0xfffffff0
/* The reset value of the ALT_QSPI_DMAPER_NUMSGLREQBYTES register field. */
#define ALT_QSPI_DMAPER_NUMSGLREQBYTES_RESET 0x0
/* Extracts the ALT_QSPI_DMAPER_NUMSGLREQBYTES field value from a register. */
#define ALT_QSPI_DMAPER_NUMSGLREQBYTES_GET(value) (((value) & 0x0000000f) >> 0)
/* Produces a ALT_QSPI_DMAPER_NUMSGLREQBYTES register field value suitable for setting the register. */
#define ALT_QSPI_DMAPER_NUMSGLREQBYTES_SET(value) (((value) << 0) & 0x0000000f)
/*
* Field : Number of Burst Bytes - numburstreqbytes
*
* Number of bytes in a burst type request on the DMA peripheral request. A
* programmed value of 0 represents a single byte. This should be setup before
* starting the indirect read or write operation. The actual number of bytes used
* is 2**(value in this register) which will simplify implementation.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_DMAPER_NUMBURSTREQBYTES register field. */
#define ALT_QSPI_DMAPER_NUMBURSTREQBYTES_LSB 8
/* The Most Significant Bit (MSB) position of the ALT_QSPI_DMAPER_NUMBURSTREQBYTES register field. */
#define ALT_QSPI_DMAPER_NUMBURSTREQBYTES_MSB 11
/* The width in bits of the ALT_QSPI_DMAPER_NUMBURSTREQBYTES register field. */
#define ALT_QSPI_DMAPER_NUMBURSTREQBYTES_WIDTH 4
/* The mask used to set the ALT_QSPI_DMAPER_NUMBURSTREQBYTES register field value. */
#define ALT_QSPI_DMAPER_NUMBURSTREQBYTES_SET_MSK 0x00000f00
/* The mask used to clear the ALT_QSPI_DMAPER_NUMBURSTREQBYTES register field value. */
#define ALT_QSPI_DMAPER_NUMBURSTREQBYTES_CLR_MSK 0xfffff0ff
/* The reset value of the ALT_QSPI_DMAPER_NUMBURSTREQBYTES register field. */
#define ALT_QSPI_DMAPER_NUMBURSTREQBYTES_RESET 0x0
/* Extracts the ALT_QSPI_DMAPER_NUMBURSTREQBYTES field value from a register. */
#define ALT_QSPI_DMAPER_NUMBURSTREQBYTES_GET(value) (((value) & 0x00000f00) >> 8)
/* Produces a ALT_QSPI_DMAPER_NUMBURSTREQBYTES register field value suitable for setting the register. */
#define ALT_QSPI_DMAPER_NUMBURSTREQBYTES_SET(value) (((value) << 8) & 0x00000f00)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_DMAPER.
*/
struct ALT_QSPI_DMAPER_s
{
uint32_t numsglreqbytes : 4; /* Number of Single Bytes */
uint32_t : 4; /* *UNDEFINED* */
uint32_t numburstreqbytes : 4; /* Number of Burst Bytes */
uint32_t : 20; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_DMAPER. */
typedef volatile struct ALT_QSPI_DMAPER_s ALT_QSPI_DMAPER_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_DMAPER register from the beginning of the component. */
#define ALT_QSPI_DMAPER_OFST 0x20
/*
* Register : Remap Address Register - remapaddr
*
* This register is used to remap an incoming AHB address to a different address
* used by the FLASH device.
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:---------------------
* [31:0] | RW | 0x0 | Remap Address Offset
*
*/
/*
* Field : Remap Address Offset - value
*
* This offset is added to the incoming AHB address to determine the address used
* by the FLASH device.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_REMAPADDR_VALUE register field. */
#define ALT_QSPI_REMAPADDR_VALUE_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_REMAPADDR_VALUE register field. */
#define ALT_QSPI_REMAPADDR_VALUE_MSB 31
/* The width in bits of the ALT_QSPI_REMAPADDR_VALUE register field. */
#define ALT_QSPI_REMAPADDR_VALUE_WIDTH 32
/* The mask used to set the ALT_QSPI_REMAPADDR_VALUE register field value. */
#define ALT_QSPI_REMAPADDR_VALUE_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_REMAPADDR_VALUE register field value. */
#define ALT_QSPI_REMAPADDR_VALUE_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_REMAPADDR_VALUE register field. */
#define ALT_QSPI_REMAPADDR_VALUE_RESET 0x0
/* Extracts the ALT_QSPI_REMAPADDR_VALUE field value from a register. */
#define ALT_QSPI_REMAPADDR_VALUE_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_REMAPADDR_VALUE register field value suitable for setting the register. */
#define ALT_QSPI_REMAPADDR_VALUE_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_REMAPADDR.
*/
struct ALT_QSPI_REMAPADDR_s
{
uint32_t value : 32; /* Remap Address Offset */
};
/* The typedef declaration for register ALT_QSPI_REMAPADDR. */
typedef volatile struct ALT_QSPI_REMAPADDR_s ALT_QSPI_REMAPADDR_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_REMAPADDR register from the beginning of the component. */
#define ALT_QSPI_REMAPADDR_OFST 0x24
/*
* Register : Mode Bit Register - modebit
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:------------
* [7:0] | RW | 0x0 | Mode
* [31:8] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Mode - mode
*
* These are the 8 mode bits that are sent to the device following the address
* bytes if mode bit transmission has been enabled.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_MODBIT_MOD register field. */
#define ALT_QSPI_MODBIT_MOD_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_MODBIT_MOD register field. */
#define ALT_QSPI_MODBIT_MOD_MSB 7
/* The width in bits of the ALT_QSPI_MODBIT_MOD register field. */
#define ALT_QSPI_MODBIT_MOD_WIDTH 8
/* The mask used to set the ALT_QSPI_MODBIT_MOD register field value. */
#define ALT_QSPI_MODBIT_MOD_SET_MSK 0x000000ff
/* The mask used to clear the ALT_QSPI_MODBIT_MOD register field value. */
#define ALT_QSPI_MODBIT_MOD_CLR_MSK 0xffffff00
/* The reset value of the ALT_QSPI_MODBIT_MOD register field. */
#define ALT_QSPI_MODBIT_MOD_RESET 0x0
/* Extracts the ALT_QSPI_MODBIT_MOD field value from a register. */
#define ALT_QSPI_MODBIT_MOD_GET(value) (((value) & 0x000000ff) >> 0)
/* Produces a ALT_QSPI_MODBIT_MOD register field value suitable for setting the register. */
#define ALT_QSPI_MODBIT_MOD_SET(value) (((value) << 0) & 0x000000ff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_MODBIT.
*/
struct ALT_QSPI_MODBIT_s
{
uint32_t mode : 8; /* Mode */
uint32_t : 24; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_MODBIT. */
typedef volatile struct ALT_QSPI_MODBIT_s ALT_QSPI_MODBIT_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_MODBIT register from the beginning of the component. */
#define ALT_QSPI_MODBIT_OFST 0x28
/*
* Register : SRAM Fill Register - sramfill
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:-------------------------------------------------------------------
* [15:0] | R | 0x0 | SRAM Fill Level (Indirect Read Partition). In units of SRAM WORDS
* [31:16] | R | 0x0 | SRAM Fill Level (Indirect Write Partition). In units of SRAM WORDS
*
*/
/*
* Field : SRAM Fill Level (Indirect Read Partition). In units of SRAM WORDS - indrdpart
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_SRAMFILL_INDRDPART register field. */
#define ALT_QSPI_SRAMFILL_INDRDPART_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_SRAMFILL_INDRDPART register field. */
#define ALT_QSPI_SRAMFILL_INDRDPART_MSB 15
/* The width in bits of the ALT_QSPI_SRAMFILL_INDRDPART register field. */
#define ALT_QSPI_SRAMFILL_INDRDPART_WIDTH 16
/* The mask used to set the ALT_QSPI_SRAMFILL_INDRDPART register field value. */
#define ALT_QSPI_SRAMFILL_INDRDPART_SET_MSK 0x0000ffff
/* The mask used to clear the ALT_QSPI_SRAMFILL_INDRDPART register field value. */
#define ALT_QSPI_SRAMFILL_INDRDPART_CLR_MSK 0xffff0000
/* The reset value of the ALT_QSPI_SRAMFILL_INDRDPART register field. */
#define ALT_QSPI_SRAMFILL_INDRDPART_RESET 0x0
/* Extracts the ALT_QSPI_SRAMFILL_INDRDPART field value from a register. */
#define ALT_QSPI_SRAMFILL_INDRDPART_GET(value) (((value) & 0x0000ffff) >> 0)
/* Produces a ALT_QSPI_SRAMFILL_INDRDPART register field value suitable for setting the register. */
#define ALT_QSPI_SRAMFILL_INDRDPART_SET(value) (((value) << 0) & 0x0000ffff)
/*
* Field : SRAM Fill Level (Indirect Write Partition). In units of SRAM WORDS - indwrpart
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_SRAMFILL_INDWRPART register field. */
#define ALT_QSPI_SRAMFILL_INDWRPART_LSB 16
/* The Most Significant Bit (MSB) position of the ALT_QSPI_SRAMFILL_INDWRPART register field. */
#define ALT_QSPI_SRAMFILL_INDWRPART_MSB 31
/* The width in bits of the ALT_QSPI_SRAMFILL_INDWRPART register field. */
#define ALT_QSPI_SRAMFILL_INDWRPART_WIDTH 16
/* The mask used to set the ALT_QSPI_SRAMFILL_INDWRPART register field value. */
#define ALT_QSPI_SRAMFILL_INDWRPART_SET_MSK 0xffff0000
/* The mask used to clear the ALT_QSPI_SRAMFILL_INDWRPART register field value. */
#define ALT_QSPI_SRAMFILL_INDWRPART_CLR_MSK 0x0000ffff
/* The reset value of the ALT_QSPI_SRAMFILL_INDWRPART register field. */
#define ALT_QSPI_SRAMFILL_INDWRPART_RESET 0x0
/* Extracts the ALT_QSPI_SRAMFILL_INDWRPART field value from a register. */
#define ALT_QSPI_SRAMFILL_INDWRPART_GET(value) (((value) & 0xffff0000) >> 16)
/* Produces a ALT_QSPI_SRAMFILL_INDWRPART register field value suitable for setting the register. */
#define ALT_QSPI_SRAMFILL_INDWRPART_SET(value) (((value) << 16) & 0xffff0000)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_SRAMFILL.
*/
struct ALT_QSPI_SRAMFILL_s
{
const uint32_t indrdpart : 16; /* SRAM Fill Level (Indirect Read Partition). In units of SRAM WORDS */
const uint32_t indwrpart : 16; /* SRAM Fill Level (Indirect Write Partition). In units of SRAM WORDS */
};
/* The typedef declaration for register ALT_QSPI_SRAMFILL. */
typedef volatile struct ALT_QSPI_SRAMFILL_s ALT_QSPI_SRAMFILL_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_SRAMFILL register from the beginning of the component. */
#define ALT_QSPI_SRAMFILL_OFST 0x2c
/*
* Register : TX Threshold Register - txthresh
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:------------
* [3:0] | RW | 0x1 | Level
* [31:4] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Level - level
*
* Defines the level at which the transmit FIFO not full interrupt is generated
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_TXTHRESH_LEVEL register field. */
#define ALT_QSPI_TXTHRESH_LEVEL_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_TXTHRESH_LEVEL register field. */
#define ALT_QSPI_TXTHRESH_LEVEL_MSB 3
/* The width in bits of the ALT_QSPI_TXTHRESH_LEVEL register field. */
#define ALT_QSPI_TXTHRESH_LEVEL_WIDTH 4
/* The mask used to set the ALT_QSPI_TXTHRESH_LEVEL register field value. */
#define ALT_QSPI_TXTHRESH_LEVEL_SET_MSK 0x0000000f
/* The mask used to clear the ALT_QSPI_TXTHRESH_LEVEL register field value. */
#define ALT_QSPI_TXTHRESH_LEVEL_CLR_MSK 0xfffffff0
/* The reset value of the ALT_QSPI_TXTHRESH_LEVEL register field. */
#define ALT_QSPI_TXTHRESH_LEVEL_RESET 0x1
/* Extracts the ALT_QSPI_TXTHRESH_LEVEL field value from a register. */
#define ALT_QSPI_TXTHRESH_LEVEL_GET(value) (((value) & 0x0000000f) >> 0)
/* Produces a ALT_QSPI_TXTHRESH_LEVEL register field value suitable for setting the register. */
#define ALT_QSPI_TXTHRESH_LEVEL_SET(value) (((value) << 0) & 0x0000000f)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_TXTHRESH.
*/
struct ALT_QSPI_TXTHRESH_s
{
uint32_t level : 4; /* Level */
uint32_t : 28; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_TXTHRESH. */
typedef volatile struct ALT_QSPI_TXTHRESH_s ALT_QSPI_TXTHRESH_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_TXTHRESH register from the beginning of the component. */
#define ALT_QSPI_TXTHRESH_OFST 0x30
/*
* Register : RX Threshold Register - rxthresh
*
* Device Instruction Register
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:------------
* [3:0] | RW | 0x1 | Level
* [31:4] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Level - level
*
* Defines the level at which the receive FIFO not empty interrupt is generated
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_RXTHRESH_LEVEL register field. */
#define ALT_QSPI_RXTHRESH_LEVEL_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_RXTHRESH_LEVEL register field. */
#define ALT_QSPI_RXTHRESH_LEVEL_MSB 3
/* The width in bits of the ALT_QSPI_RXTHRESH_LEVEL register field. */
#define ALT_QSPI_RXTHRESH_LEVEL_WIDTH 4
/* The mask used to set the ALT_QSPI_RXTHRESH_LEVEL register field value. */
#define ALT_QSPI_RXTHRESH_LEVEL_SET_MSK 0x0000000f
/* The mask used to clear the ALT_QSPI_RXTHRESH_LEVEL register field value. */
#define ALT_QSPI_RXTHRESH_LEVEL_CLR_MSK 0xfffffff0
/* The reset value of the ALT_QSPI_RXTHRESH_LEVEL register field. */
#define ALT_QSPI_RXTHRESH_LEVEL_RESET 0x1
/* Extracts the ALT_QSPI_RXTHRESH_LEVEL field value from a register. */
#define ALT_QSPI_RXTHRESH_LEVEL_GET(value) (((value) & 0x0000000f) >> 0)
/* Produces a ALT_QSPI_RXTHRESH_LEVEL register field value suitable for setting the register. */
#define ALT_QSPI_RXTHRESH_LEVEL_SET(value) (((value) << 0) & 0x0000000f)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_RXTHRESH.
*/
struct ALT_QSPI_RXTHRESH_s
{
uint32_t level : 4; /* Level */
uint32_t : 28; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_RXTHRESH. */
typedef volatile struct ALT_QSPI_RXTHRESH_s ALT_QSPI_RXTHRESH_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_RXTHRESH register from the beginning of the component. */
#define ALT_QSPI_RXTHRESH_OFST 0x34
/*
* Register : Interrupt Status Register - irqstat
*
* The status fields in this register are set when the described event occurs and
* the interrupt is enabled in the mask register. When any of these bit fields are
* set, the interrupt output is asserted high. The fields are each cleared by
* writing a 1 to the field. Note that bit fields 7 thru 11 are only valid when
* legacy SPI mode is active.
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:------------------------------------
* [0] | ??? | 0x0 | *UNDEFINED*
* [1] | RW | 0x0 | Underflow Detected
* [2] | RW | 0x0 | Indirect Operation Complete
* [3] | RW | 0x0 | Indirect Read Reject
* [4] | RW | 0x0 | Protected Area Write Attempt
* [5] | RW | 0x0 | Illegal AHB Access Detected
* [6] | RW | 0x0 | Transfer Watermark Reached
* [7] | RW | 0x0 | Receive Overflow
* [8] | RW | 0x1 | Transmit FIFO Compared to Threshold
* [9] | RW | 0x0 | Transmit FIFO Full
* [10] | RW | 0x0 | Receive FIFO Compared to Threshold
* [11] | RW | 0x0 | Receive FIFO Full
* [12] | RW | 0x0 | Indirect Read Partition overflow
* [31:13] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Underflow Detected - underflowdet
*
* An underflow is detected when an attempt to transfer data is made when the
* transmit FIFO is empty. This may occur when the AHB write data is being supplied
* too slowly to keep up with the requested write operation. This bit is reset only
* by a system reset and cleared only when the register is read.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :--------------------------------------------|:------|:-------------
* ALT_QSPI_IRQSTAT_UNDERFLOWDET_E_UNDERFLOW | 0x1 | Underflow
* ALT_QSPI_IRQSTAT_UNDERFLOWDET_E_NOUNDERFLOW | 0x0 | No Underflow
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_UNDERFLOWDET
*
* Underflow
*/
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_E_UNDERFLOW 0x1
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_UNDERFLOWDET
*
* No Underflow
*/
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_E_NOUNDERFLOW 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_UNDERFLOWDET register field. */
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_LSB 1
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_UNDERFLOWDET register field. */
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_MSB 1
/* The width in bits of the ALT_QSPI_IRQSTAT_UNDERFLOWDET register field. */
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_UNDERFLOWDET register field value. */
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_SET_MSK 0x00000002
/* The mask used to clear the ALT_QSPI_IRQSTAT_UNDERFLOWDET register field value. */
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_CLR_MSK 0xfffffffd
/* The reset value of the ALT_QSPI_IRQSTAT_UNDERFLOWDET register field. */
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_UNDERFLOWDET field value from a register. */
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_GET(value) (((value) & 0x00000002) >> 1)
/* Produces a ALT_QSPI_IRQSTAT_UNDERFLOWDET register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_UNDERFLOWDET_SET(value) (((value) << 1) & 0x00000002)
/*
* Field : Indirect Operation Complete - indopdone
*
* Controller has completed last triggered indirect operation
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQSTAT_INDOPDONE_E_INDIRECTOP | 0x1 | Completed Indirect Operation
* ALT_QSPI_IRQSTAT_INDOPDONE_E_NOINDIRECTOP | 0x0 | No Indirect Operation
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_INDOPDONE
*
* Completed Indirect Operation
*/
#define ALT_QSPI_IRQSTAT_INDOPDONE_E_INDIRECTOP 0x1
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_INDOPDONE
*
* No Indirect Operation
*/
#define ALT_QSPI_IRQSTAT_INDOPDONE_E_NOINDIRECTOP 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_INDOPDONE register field. */
#define ALT_QSPI_IRQSTAT_INDOPDONE_LSB 2
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_INDOPDONE register field. */
#define ALT_QSPI_IRQSTAT_INDOPDONE_MSB 2
/* The width in bits of the ALT_QSPI_IRQSTAT_INDOPDONE register field. */
#define ALT_QSPI_IRQSTAT_INDOPDONE_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_INDOPDONE register field value. */
#define ALT_QSPI_IRQSTAT_INDOPDONE_SET_MSK 0x00000004
/* The mask used to clear the ALT_QSPI_IRQSTAT_INDOPDONE register field value. */
#define ALT_QSPI_IRQSTAT_INDOPDONE_CLR_MSK 0xfffffffb
/* The reset value of the ALT_QSPI_IRQSTAT_INDOPDONE register field. */
#define ALT_QSPI_IRQSTAT_INDOPDONE_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_INDOPDONE field value from a register. */
#define ALT_QSPI_IRQSTAT_INDOPDONE_GET(value) (((value) & 0x00000004) >> 2)
/* Produces a ALT_QSPI_IRQSTAT_INDOPDONE register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_INDOPDONE_SET(value) (((value) << 2) & 0x00000004)
/*
* Field : Indirect Read Reject - indrdreject
*
* Indirect operation was requested but could not be accepted. Two indirect
* operations already in storage.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQSTAT_INDRDREJECT_E_INDIRECTREQ | 0x1 | Indirect Operation Requested
* ALT_QSPI_IRQSTAT_INDRDREJECT_E_NOINDIRECTREQ | 0x0 | No Indirect Operation
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_INDRDREJECT
*
* Indirect Operation Requested
*/
#define ALT_QSPI_IRQSTAT_INDRDREJECT_E_INDIRECTREQ 0x1
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_INDRDREJECT
*
* No Indirect Operation
*/
#define ALT_QSPI_IRQSTAT_INDRDREJECT_E_NOINDIRECTREQ 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_INDRDREJECT register field. */
#define ALT_QSPI_IRQSTAT_INDRDREJECT_LSB 3
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_INDRDREJECT register field. */
#define ALT_QSPI_IRQSTAT_INDRDREJECT_MSB 3
/* The width in bits of the ALT_QSPI_IRQSTAT_INDRDREJECT register field. */
#define ALT_QSPI_IRQSTAT_INDRDREJECT_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_INDRDREJECT register field value. */
#define ALT_QSPI_IRQSTAT_INDRDREJECT_SET_MSK 0x00000008
/* The mask used to clear the ALT_QSPI_IRQSTAT_INDRDREJECT register field value. */
#define ALT_QSPI_IRQSTAT_INDRDREJECT_CLR_MSK 0xfffffff7
/* The reset value of the ALT_QSPI_IRQSTAT_INDRDREJECT register field. */
#define ALT_QSPI_IRQSTAT_INDRDREJECT_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_INDRDREJECT field value from a register. */
#define ALT_QSPI_IRQSTAT_INDRDREJECT_GET(value) (((value) & 0x00000008) >> 3)
/* Produces a ALT_QSPI_IRQSTAT_INDRDREJECT register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_INDRDREJECT_SET(value) (((value) << 3) & 0x00000008)
/*
* Field : Protected Area Write Attempt - protwrattempt
*
* Write to protected area was attempted and rejected.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------------------|:------|:--------------------------------
* ALT_QSPI_IRQSTAT_PROTWRATTEMPT_E_WRPROT | 0x1 | Write Attempt to protected area
* ALT_QSPI_IRQSTAT_PROTWRATTEMPT_E_NOWRPROT | 0x0 | No Write Attempt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_PROTWRATTEMPT
*
* Write Attempt to protected area
*/
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_E_WRPROT 0x1
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_PROTWRATTEMPT
*
* No Write Attempt
*/
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_E_NOWRPROT 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_PROTWRATTEMPT register field. */
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_LSB 4
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_PROTWRATTEMPT register field. */
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_MSB 4
/* The width in bits of the ALT_QSPI_IRQSTAT_PROTWRATTEMPT register field. */
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_PROTWRATTEMPT register field value. */
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_SET_MSK 0x00000010
/* The mask used to clear the ALT_QSPI_IRQSTAT_PROTWRATTEMPT register field value. */
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_CLR_MSK 0xffffffef
/* The reset value of the ALT_QSPI_IRQSTAT_PROTWRATTEMPT register field. */
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_PROTWRATTEMPT field value from a register. */
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_GET(value) (((value) & 0x00000010) >> 4)
/* Produces a ALT_QSPI_IRQSTAT_PROTWRATTEMPT register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_PROTWRATTEMPT_SET(value) (((value) << 4) & 0x00000010)
/*
* Field : Illegal AHB Access Detected - illegalacc
*
* Illegal AHB access has been detected. AHB wrapping bursts and the use of
* SPLIT/RETRY accesses will cause this error interrupt to trigger.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-------------------------------------------|:------|:-----------------------
* ALT_QSPI_IRQSTAT_ILLEGALACC_E_ILLEGALAHB | 0x1 | Illegal AHB attempt
* ALT_QSPI_IRQSTAT_ILLEGALACC_E_NOILLEGALAHB | 0x0 | No Illegal AHB attempt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_ILLEGALACC
*
* Illegal AHB attempt
*/
#define ALT_QSPI_IRQSTAT_ILLEGALACC_E_ILLEGALAHB 0x1
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_ILLEGALACC
*
* No Illegal AHB attempt
*/
#define ALT_QSPI_IRQSTAT_ILLEGALACC_E_NOILLEGALAHB 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_ILLEGALACC register field. */
#define ALT_QSPI_IRQSTAT_ILLEGALACC_LSB 5
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_ILLEGALACC register field. */
#define ALT_QSPI_IRQSTAT_ILLEGALACC_MSB 5
/* The width in bits of the ALT_QSPI_IRQSTAT_ILLEGALACC register field. */
#define ALT_QSPI_IRQSTAT_ILLEGALACC_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_ILLEGALACC register field value. */
#define ALT_QSPI_IRQSTAT_ILLEGALACC_SET_MSK 0x00000020
/* The mask used to clear the ALT_QSPI_IRQSTAT_ILLEGALACC register field value. */
#define ALT_QSPI_IRQSTAT_ILLEGALACC_CLR_MSK 0xffffffdf
/* The reset value of the ALT_QSPI_IRQSTAT_ILLEGALACC register field. */
#define ALT_QSPI_IRQSTAT_ILLEGALACC_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_ILLEGALACC field value from a register. */
#define ALT_QSPI_IRQSTAT_ILLEGALACC_GET(value) (((value) & 0x00000020) >> 5)
/* Produces a ALT_QSPI_IRQSTAT_ILLEGALACC register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_ILLEGALACC_SET(value) (((value) << 5) & 0x00000020)
/*
* Field : Transfer Watermark Reached - indxfrlvl
*
* Indirect Transfer Watermark Level Reached
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------------|:------|:-----------------------
* ALT_QSPI_IRQSTAT_INDXFRLVL_E_WATERLEVL | 0x1 | Water level reached
* ALT_QSPI_IRQSTAT_INDXFRLVL_E_NOWATERLVL | 0x0 | No water level reached
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_INDXFRLVL
*
* Water level reached
*/
#define ALT_QSPI_IRQSTAT_INDXFRLVL_E_WATERLEVL 0x1
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_INDXFRLVL
*
* No water level reached
*/
#define ALT_QSPI_IRQSTAT_INDXFRLVL_E_NOWATERLVL 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_INDXFRLVL register field. */
#define ALT_QSPI_IRQSTAT_INDXFRLVL_LSB 6
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_INDXFRLVL register field. */
#define ALT_QSPI_IRQSTAT_INDXFRLVL_MSB 6
/* The width in bits of the ALT_QSPI_IRQSTAT_INDXFRLVL register field. */
#define ALT_QSPI_IRQSTAT_INDXFRLVL_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_INDXFRLVL register field value. */
#define ALT_QSPI_IRQSTAT_INDXFRLVL_SET_MSK 0x00000040
/* The mask used to clear the ALT_QSPI_IRQSTAT_INDXFRLVL register field value. */
#define ALT_QSPI_IRQSTAT_INDXFRLVL_CLR_MSK 0xffffffbf
/* The reset value of the ALT_QSPI_IRQSTAT_INDXFRLVL register field. */
#define ALT_QSPI_IRQSTAT_INDXFRLVL_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_INDXFRLVL field value from a register. */
#define ALT_QSPI_IRQSTAT_INDXFRLVL_GET(value) (((value) & 0x00000040) >> 6)
/* Produces a ALT_QSPI_IRQSTAT_INDXFRLVL register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_INDXFRLVL_SET(value) (((value) << 6) & 0x00000040)
/*
* Field : Receive Overflow - rxover
*
* This should only occur in Legacy SPI mode. Set if an attempt is made to push the
* RX FIFO when it is full. This bit is reset only by a system reset and cleared
* only when this register is read. If a new push to the RX FIFO occurs coincident
* with a register read this flag will remain set. 0 : no overflow has been
* detected. 1 : an overflow has occurred.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------------|:------|:--------------------
* ALT_QSPI_IRQSTAT_RXOVER_E_RCVOVER | 0x1 | Receive Overflow
* ALT_QSPI_IRQSTAT_RXOVER_E_NORCVOVER | 0x0 | No Receive Overflow
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_RXOVER
*
* Receive Overflow
*/
#define ALT_QSPI_IRQSTAT_RXOVER_E_RCVOVER 0x1
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_RXOVER
*
* No Receive Overflow
*/
#define ALT_QSPI_IRQSTAT_RXOVER_E_NORCVOVER 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_RXOVER register field. */
#define ALT_QSPI_IRQSTAT_RXOVER_LSB 7
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_RXOVER register field. */
#define ALT_QSPI_IRQSTAT_RXOVER_MSB 7
/* The width in bits of the ALT_QSPI_IRQSTAT_RXOVER register field. */
#define ALT_QSPI_IRQSTAT_RXOVER_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_RXOVER register field value. */
#define ALT_QSPI_IRQSTAT_RXOVER_SET_MSK 0x00000080
/* The mask used to clear the ALT_QSPI_IRQSTAT_RXOVER register field value. */
#define ALT_QSPI_IRQSTAT_RXOVER_CLR_MSK 0xffffff7f
/* The reset value of the ALT_QSPI_IRQSTAT_RXOVER register field. */
#define ALT_QSPI_IRQSTAT_RXOVER_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_RXOVER field value from a register. */
#define ALT_QSPI_IRQSTAT_RXOVER_GET(value) (((value) & 0x00000080) >> 7)
/* Produces a ALT_QSPI_IRQSTAT_RXOVER register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_RXOVER_SET(value) (((value) << 7) & 0x00000080)
/*
* Field : Transmit FIFO Compared to Threshold - txthreshcmp
*
* Indicates the number of entries in the transmit FIFO with respect to the
* threshold specified in the TXTHRESH register. Only relevant in SPI legacy mode.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQSTAT_TXTHRESHCMP_E_GT | 0x0 | FIFO has > TXTHRESH entries
* ALT_QSPI_IRQSTAT_TXTHRESHCMP_E_LE | 0x1 | FIFO has <= TXTHRESH entries
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_TXTHRESHCMP
*
* FIFO has > TXTHRESH entries
*/
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_E_GT 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_TXTHRESHCMP
*
* FIFO has <= TXTHRESH entries
*/
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_E_LE 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_TXTHRESHCMP register field. */
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_LSB 8
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_TXTHRESHCMP register field. */
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_MSB 8
/* The width in bits of the ALT_QSPI_IRQSTAT_TXTHRESHCMP register field. */
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_TXTHRESHCMP register field value. */
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_SET_MSK 0x00000100
/* The mask used to clear the ALT_QSPI_IRQSTAT_TXTHRESHCMP register field value. */
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_CLR_MSK 0xfffffeff
/* The reset value of the ALT_QSPI_IRQSTAT_TXTHRESHCMP register field. */
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_RESET 0x1
/* Extracts the ALT_QSPI_IRQSTAT_TXTHRESHCMP field value from a register. */
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_GET(value) (((value) & 0x00000100) >> 8)
/* Produces a ALT_QSPI_IRQSTAT_TXTHRESHCMP register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_TXTHRESHCMP_SET(value) (((value) << 8) & 0x00000100)
/*
* Field : Transmit FIFO Full - txfull
*
* Indicates that the transmit FIFO is full or not. Only relevant in SPI legacy
* mode.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-----------------------
* ALT_QSPI_IRQSTAT_TXFULL_E_NOTFULL | 0x0 | Transmit FIFO Not Full
* ALT_QSPI_IRQSTAT_TXFULL_E_FULL | 0x1 | Transmit FIFO Full
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_TXFULL
*
* Transmit FIFO Not Full
*/
#define ALT_QSPI_IRQSTAT_TXFULL_E_NOTFULL 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_TXFULL
*
* Transmit FIFO Full
*/
#define ALT_QSPI_IRQSTAT_TXFULL_E_FULL 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_TXFULL register field. */
#define ALT_QSPI_IRQSTAT_TXFULL_LSB 9
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_TXFULL register field. */
#define ALT_QSPI_IRQSTAT_TXFULL_MSB 9
/* The width in bits of the ALT_QSPI_IRQSTAT_TXFULL register field. */
#define ALT_QSPI_IRQSTAT_TXFULL_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_TXFULL register field value. */
#define ALT_QSPI_IRQSTAT_TXFULL_SET_MSK 0x00000200
/* The mask used to clear the ALT_QSPI_IRQSTAT_TXFULL register field value. */
#define ALT_QSPI_IRQSTAT_TXFULL_CLR_MSK 0xfffffdff
/* The reset value of the ALT_QSPI_IRQSTAT_TXFULL register field. */
#define ALT_QSPI_IRQSTAT_TXFULL_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_TXFULL field value from a register. */
#define ALT_QSPI_IRQSTAT_TXFULL_GET(value) (((value) & 0x00000200) >> 9)
/* Produces a ALT_QSPI_IRQSTAT_TXFULL register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_TXFULL_SET(value) (((value) << 9) & 0x00000200)
/*
* Field : Receive FIFO Compared to Threshold - rxthreshcmp
*
* Indicates the number of entries in the receive FIFO with respect to the
* threshold specified in the RXTHRESH register. Only relevant in SPI legacy mode.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQSTAT_RXTHRESHCMP_E_LE | 0x0 | FIFO has <= RXTHRESH entries
* ALT_QSPI_IRQSTAT_RXTHRESHCMP_E_GT | 0x1 | FIFO has > RXTHRESH entries
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_RXTHRESHCMP
*
* FIFO has <= RXTHRESH entries
*/
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_E_LE 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_RXTHRESHCMP
*
* FIFO has > RXTHRESH entries
*/
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_E_GT 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_RXTHRESHCMP register field. */
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_LSB 10
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_RXTHRESHCMP register field. */
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_MSB 10
/* The width in bits of the ALT_QSPI_IRQSTAT_RXTHRESHCMP register field. */
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_RXTHRESHCMP register field value. */
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_SET_MSK 0x00000400
/* The mask used to clear the ALT_QSPI_IRQSTAT_RXTHRESHCMP register field value. */
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_CLR_MSK 0xfffffbff
/* The reset value of the ALT_QSPI_IRQSTAT_RXTHRESHCMP register field. */
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_RXTHRESHCMP field value from a register. */
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_GET(value) (((value) & 0x00000400) >> 10)
/* Produces a ALT_QSPI_IRQSTAT_RXTHRESHCMP register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_RXTHRESHCMP_SET(value) (((value) << 10) & 0x00000400)
/*
* Field : Receive FIFO Full - rxfull
*
* Indicates that the receive FIFO is full or not. Only relevant in SPI legacy
* mode.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:----------------------
* ALT_QSPI_IRQSTAT_RXFULL_E_NOTFULL | 0x0 | Receive FIFO Not Full
* ALT_QSPI_IRQSTAT_RXFULL_E_FULL | 0x1 | Receive FIFO Full
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_RXFULL
*
* Receive FIFO Not Full
*/
#define ALT_QSPI_IRQSTAT_RXFULL_E_NOTFULL 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_RXFULL
*
* Receive FIFO Full
*/
#define ALT_QSPI_IRQSTAT_RXFULL_E_FULL 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_RXFULL register field. */
#define ALT_QSPI_IRQSTAT_RXFULL_LSB 11
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_RXFULL register field. */
#define ALT_QSPI_IRQSTAT_RXFULL_MSB 11
/* The width in bits of the ALT_QSPI_IRQSTAT_RXFULL register field. */
#define ALT_QSPI_IRQSTAT_RXFULL_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_RXFULL register field value. */
#define ALT_QSPI_IRQSTAT_RXFULL_SET_MSK 0x00000800
/* The mask used to clear the ALT_QSPI_IRQSTAT_RXFULL register field value. */
#define ALT_QSPI_IRQSTAT_RXFULL_CLR_MSK 0xfffff7ff
/* The reset value of the ALT_QSPI_IRQSTAT_RXFULL register field. */
#define ALT_QSPI_IRQSTAT_RXFULL_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_RXFULL field value from a register. */
#define ALT_QSPI_IRQSTAT_RXFULL_GET(value) (((value) & 0x00000800) >> 11)
/* Produces a ALT_QSPI_IRQSTAT_RXFULL register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_RXFULL_SET(value) (((value) << 11) & 0x00000800)
/*
* Field : Indirect Read Partition overflow - indsramfull
*
* Indirect Read Partition of SRAM is full and unable to immediately complete
* indirect operation
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------------------------|:------|:-----------------
* ALT_QSPI_IRQSTAT_INDSRAMFULL_E_RDPARTFULL | 0x1 | SRAM is full
* ALT_QSPI_IRQSTAT_INDSRAMFULL_E_RDPARTNOTFULL | 0x0 | SRAM is not full
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_INDSRAMFULL
*
* SRAM is full
*/
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_E_RDPARTFULL 0x1
/*
* Enumerated value for register field ALT_QSPI_IRQSTAT_INDSRAMFULL
*
* SRAM is not full
*/
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_E_RDPARTNOTFULL 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQSTAT_INDSRAMFULL register field. */
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_LSB 12
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQSTAT_INDSRAMFULL register field. */
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_MSB 12
/* The width in bits of the ALT_QSPI_IRQSTAT_INDSRAMFULL register field. */
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQSTAT_INDSRAMFULL register field value. */
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_SET_MSK 0x00001000
/* The mask used to clear the ALT_QSPI_IRQSTAT_INDSRAMFULL register field value. */
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_CLR_MSK 0xffffefff
/* The reset value of the ALT_QSPI_IRQSTAT_INDSRAMFULL register field. */
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_RESET 0x0
/* Extracts the ALT_QSPI_IRQSTAT_INDSRAMFULL field value from a register. */
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_GET(value) (((value) & 0x00001000) >> 12)
/* Produces a ALT_QSPI_IRQSTAT_INDSRAMFULL register field value suitable for setting the register. */
#define ALT_QSPI_IRQSTAT_INDSRAMFULL_SET(value) (((value) << 12) & 0x00001000)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_IRQSTAT.
*/
struct ALT_QSPI_IRQSTAT_s
{
uint32_t : 1; /* *UNDEFINED* */
uint32_t underflowdet : 1; /* Underflow Detected */
uint32_t indopdone : 1; /* Indirect Operation Complete */
uint32_t indrdreject : 1; /* Indirect Read Reject */
uint32_t protwrattempt : 1; /* Protected Area Write Attempt */
uint32_t illegalacc : 1; /* Illegal AHB Access Detected */
uint32_t indxfrlvl : 1; /* Transfer Watermark Reached */
uint32_t rxover : 1; /* Receive Overflow */
uint32_t txthreshcmp : 1; /* Transmit FIFO Compared to Threshold */
uint32_t txfull : 1; /* Transmit FIFO Full */
uint32_t rxthreshcmp : 1; /* Receive FIFO Compared to Threshold */
uint32_t rxfull : 1; /* Receive FIFO Full */
uint32_t indsramfull : 1; /* Indirect Read Partition overflow */
uint32_t : 19; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_IRQSTAT. */
typedef volatile struct ALT_QSPI_IRQSTAT_s ALT_QSPI_IRQSTAT_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_IRQSTAT register from the beginning of the component. */
#define ALT_QSPI_IRQSTAT_OFST 0x40
/*
* Register : Interrupt Mask - irqmask
*
* If disabled, the interrupt for the corresponding interrupt status register bit
* is disabled. If enabled, the interrupt for the corresponding interrupt status
* register bit is enabled.
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:--------------------------------------
* [0] | ??? | 0x0 | *UNDEFINED*
* [1] | RW | 0x0 | Underflow Detected Mask
* [2] | RW | 0x0 | Mask
* [3] | RW | 0x0 | Indirect Read Reject Mask
* [4] | RW | 0x0 | Protected Area Write Attempt Mask
* [5] | RW | 0x0 | Illegal Access Detected Mask
* [6] | RW | 0x0 | Transfer Watermark Breach Mask
* [7] | RW | 0x0 | Receive Overflow Mask
* [8] | RW | 0x0 | Transmit FIFO Threshold Compare Mask
* [9] | RW | 0x0 | Transmit FIFO Full Mask
* [10] | RW | 0x0 | Receive FIFO Threshold Compare Mask
* [11] | RW | 0x0 | Receive FIFO full Mask
* [12] | RW | 0x0 | Indirect Read Partition overflow mask
* [31:13] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Underflow Detected Mask - underflowdet
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_UNDERFLOWDET_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_UNDERFLOWDET_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_UNDERFLOWDET
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_UNDERFLOWDET
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_UNDERFLOWDET register field. */
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_LSB 1
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_UNDERFLOWDET register field. */
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_MSB 1
/* The width in bits of the ALT_QSPI_IRQMSK_UNDERFLOWDET register field. */
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_UNDERFLOWDET register field value. */
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_SET_MSK 0x00000002
/* The mask used to clear the ALT_QSPI_IRQMSK_UNDERFLOWDET register field value. */
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_CLR_MSK 0xfffffffd
/* The reset value of the ALT_QSPI_IRQMSK_UNDERFLOWDET register field. */
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_UNDERFLOWDET field value from a register. */
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_GET(value) (((value) & 0x00000002) >> 1)
/* Produces a ALT_QSPI_IRQMSK_UNDERFLOWDET register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_UNDERFLOWDET_SET(value) (((value) << 1) & 0x00000002)
/*
* Field : Mask - indopdone
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_INDOPDONE_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_INDOPDONE_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_INDOPDONE
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_INDOPDONE_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_INDOPDONE
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_INDOPDONE_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_INDOPDONE register field. */
#define ALT_QSPI_IRQMSK_INDOPDONE_LSB 2
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_INDOPDONE register field. */
#define ALT_QSPI_IRQMSK_INDOPDONE_MSB 2
/* The width in bits of the ALT_QSPI_IRQMSK_INDOPDONE register field. */
#define ALT_QSPI_IRQMSK_INDOPDONE_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_INDOPDONE register field value. */
#define ALT_QSPI_IRQMSK_INDOPDONE_SET_MSK 0x00000004
/* The mask used to clear the ALT_QSPI_IRQMSK_INDOPDONE register field value. */
#define ALT_QSPI_IRQMSK_INDOPDONE_CLR_MSK 0xfffffffb
/* The reset value of the ALT_QSPI_IRQMSK_INDOPDONE register field. */
#define ALT_QSPI_IRQMSK_INDOPDONE_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_INDOPDONE field value from a register. */
#define ALT_QSPI_IRQMSK_INDOPDONE_GET(value) (((value) & 0x00000004) >> 2)
/* Produces a ALT_QSPI_IRQMSK_INDOPDONE register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_INDOPDONE_SET(value) (((value) << 2) & 0x00000004)
/*
* Field : Indirect Read Reject Mask - indrdreject
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-----------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_INDRDREJECT_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_INDRDREJECT_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_INDRDREJECT
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_INDRDREJECT_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_INDRDREJECT
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_INDRDREJECT_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_INDRDREJECT register field. */
#define ALT_QSPI_IRQMSK_INDRDREJECT_LSB 3
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_INDRDREJECT register field. */
#define ALT_QSPI_IRQMSK_INDRDREJECT_MSB 3
/* The width in bits of the ALT_QSPI_IRQMSK_INDRDREJECT register field. */
#define ALT_QSPI_IRQMSK_INDRDREJECT_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_INDRDREJECT register field value. */
#define ALT_QSPI_IRQMSK_INDRDREJECT_SET_MSK 0x00000008
/* The mask used to clear the ALT_QSPI_IRQMSK_INDRDREJECT register field value. */
#define ALT_QSPI_IRQMSK_INDRDREJECT_CLR_MSK 0xfffffff7
/* The reset value of the ALT_QSPI_IRQMSK_INDRDREJECT register field. */
#define ALT_QSPI_IRQMSK_INDRDREJECT_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_INDRDREJECT field value from a register. */
#define ALT_QSPI_IRQMSK_INDRDREJECT_GET(value) (((value) & 0x00000008) >> 3)
/* Produces a ALT_QSPI_IRQMSK_INDRDREJECT register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_INDRDREJECT_SET(value) (((value) << 3) & 0x00000008)
/*
* Field : Protected Area Write Attempt Mask - protwrattempt
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-------------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_PROTWRATTEMPT_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_PROTWRATTEMPT_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_PROTWRATTEMPT
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_PROTWRATTEMPT
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_PROTWRATTEMPT register field. */
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_LSB 4
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_PROTWRATTEMPT register field. */
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_MSB 4
/* The width in bits of the ALT_QSPI_IRQMSK_PROTWRATTEMPT register field. */
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_PROTWRATTEMPT register field value. */
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_SET_MSK 0x00000010
/* The mask used to clear the ALT_QSPI_IRQMSK_PROTWRATTEMPT register field value. */
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_CLR_MSK 0xffffffef
/* The reset value of the ALT_QSPI_IRQMSK_PROTWRATTEMPT register field. */
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_PROTWRATTEMPT field value from a register. */
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_GET(value) (((value) & 0x00000010) >> 4)
/* Produces a ALT_QSPI_IRQMSK_PROTWRATTEMPT register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_PROTWRATTEMPT_SET(value) (((value) << 4) & 0x00000010)
/*
* Field : Illegal Access Detected Mask - illegalacc
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_ILLEGALACC_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_ILLEGALACC_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_ILLEGALACC
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_ILLEGALACC_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_ILLEGALACC
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_ILLEGALACC_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_ILLEGALACC register field. */
#define ALT_QSPI_IRQMSK_ILLEGALACC_LSB 5
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_ILLEGALACC register field. */
#define ALT_QSPI_IRQMSK_ILLEGALACC_MSB 5
/* The width in bits of the ALT_QSPI_IRQMSK_ILLEGALACC register field. */
#define ALT_QSPI_IRQMSK_ILLEGALACC_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_ILLEGALACC register field value. */
#define ALT_QSPI_IRQMSK_ILLEGALACC_SET_MSK 0x00000020
/* The mask used to clear the ALT_QSPI_IRQMSK_ILLEGALACC register field value. */
#define ALT_QSPI_IRQMSK_ILLEGALACC_CLR_MSK 0xffffffdf
/* The reset value of the ALT_QSPI_IRQMSK_ILLEGALACC register field. */
#define ALT_QSPI_IRQMSK_ILLEGALACC_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_ILLEGALACC field value from a register. */
#define ALT_QSPI_IRQMSK_ILLEGALACC_GET(value) (((value) & 0x00000020) >> 5)
/* Produces a ALT_QSPI_IRQMSK_ILLEGALACC register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_ILLEGALACC_SET(value) (((value) << 5) & 0x00000020)
/*
* Field : Transfer Watermark Breach Mask - indxfrlvl
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_INDXFRLVL_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_INDXFRLVL_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_INDXFRLVL
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_INDXFRLVL_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_INDXFRLVL
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_INDXFRLVL_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_INDXFRLVL register field. */
#define ALT_QSPI_IRQMSK_INDXFRLVL_LSB 6
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_INDXFRLVL register field. */
#define ALT_QSPI_IRQMSK_INDXFRLVL_MSB 6
/* The width in bits of the ALT_QSPI_IRQMSK_INDXFRLVL register field. */
#define ALT_QSPI_IRQMSK_INDXFRLVL_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_INDXFRLVL register field value. */
#define ALT_QSPI_IRQMSK_INDXFRLVL_SET_MSK 0x00000040
/* The mask used to clear the ALT_QSPI_IRQMSK_INDXFRLVL register field value. */
#define ALT_QSPI_IRQMSK_INDXFRLVL_CLR_MSK 0xffffffbf
/* The reset value of the ALT_QSPI_IRQMSK_INDXFRLVL register field. */
#define ALT_QSPI_IRQMSK_INDXFRLVL_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_INDXFRLVL field value from a register. */
#define ALT_QSPI_IRQMSK_INDXFRLVL_GET(value) (((value) & 0x00000040) >> 6)
/* Produces a ALT_QSPI_IRQMSK_INDXFRLVL register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_INDXFRLVL_SET(value) (((value) << 6) & 0x00000040)
/*
* Field : Receive Overflow Mask - rxover
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_RXOVER_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_RXOVER_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_RXOVER
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_RXOVER_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_RXOVER
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_RXOVER_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_RXOVER register field. */
#define ALT_QSPI_IRQMSK_RXOVER_LSB 7
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_RXOVER register field. */
#define ALT_QSPI_IRQMSK_RXOVER_MSB 7
/* The width in bits of the ALT_QSPI_IRQMSK_RXOVER register field. */
#define ALT_QSPI_IRQMSK_RXOVER_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_RXOVER register field value. */
#define ALT_QSPI_IRQMSK_RXOVER_SET_MSK 0x00000080
/* The mask used to clear the ALT_QSPI_IRQMSK_RXOVER register field value. */
#define ALT_QSPI_IRQMSK_RXOVER_CLR_MSK 0xffffff7f
/* The reset value of the ALT_QSPI_IRQMSK_RXOVER register field. */
#define ALT_QSPI_IRQMSK_RXOVER_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_RXOVER field value from a register. */
#define ALT_QSPI_IRQMSK_RXOVER_GET(value) (((value) & 0x00000080) >> 7)
/* Produces a ALT_QSPI_IRQMSK_RXOVER register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_RXOVER_SET(value) (((value) << 7) & 0x00000080)
/*
* Field : Transmit FIFO Threshold Compare Mask - txthreshcmp
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-----------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_TXTHRESHCMP_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_TXTHRESHCMP_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_TXTHRESHCMP
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_TXTHRESHCMP
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_TXTHRESHCMP register field. */
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_LSB 8
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_TXTHRESHCMP register field. */
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_MSB 8
/* The width in bits of the ALT_QSPI_IRQMSK_TXTHRESHCMP register field. */
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_TXTHRESHCMP register field value. */
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_SET_MSK 0x00000100
/* The mask used to clear the ALT_QSPI_IRQMSK_TXTHRESHCMP register field value. */
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_CLR_MSK 0xfffffeff
/* The reset value of the ALT_QSPI_IRQMSK_TXTHRESHCMP register field. */
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_TXTHRESHCMP field value from a register. */
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_GET(value) (((value) & 0x00000100) >> 8)
/* Produces a ALT_QSPI_IRQMSK_TXTHRESHCMP register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_TXTHRESHCMP_SET(value) (((value) << 8) & 0x00000100)
/*
* Field : Transmit FIFO Full Mask - txfull
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_TXFULL_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_TXFULL_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_TXFULL
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_TXFULL_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_TXFULL
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_TXFULL_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_TXFULL register field. */
#define ALT_QSPI_IRQMSK_TXFULL_LSB 9
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_TXFULL register field. */
#define ALT_QSPI_IRQMSK_TXFULL_MSB 9
/* The width in bits of the ALT_QSPI_IRQMSK_TXFULL register field. */
#define ALT_QSPI_IRQMSK_TXFULL_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_TXFULL register field value. */
#define ALT_QSPI_IRQMSK_TXFULL_SET_MSK 0x00000200
/* The mask used to clear the ALT_QSPI_IRQMSK_TXFULL register field value. */
#define ALT_QSPI_IRQMSK_TXFULL_CLR_MSK 0xfffffdff
/* The reset value of the ALT_QSPI_IRQMSK_TXFULL register field. */
#define ALT_QSPI_IRQMSK_TXFULL_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_TXFULL field value from a register. */
#define ALT_QSPI_IRQMSK_TXFULL_GET(value) (((value) & 0x00000200) >> 9)
/* Produces a ALT_QSPI_IRQMSK_TXFULL register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_TXFULL_SET(value) (((value) << 9) & 0x00000200)
/*
* Field : Receive FIFO Threshold Compare Mask - rxthreshcmp
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-----------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_RXTHRESHCMP_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_RXTHRESHCMP_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_RXTHRESHCMP
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_RXTHRESHCMP
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_RXTHRESHCMP register field. */
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_LSB 10
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_RXTHRESHCMP register field. */
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_MSB 10
/* The width in bits of the ALT_QSPI_IRQMSK_RXTHRESHCMP register field. */
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_RXTHRESHCMP register field value. */
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_SET_MSK 0x00000400
/* The mask used to clear the ALT_QSPI_IRQMSK_RXTHRESHCMP register field value. */
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_CLR_MSK 0xfffffbff
/* The reset value of the ALT_QSPI_IRQMSK_RXTHRESHCMP register field. */
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_RXTHRESHCMP field value from a register. */
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_GET(value) (((value) & 0x00000400) >> 10)
/* Produces a ALT_QSPI_IRQMSK_RXTHRESHCMP register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_RXTHRESHCMP_SET(value) (((value) << 10) & 0x00000400)
/*
* Field : Receive FIFO full Mask - rxfull
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_RXFULL_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_RXFULL_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_RXFULL
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_RXFULL_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_RXFULL
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_RXFULL_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_RXFULL register field. */
#define ALT_QSPI_IRQMSK_RXFULL_LSB 11
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_RXFULL register field. */
#define ALT_QSPI_IRQMSK_RXFULL_MSB 11
/* The width in bits of the ALT_QSPI_IRQMSK_RXFULL register field. */
#define ALT_QSPI_IRQMSK_RXFULL_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_RXFULL register field value. */
#define ALT_QSPI_IRQMSK_RXFULL_SET_MSK 0x00000800
/* The mask used to clear the ALT_QSPI_IRQMSK_RXFULL register field value. */
#define ALT_QSPI_IRQMSK_RXFULL_CLR_MSK 0xfffff7ff
/* The reset value of the ALT_QSPI_IRQMSK_RXFULL register field. */
#define ALT_QSPI_IRQMSK_RXFULL_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_RXFULL field value from a register. */
#define ALT_QSPI_IRQMSK_RXFULL_GET(value) (((value) & 0x00000800) >> 11)
/* Produces a ALT_QSPI_IRQMSK_RXFULL register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_RXFULL_SET(value) (((value) << 11) & 0x00000800)
/*
* Field : Indirect Read Partition overflow mask - indsramfull
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-----------------------------------|:------|:-----------------------------
* ALT_QSPI_IRQMSK_INDSRAMFULL_E_DISD | 0x0 | Disable Interrupt by Masking
* ALT_QSPI_IRQMSK_INDSRAMFULL_E_END | 0x1 | Enable Interrupt
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_INDSRAMFULL
*
* Disable Interrupt by Masking
*/
#define ALT_QSPI_IRQMSK_INDSRAMFULL_E_DISD 0x0
/*
* Enumerated value for register field ALT_QSPI_IRQMSK_INDSRAMFULL
*
* Enable Interrupt
*/
#define ALT_QSPI_IRQMSK_INDSRAMFULL_E_END 0x1
/* The Least Significant Bit (LSB) position of the ALT_QSPI_IRQMSK_INDSRAMFULL register field. */
#define ALT_QSPI_IRQMSK_INDSRAMFULL_LSB 12
/* The Most Significant Bit (MSB) position of the ALT_QSPI_IRQMSK_INDSRAMFULL register field. */
#define ALT_QSPI_IRQMSK_INDSRAMFULL_MSB 12
/* The width in bits of the ALT_QSPI_IRQMSK_INDSRAMFULL register field. */
#define ALT_QSPI_IRQMSK_INDSRAMFULL_WIDTH 1
/* The mask used to set the ALT_QSPI_IRQMSK_INDSRAMFULL register field value. */
#define ALT_QSPI_IRQMSK_INDSRAMFULL_SET_MSK 0x00001000
/* The mask used to clear the ALT_QSPI_IRQMSK_INDSRAMFULL register field value. */
#define ALT_QSPI_IRQMSK_INDSRAMFULL_CLR_MSK 0xffffefff
/* The reset value of the ALT_QSPI_IRQMSK_INDSRAMFULL register field. */
#define ALT_QSPI_IRQMSK_INDSRAMFULL_RESET 0x0
/* Extracts the ALT_QSPI_IRQMSK_INDSRAMFULL field value from a register. */
#define ALT_QSPI_IRQMSK_INDSRAMFULL_GET(value) (((value) & 0x00001000) >> 12)
/* Produces a ALT_QSPI_IRQMSK_INDSRAMFULL register field value suitable for setting the register. */
#define ALT_QSPI_IRQMSK_INDSRAMFULL_SET(value) (((value) << 12) & 0x00001000)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_IRQMSK.
*/
struct ALT_QSPI_IRQMSK_s
{
uint32_t : 1; /* *UNDEFINED* */
uint32_t underflowdet : 1; /* Underflow Detected Mask */
uint32_t indopdone : 1; /* Mask */
uint32_t indrdreject : 1; /* Indirect Read Reject Mask */
uint32_t protwrattempt : 1; /* Protected Area Write Attempt Mask */
uint32_t illegalacc : 1; /* Illegal Access Detected Mask */
uint32_t indxfrlvl : 1; /* Transfer Watermark Breach Mask */
uint32_t rxover : 1; /* Receive Overflow Mask */
uint32_t txthreshcmp : 1; /* Transmit FIFO Threshold Compare Mask */
uint32_t txfull : 1; /* Transmit FIFO Full Mask */
uint32_t rxthreshcmp : 1; /* Receive FIFO Threshold Compare Mask */
uint32_t rxfull : 1; /* Receive FIFO full Mask */
uint32_t indsramfull : 1; /* Indirect Read Partition overflow mask */
uint32_t : 19; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_IRQMSK. */
typedef volatile struct ALT_QSPI_IRQMSK_s ALT_QSPI_IRQMSK_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_IRQMSK register from the beginning of the component. */
#define ALT_QSPI_IRQMSK_OFST 0x44
/*
* Register : Lower Write Protection Register - lowwrprot
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:-------------
* [31:0] | RW | 0x0 | Block Number
*
*/
/*
* Field : Block Number - subsector
*
* The block number that defines the lower block in the range of blocks that is to
* be locked from writing. The definition of a block in terms of number of bytes is
* programmable via the Device Size Configuration register.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_LOWWRPROT_SUBSECTOR register field. */
#define ALT_QSPI_LOWWRPROT_SUBSECTOR_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_LOWWRPROT_SUBSECTOR register field. */
#define ALT_QSPI_LOWWRPROT_SUBSECTOR_MSB 31
/* The width in bits of the ALT_QSPI_LOWWRPROT_SUBSECTOR register field. */
#define ALT_QSPI_LOWWRPROT_SUBSECTOR_WIDTH 32
/* The mask used to set the ALT_QSPI_LOWWRPROT_SUBSECTOR register field value. */
#define ALT_QSPI_LOWWRPROT_SUBSECTOR_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_LOWWRPROT_SUBSECTOR register field value. */
#define ALT_QSPI_LOWWRPROT_SUBSECTOR_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_LOWWRPROT_SUBSECTOR register field. */
#define ALT_QSPI_LOWWRPROT_SUBSECTOR_RESET 0x0
/* Extracts the ALT_QSPI_LOWWRPROT_SUBSECTOR field value from a register. */
#define ALT_QSPI_LOWWRPROT_SUBSECTOR_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_LOWWRPROT_SUBSECTOR register field value suitable for setting the register. */
#define ALT_QSPI_LOWWRPROT_SUBSECTOR_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_LOWWRPROT.
*/
struct ALT_QSPI_LOWWRPROT_s
{
uint32_t subsector : 32; /* Block Number */
};
/* The typedef declaration for register ALT_QSPI_LOWWRPROT. */
typedef volatile struct ALT_QSPI_LOWWRPROT_s ALT_QSPI_LOWWRPROT_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_LOWWRPROT register from the beginning of the component. */
#define ALT_QSPI_LOWWRPROT_OFST 0x50
/*
* Register : Upper Write Protection Register - uppwrprot
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:-------------
* [31:0] | RW | 0x0 | Block Number
*
*/
/*
* Field : Block Number - subsector
*
* The block number that defines the upper block in the range of blocks that is to
* be locked from writing. The definition of a block in terms of number of bytes is
* programmable via the Device Size Configuration register.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_UPPWRPROT_SUBSECTOR register field. */
#define ALT_QSPI_UPPWRPROT_SUBSECTOR_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_UPPWRPROT_SUBSECTOR register field. */
#define ALT_QSPI_UPPWRPROT_SUBSECTOR_MSB 31
/* The width in bits of the ALT_QSPI_UPPWRPROT_SUBSECTOR register field. */
#define ALT_QSPI_UPPWRPROT_SUBSECTOR_WIDTH 32
/* The mask used to set the ALT_QSPI_UPPWRPROT_SUBSECTOR register field value. */
#define ALT_QSPI_UPPWRPROT_SUBSECTOR_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_UPPWRPROT_SUBSECTOR register field value. */
#define ALT_QSPI_UPPWRPROT_SUBSECTOR_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_UPPWRPROT_SUBSECTOR register field. */
#define ALT_QSPI_UPPWRPROT_SUBSECTOR_RESET 0x0
/* Extracts the ALT_QSPI_UPPWRPROT_SUBSECTOR field value from a register. */
#define ALT_QSPI_UPPWRPROT_SUBSECTOR_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_UPPWRPROT_SUBSECTOR register field value suitable for setting the register. */
#define ALT_QSPI_UPPWRPROT_SUBSECTOR_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_UPPWRPROT.
*/
struct ALT_QSPI_UPPWRPROT_s
{
uint32_t subsector : 32; /* Block Number */
};
/* The typedef declaration for register ALT_QSPI_UPPWRPROT. */
typedef volatile struct ALT_QSPI_UPPWRPROT_s ALT_QSPI_UPPWRPROT_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_UPPWRPROT register from the beginning of the component. */
#define ALT_QSPI_UPPWRPROT_OFST 0x54
/*
* Register : Write Protection Register - wrprot
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:-------------------------------
* [0] | RW | 0x0 | Write Protection Inversion Bit
* [1] | RW | 0x0 | Write Protection Enable Bit
* [31:2] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Write Protection Inversion Bit - inv
*
* When enabled, the protection region defined in the lower and upper write
* protection registers is inverted meaning it is the region that the system is
* permitted to write to. When disabled, the protection region defined in the lower
* and upper write protection registers is the region that the system is not
* permitted to write to.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :--------------------------|:------|:-------------------------
* ALT_QSPI_WRPROT_INV_E_EN | 0x1 | Write Region allowed
* ALT_QSPI_WRPROT_INV_E_DIS | 0x0 | Write Region not allowed
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_WRPROT_INV
*
* Write Region allowed
*/
#define ALT_QSPI_WRPROT_INV_E_EN 0x1
/*
* Enumerated value for register field ALT_QSPI_WRPROT_INV
*
* Write Region not allowed
*/
#define ALT_QSPI_WRPROT_INV_E_DIS 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_WRPROT_INV register field. */
#define ALT_QSPI_WRPROT_INV_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_WRPROT_INV register field. */
#define ALT_QSPI_WRPROT_INV_MSB 0
/* The width in bits of the ALT_QSPI_WRPROT_INV register field. */
#define ALT_QSPI_WRPROT_INV_WIDTH 1
/* The mask used to set the ALT_QSPI_WRPROT_INV register field value. */
#define ALT_QSPI_WRPROT_INV_SET_MSK 0x00000001
/* The mask used to clear the ALT_QSPI_WRPROT_INV register field value. */
#define ALT_QSPI_WRPROT_INV_CLR_MSK 0xfffffffe
/* The reset value of the ALT_QSPI_WRPROT_INV register field. */
#define ALT_QSPI_WRPROT_INV_RESET 0x0
/* Extracts the ALT_QSPI_WRPROT_INV field value from a register. */
#define ALT_QSPI_WRPROT_INV_GET(value) (((value) & 0x00000001) >> 0)
/* Produces a ALT_QSPI_WRPROT_INV register field value suitable for setting the register. */
#define ALT_QSPI_WRPROT_INV_SET(value) (((value) << 0) & 0x00000001)
/*
* Field : Write Protection Enable Bit - en
*
* When enabled, any AHB write access with an address within the protection region
* defined in the lower and upper write protection registers is rejected. An AHB
* error response is generated and an interrupt source triggered. When disabled,
* the protection region is disabled.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-------------------------|:------|:---------------------------
* ALT_QSPI_WRPROT_EN_E_EN | 0x1 | AHB Write Access rejected
* ALT_QSPI_WRPROT_EN_E_DIS | 0x0 | Protection Region Disabled
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_WRPROT_EN
*
* AHB Write Access rejected
*/
#define ALT_QSPI_WRPROT_EN_E_EN 0x1
/*
* Enumerated value for register field ALT_QSPI_WRPROT_EN
*
* Protection Region Disabled
*/
#define ALT_QSPI_WRPROT_EN_E_DIS 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_WRPROT_EN register field. */
#define ALT_QSPI_WRPROT_EN_LSB 1
/* The Most Significant Bit (MSB) position of the ALT_QSPI_WRPROT_EN register field. */
#define ALT_QSPI_WRPROT_EN_MSB 1
/* The width in bits of the ALT_QSPI_WRPROT_EN register field. */
#define ALT_QSPI_WRPROT_EN_WIDTH 1
/* The mask used to set the ALT_QSPI_WRPROT_EN register field value. */
#define ALT_QSPI_WRPROT_EN_SET_MSK 0x00000002
/* The mask used to clear the ALT_QSPI_WRPROT_EN register field value. */
#define ALT_QSPI_WRPROT_EN_CLR_MSK 0xfffffffd
/* The reset value of the ALT_QSPI_WRPROT_EN register field. */
#define ALT_QSPI_WRPROT_EN_RESET 0x0
/* Extracts the ALT_QSPI_WRPROT_EN field value from a register. */
#define ALT_QSPI_WRPROT_EN_GET(value) (((value) & 0x00000002) >> 1)
/* Produces a ALT_QSPI_WRPROT_EN register field value suitable for setting the register. */
#define ALT_QSPI_WRPROT_EN_SET(value) (((value) << 1) & 0x00000002)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_WRPROT.
*/
struct ALT_QSPI_WRPROT_s
{
uint32_t inv : 1; /* Write Protection Inversion Bit */
uint32_t en : 1; /* Write Protection Enable Bit */
uint32_t : 30; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_WRPROT. */
typedef volatile struct ALT_QSPI_WRPROT_s ALT_QSPI_WRPROT_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_WRPROT register from the beginning of the component. */
#define ALT_QSPI_WRPROT_OFST 0x58
/*
* Register : Indirect Read Transfer Register - indrd
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:--------|:--------------------------------
* [0] | RW | 0x0 | Start Indirect Read
* [1] | RW | 0x0 | Cancel Indirect Read
* [2] | R | Unknown | Indirect Read Status
* [3] | RW | Unknown | SRAM Full
* [4] | R | Unknown | Queued Indirect Read Operations
* [5] | RW | Unknown | Indirect Completion Status
* [7:6] | R | Unknown | Completed Indirect Operations
* [31:8] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Start Indirect Read - start
*
* When this bit is enabled, it will trigger an indirect read operation. The
* assumption is that the indirect start address and the indirect number of bytes
* register is setup before triggering the indirect read operation.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------|:------|:----------------------
* ALT_QSPI_INDRD_START_E_END | 0x1 | Trigger Indirect Read
* ALT_QSPI_INDRD_START_E_DISD | 0x0 | No Indirect Read
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDRD_START
*
* Trigger Indirect Read
*/
#define ALT_QSPI_INDRD_START_E_END 0x1
/*
* Enumerated value for register field ALT_QSPI_INDRD_START
*
* No Indirect Read
*/
#define ALT_QSPI_INDRD_START_E_DISD 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRD_START register field. */
#define ALT_QSPI_INDRD_START_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRD_START register field. */
#define ALT_QSPI_INDRD_START_MSB 0
/* The width in bits of the ALT_QSPI_INDRD_START register field. */
#define ALT_QSPI_INDRD_START_WIDTH 1
/* The mask used to set the ALT_QSPI_INDRD_START register field value. */
#define ALT_QSPI_INDRD_START_SET_MSK 0x00000001
/* The mask used to clear the ALT_QSPI_INDRD_START register field value. */
#define ALT_QSPI_INDRD_START_CLR_MSK 0xfffffffe
/* The reset value of the ALT_QSPI_INDRD_START register field. */
#define ALT_QSPI_INDRD_START_RESET 0x0
/* Extracts the ALT_QSPI_INDRD_START field value from a register. */
#define ALT_QSPI_INDRD_START_GET(value) (((value) & 0x00000001) >> 0)
/* Produces a ALT_QSPI_INDRD_START register field value suitable for setting the register. */
#define ALT_QSPI_INDRD_START_SET(value) (((value) << 0) & 0x00000001)
/*
* Field : Cancel Indirect Read - cancel
*
* This bit will cancel all ongoing indirect read operations.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------------|:------|:----------------------------
* ALT_QSPI_INDRD_CANCEL_E_CANCEL | 0x1 | Cancel Indirect Read
* ALT_QSPI_INDRD_CANCEL_E_NOACTION | 0x0 | Do Not Cancel Indirect Read
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDRD_CANCEL
*
* Cancel Indirect Read
*/
#define ALT_QSPI_INDRD_CANCEL_E_CANCEL 0x1
/*
* Enumerated value for register field ALT_QSPI_INDRD_CANCEL
*
* Do Not Cancel Indirect Read
*/
#define ALT_QSPI_INDRD_CANCEL_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRD_CANCEL register field. */
#define ALT_QSPI_INDRD_CANCEL_LSB 1
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRD_CANCEL register field. */
#define ALT_QSPI_INDRD_CANCEL_MSB 1
/* The width in bits of the ALT_QSPI_INDRD_CANCEL register field. */
#define ALT_QSPI_INDRD_CANCEL_WIDTH 1
/* The mask used to set the ALT_QSPI_INDRD_CANCEL register field value. */
#define ALT_QSPI_INDRD_CANCEL_SET_MSK 0x00000002
/* The mask used to clear the ALT_QSPI_INDRD_CANCEL register field value. */
#define ALT_QSPI_INDRD_CANCEL_CLR_MSK 0xfffffffd
/* The reset value of the ALT_QSPI_INDRD_CANCEL register field. */
#define ALT_QSPI_INDRD_CANCEL_RESET 0x0
/* Extracts the ALT_QSPI_INDRD_CANCEL field value from a register. */
#define ALT_QSPI_INDRD_CANCEL_GET(value) (((value) & 0x00000002) >> 1)
/* Produces a ALT_QSPI_INDRD_CANCEL register field value suitable for setting the register. */
#define ALT_QSPI_INDRD_CANCEL_SET(value) (((value) << 1) & 0x00000002)
/*
* Field : Indirect Read Status - rd_status
*
* Indirect read operation in progress (status)
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:------------------------------
* ALT_QSPI_INDRD_RD_STAT_E_RDOP | 0x1 | Read Operation in progress
* ALT_QSPI_INDRD_RD_STAT_E_NOACTION | 0x0 | No read operation in progress
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDRD_RD_STAT
*
* Read Operation in progress
*/
#define ALT_QSPI_INDRD_RD_STAT_E_RDOP 0x1
/*
* Enumerated value for register field ALT_QSPI_INDRD_RD_STAT
*
* No read operation in progress
*/
#define ALT_QSPI_INDRD_RD_STAT_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRD_RD_STAT register field. */
#define ALT_QSPI_INDRD_RD_STAT_LSB 2
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRD_RD_STAT register field. */
#define ALT_QSPI_INDRD_RD_STAT_MSB 2
/* The width in bits of the ALT_QSPI_INDRD_RD_STAT register field. */
#define ALT_QSPI_INDRD_RD_STAT_WIDTH 1
/* The mask used to set the ALT_QSPI_INDRD_RD_STAT register field value. */
#define ALT_QSPI_INDRD_RD_STAT_SET_MSK 0x00000004
/* The mask used to clear the ALT_QSPI_INDRD_RD_STAT register field value. */
#define ALT_QSPI_INDRD_RD_STAT_CLR_MSK 0xfffffffb
/* The reset value of the ALT_QSPI_INDRD_RD_STAT register field is UNKNOWN. */
#define ALT_QSPI_INDRD_RD_STAT_RESET 0x0
/* Extracts the ALT_QSPI_INDRD_RD_STAT field value from a register. */
#define ALT_QSPI_INDRD_RD_STAT_GET(value) (((value) & 0x00000004) >> 2)
/* Produces a ALT_QSPI_INDRD_RD_STAT register field value suitable for setting the register. */
#define ALT_QSPI_INDRD_RD_STAT_SET(value) (((value) << 2) & 0x00000004)
/*
* Field : SRAM Full - sram_full
*
* SRAM full and unable to immediately complete an indirect operation. Write a 1 to
* this field to clear it. ; indirect operation (status)
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------------|:------|:-----------------------------------
* ALT_QSPI_INDRD_SRAM_FULL_E_SRAMFULL | 0x1 | Sram Full- Cant complete operation
* ALT_QSPI_INDRD_SRAM_FULL_E_NOACTION | 0x0 | SRram Not Full
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDRD_SRAM_FULL
*
* Sram Full- Cant complete operation
*/
#define ALT_QSPI_INDRD_SRAM_FULL_E_SRAMFULL 0x1
/*
* Enumerated value for register field ALT_QSPI_INDRD_SRAM_FULL
*
* SRram Not Full
*/
#define ALT_QSPI_INDRD_SRAM_FULL_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRD_SRAM_FULL register field. */
#define ALT_QSPI_INDRD_SRAM_FULL_LSB 3
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRD_SRAM_FULL register field. */
#define ALT_QSPI_INDRD_SRAM_FULL_MSB 3
/* The width in bits of the ALT_QSPI_INDRD_SRAM_FULL register field. */
#define ALT_QSPI_INDRD_SRAM_FULL_WIDTH 1
/* The mask used to set the ALT_QSPI_INDRD_SRAM_FULL register field value. */
#define ALT_QSPI_INDRD_SRAM_FULL_SET_MSK 0x00000008
/* The mask used to clear the ALT_QSPI_INDRD_SRAM_FULL register field value. */
#define ALT_QSPI_INDRD_SRAM_FULL_CLR_MSK 0xfffffff7
/* The reset value of the ALT_QSPI_INDRD_SRAM_FULL register field is UNKNOWN. */
#define ALT_QSPI_INDRD_SRAM_FULL_RESET 0x0
/* Extracts the ALT_QSPI_INDRD_SRAM_FULL field value from a register. */
#define ALT_QSPI_INDRD_SRAM_FULL_GET(value) (((value) & 0x00000008) >> 3)
/* Produces a ALT_QSPI_INDRD_SRAM_FULL register field value suitable for setting the register. */
#define ALT_QSPI_INDRD_SRAM_FULL_SET(value) (((value) << 3) & 0x00000008)
/*
* Field : Queued Indirect Read Operations - rd_queued
*
* Two indirect read operations have been queued
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------------|:------|:---------------------
* ALT_QSPI_INDRD_RD_QUEUED_E_QUINDIRECTRD | 0x1 | Queued Indirect Read
* ALT_QSPI_INDRD_RD_QUEUED_E_NOACTION | 0x0 | No Queued Read
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDRD_RD_QUEUED
*
* Queued Indirect Read
*/
#define ALT_QSPI_INDRD_RD_QUEUED_E_QUINDIRECTRD 0x1
/*
* Enumerated value for register field ALT_QSPI_INDRD_RD_QUEUED
*
* No Queued Read
*/
#define ALT_QSPI_INDRD_RD_QUEUED_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRD_RD_QUEUED register field. */
#define ALT_QSPI_INDRD_RD_QUEUED_LSB 4
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRD_RD_QUEUED register field. */
#define ALT_QSPI_INDRD_RD_QUEUED_MSB 4
/* The width in bits of the ALT_QSPI_INDRD_RD_QUEUED register field. */
#define ALT_QSPI_INDRD_RD_QUEUED_WIDTH 1
/* The mask used to set the ALT_QSPI_INDRD_RD_QUEUED register field value. */
#define ALT_QSPI_INDRD_RD_QUEUED_SET_MSK 0x00000010
/* The mask used to clear the ALT_QSPI_INDRD_RD_QUEUED register field value. */
#define ALT_QSPI_INDRD_RD_QUEUED_CLR_MSK 0xffffffef
/* The reset value of the ALT_QSPI_INDRD_RD_QUEUED register field is UNKNOWN. */
#define ALT_QSPI_INDRD_RD_QUEUED_RESET 0x0
/* Extracts the ALT_QSPI_INDRD_RD_QUEUED field value from a register. */
#define ALT_QSPI_INDRD_RD_QUEUED_GET(value) (((value) & 0x00000010) >> 4)
/* Produces a ALT_QSPI_INDRD_RD_QUEUED register field value suitable for setting the register. */
#define ALT_QSPI_INDRD_RD_QUEUED_SET(value) (((value) << 4) & 0x00000010)
/*
* Field : Indirect Completion Status - ind_ops_done_status
*
* This field is set to 1 when an indirect operation has completed. Write a 1 to
* this field to clear it.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :--------------------------------------------|:------|:-------------------------------
* ALT_QSPI_INDRD_IND_OPS_DONE_STAT_E_INDCOMP | 0x1 | Indirect Op Complete operation
* ALT_QSPI_INDRD_IND_OPS_DONE_STAT_E_NOACTION | 0x0 | Indirect Op Not Complete
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDRD_IND_OPS_DONE_STAT
*
* Indirect Op Complete operation
*/
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_E_INDCOMP 0x1
/*
* Enumerated value for register field ALT_QSPI_INDRD_IND_OPS_DONE_STAT
*
* Indirect Op Not Complete
*/
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRD_IND_OPS_DONE_STAT register field. */
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_LSB 5
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRD_IND_OPS_DONE_STAT register field. */
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_MSB 5
/* The width in bits of the ALT_QSPI_INDRD_IND_OPS_DONE_STAT register field. */
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_WIDTH 1
/* The mask used to set the ALT_QSPI_INDRD_IND_OPS_DONE_STAT register field value. */
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_SET_MSK 0x00000020
/* The mask used to clear the ALT_QSPI_INDRD_IND_OPS_DONE_STAT register field value. */
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_CLR_MSK 0xffffffdf
/* The reset value of the ALT_QSPI_INDRD_IND_OPS_DONE_STAT register field is UNKNOWN. */
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_RESET 0x0
/* Extracts the ALT_QSPI_INDRD_IND_OPS_DONE_STAT field value from a register. */
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_GET(value) (((value) & 0x00000020) >> 5)
/* Produces a ALT_QSPI_INDRD_IND_OPS_DONE_STAT register field value suitable for setting the register. */
#define ALT_QSPI_INDRD_IND_OPS_DONE_STAT_SET(value) (((value) << 5) & 0x00000020)
/*
* Field : Completed Indirect Operations - num_ind_ops_done
*
* This field contains the number of indirect operations which have been completed.
* This is used in conjunction with the indirect completion status field (bit 5).
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRD_NUM_IND_OPS_DONE register field. */
#define ALT_QSPI_INDRD_NUM_IND_OPS_DONE_LSB 6
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRD_NUM_IND_OPS_DONE register field. */
#define ALT_QSPI_INDRD_NUM_IND_OPS_DONE_MSB 7
/* The width in bits of the ALT_QSPI_INDRD_NUM_IND_OPS_DONE register field. */
#define ALT_QSPI_INDRD_NUM_IND_OPS_DONE_WIDTH 2
/* The mask used to set the ALT_QSPI_INDRD_NUM_IND_OPS_DONE register field value. */
#define ALT_QSPI_INDRD_NUM_IND_OPS_DONE_SET_MSK 0x000000c0
/* The mask used to clear the ALT_QSPI_INDRD_NUM_IND_OPS_DONE register field value. */
#define ALT_QSPI_INDRD_NUM_IND_OPS_DONE_CLR_MSK 0xffffff3f
/* The reset value of the ALT_QSPI_INDRD_NUM_IND_OPS_DONE register field is UNKNOWN. */
#define ALT_QSPI_INDRD_NUM_IND_OPS_DONE_RESET 0x0
/* Extracts the ALT_QSPI_INDRD_NUM_IND_OPS_DONE field value from a register. */
#define ALT_QSPI_INDRD_NUM_IND_OPS_DONE_GET(value) (((value) & 0x000000c0) >> 6)
/* Produces a ALT_QSPI_INDRD_NUM_IND_OPS_DONE register field value suitable for setting the register. */
#define ALT_QSPI_INDRD_NUM_IND_OPS_DONE_SET(value) (((value) << 6) & 0x000000c0)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_INDRD.
*/
struct ALT_QSPI_INDRD_s
{
uint32_t start : 1; /* Start Indirect Read */
uint32_t cancel : 1; /* Cancel Indirect Read */
const uint32_t rd_status : 1; /* Indirect Read Status */
uint32_t sram_full : 1; /* SRAM Full */
const uint32_t rd_queued : 1; /* Queued Indirect Read Operations */
uint32_t ind_ops_done_status : 1; /* Indirect Completion Status */
const uint32_t num_ind_ops_done : 2; /* Completed Indirect Operations */
uint32_t : 24; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_INDRD. */
typedef volatile struct ALT_QSPI_INDRD_s ALT_QSPI_INDRD_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_INDRD register from the beginning of the component. */
#define ALT_QSPI_INDRD_OFST 0x60
/*
* Register : Indirect Read Transfer Watermark Register - indrdwater
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:----------------
* [31:0] | RW | 0x0 | Watermark Value
*
*/
/*
* Field : Watermark Value - level
*
* This represents the minimum fill level of the SRAM before a DMA peripheral
* access is permitted. When the SRAM fill level passes the watermark, an interrupt
* is also generated. This field can be disabled by writing a value of all zeroes.
* The units of this register are BYTES
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRDWATER_LEVEL register field. */
#define ALT_QSPI_INDRDWATER_LEVEL_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRDWATER_LEVEL register field. */
#define ALT_QSPI_INDRDWATER_LEVEL_MSB 31
/* The width in bits of the ALT_QSPI_INDRDWATER_LEVEL register field. */
#define ALT_QSPI_INDRDWATER_LEVEL_WIDTH 32
/* The mask used to set the ALT_QSPI_INDRDWATER_LEVEL register field value. */
#define ALT_QSPI_INDRDWATER_LEVEL_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_INDRDWATER_LEVEL register field value. */
#define ALT_QSPI_INDRDWATER_LEVEL_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_INDRDWATER_LEVEL register field. */
#define ALT_QSPI_INDRDWATER_LEVEL_RESET 0x0
/* Extracts the ALT_QSPI_INDRDWATER_LEVEL field value from a register. */
#define ALT_QSPI_INDRDWATER_LEVEL_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_INDRDWATER_LEVEL register field value suitable for setting the register. */
#define ALT_QSPI_INDRDWATER_LEVEL_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_INDRDWATER.
*/
struct ALT_QSPI_INDRDWATER_s
{
uint32_t level : 32; /* Watermark Value */
};
/* The typedef declaration for register ALT_QSPI_INDRDWATER. */
typedef volatile struct ALT_QSPI_INDRDWATER_s ALT_QSPI_INDRDWATER_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_INDRDWATER register from the beginning of the component. */
#define ALT_QSPI_INDRDWATER_OFST 0x64
/*
* Register : Indirect Read Transfer Start Address Register - indrdstaddr
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:---------------------------------
* [31:0] | RW | 0x0 | Start Address of Indirect Access
*
*/
/*
* Field : Start Address of Indirect Access - addr
*
* This is the start address from which the indirect access will commence its READ
* operation.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRDSTADDR_ADDR register field. */
#define ALT_QSPI_INDRDSTADDR_ADDR_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRDSTADDR_ADDR register field. */
#define ALT_QSPI_INDRDSTADDR_ADDR_MSB 31
/* The width in bits of the ALT_QSPI_INDRDSTADDR_ADDR register field. */
#define ALT_QSPI_INDRDSTADDR_ADDR_WIDTH 32
/* The mask used to set the ALT_QSPI_INDRDSTADDR_ADDR register field value. */
#define ALT_QSPI_INDRDSTADDR_ADDR_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_INDRDSTADDR_ADDR register field value. */
#define ALT_QSPI_INDRDSTADDR_ADDR_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_INDRDSTADDR_ADDR register field. */
#define ALT_QSPI_INDRDSTADDR_ADDR_RESET 0x0
/* Extracts the ALT_QSPI_INDRDSTADDR_ADDR field value from a register. */
#define ALT_QSPI_INDRDSTADDR_ADDR_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_INDRDSTADDR_ADDR register field value suitable for setting the register. */
#define ALT_QSPI_INDRDSTADDR_ADDR_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_INDRDSTADDR.
*/
struct ALT_QSPI_INDRDSTADDR_s
{
uint32_t addr : 32; /* Start Address of Indirect Access */
};
/* The typedef declaration for register ALT_QSPI_INDRDSTADDR. */
typedef volatile struct ALT_QSPI_INDRDSTADDR_s ALT_QSPI_INDRDSTADDR_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_INDRDSTADDR register from the beginning of the component. */
#define ALT_QSPI_INDRDSTADDR_OFST 0x68
/*
* Register : Indirect Read Transfer Number Bytes Register - indrdcnt
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:---------------
* [31:0] | RW | 0x0 | Indirect Count
*
*/
/*
* Field : Indirect Count - value
*
* This is the number of bytes that the indirect access will consume. This can be
* bigger than the configured size of SRAM.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDRDCNT_VALUE register field. */
#define ALT_QSPI_INDRDCNT_VALUE_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDRDCNT_VALUE register field. */
#define ALT_QSPI_INDRDCNT_VALUE_MSB 31
/* The width in bits of the ALT_QSPI_INDRDCNT_VALUE register field. */
#define ALT_QSPI_INDRDCNT_VALUE_WIDTH 32
/* The mask used to set the ALT_QSPI_INDRDCNT_VALUE register field value. */
#define ALT_QSPI_INDRDCNT_VALUE_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_INDRDCNT_VALUE register field value. */
#define ALT_QSPI_INDRDCNT_VALUE_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_INDRDCNT_VALUE register field. */
#define ALT_QSPI_INDRDCNT_VALUE_RESET 0x0
/* Extracts the ALT_QSPI_INDRDCNT_VALUE field value from a register. */
#define ALT_QSPI_INDRDCNT_VALUE_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_INDRDCNT_VALUE register field value suitable for setting the register. */
#define ALT_QSPI_INDRDCNT_VALUE_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_INDRDCNT.
*/
struct ALT_QSPI_INDRDCNT_s
{
uint32_t value : 32; /* Indirect Count */
};
/* The typedef declaration for register ALT_QSPI_INDRDCNT. */
typedef volatile struct ALT_QSPI_INDRDCNT_s ALT_QSPI_INDRDCNT_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_INDRDCNT register from the beginning of the component. */
#define ALT_QSPI_INDRDCNT_OFST 0x6c
/*
* Register : Indirect Write Transfer Register - indwr
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:--------|:---------------------------------
* [0] | RW | 0x0 | Start Indirect Write
* [1] | RW | 0x0 | Cancel Indirect Write
* [2] | R | Unknown | Indirect Write Status
* [3] | R | 0x0 | Reserved
* [4] | R | Unknown | Queued Indirect Write Operations
* [5] | RW | Unknown | Indirect Completion Status
* [7:6] | R | Unknown | Completed Indirect Operations
* [31:8] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Start Indirect Write - start
*
* Writing a 1 to this bit will trigger an indirect write operation. The assumption
* is that the indirect start address and the indirect number of bytes register is
* setup before triggering the indirect write operation.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------|:------|:---------------------------------
* ALT_QSPI_INDWR_START_E_END | 0x1 | Trigger indirect write operation
* ALT_QSPI_INDWR_START_E_DISD | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDWR_START
*
* Trigger indirect write operation
*/
#define ALT_QSPI_INDWR_START_E_END 0x1
/*
* Enumerated value for register field ALT_QSPI_INDWR_START
*
* No Action
*/
#define ALT_QSPI_INDWR_START_E_DISD 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWR_START register field. */
#define ALT_QSPI_INDWR_START_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWR_START register field. */
#define ALT_QSPI_INDWR_START_MSB 0
/* The width in bits of the ALT_QSPI_INDWR_START register field. */
#define ALT_QSPI_INDWR_START_WIDTH 1
/* The mask used to set the ALT_QSPI_INDWR_START register field value. */
#define ALT_QSPI_INDWR_START_SET_MSK 0x00000001
/* The mask used to clear the ALT_QSPI_INDWR_START register field value. */
#define ALT_QSPI_INDWR_START_CLR_MSK 0xfffffffe
/* The reset value of the ALT_QSPI_INDWR_START register field. */
#define ALT_QSPI_INDWR_START_RESET 0x0
/* Extracts the ALT_QSPI_INDWR_START field value from a register. */
#define ALT_QSPI_INDWR_START_GET(value) (((value) & 0x00000001) >> 0)
/* Produces a ALT_QSPI_INDWR_START register field value suitable for setting the register. */
#define ALT_QSPI_INDWR_START_SET(value) (((value) << 0) & 0x00000001)
/*
* Field : Cancel Indirect Write - cancel
*
* Writing a 1 to this bit will cancel all ongoing indirect write operations.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-----------------------------------|:------|:--------------------------------
* ALT_QSPI_INDWR_CANCEL_E_CANCEINDWR | 0x1 | Cancel Indirect write operation
* ALT_QSPI_INDWR_CANCEL_E_NOACTION | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDWR_CANCEL
*
* Cancel Indirect write operation
*/
#define ALT_QSPI_INDWR_CANCEL_E_CANCEINDWR 0x1
/*
* Enumerated value for register field ALT_QSPI_INDWR_CANCEL
*
* No Action
*/
#define ALT_QSPI_INDWR_CANCEL_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWR_CANCEL register field. */
#define ALT_QSPI_INDWR_CANCEL_LSB 1
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWR_CANCEL register field. */
#define ALT_QSPI_INDWR_CANCEL_MSB 1
/* The width in bits of the ALT_QSPI_INDWR_CANCEL register field. */
#define ALT_QSPI_INDWR_CANCEL_WIDTH 1
/* The mask used to set the ALT_QSPI_INDWR_CANCEL register field value. */
#define ALT_QSPI_INDWR_CANCEL_SET_MSK 0x00000002
/* The mask used to clear the ALT_QSPI_INDWR_CANCEL register field value. */
#define ALT_QSPI_INDWR_CANCEL_CLR_MSK 0xfffffffd
/* The reset value of the ALT_QSPI_INDWR_CANCEL register field. */
#define ALT_QSPI_INDWR_CANCEL_RESET 0x0
/* Extracts the ALT_QSPI_INDWR_CANCEL field value from a register. */
#define ALT_QSPI_INDWR_CANCEL_GET(value) (((value) & 0x00000002) >> 1)
/* Produces a ALT_QSPI_INDWR_CANCEL register field value suitable for setting the register. */
#define ALT_QSPI_INDWR_CANCEL_SET(value) (((value) << 1) & 0x00000002)
/*
* Field : Indirect Write Status - rdstat
*
* Indirect write operation in progress (status)
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:-------------------------
* ALT_QSPI_INDWR_RDSTAT_E_INDWRSTAT | 0x1 | Indirect write operation
* ALT_QSPI_INDWR_RDSTAT_E_NOACTION | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDWR_RDSTAT
*
* Indirect write operation
*/
#define ALT_QSPI_INDWR_RDSTAT_E_INDWRSTAT 0x1
/*
* Enumerated value for register field ALT_QSPI_INDWR_RDSTAT
*
* No Action
*/
#define ALT_QSPI_INDWR_RDSTAT_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWR_RDSTAT register field. */
#define ALT_QSPI_INDWR_RDSTAT_LSB 2
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWR_RDSTAT register field. */
#define ALT_QSPI_INDWR_RDSTAT_MSB 2
/* The width in bits of the ALT_QSPI_INDWR_RDSTAT register field. */
#define ALT_QSPI_INDWR_RDSTAT_WIDTH 1
/* The mask used to set the ALT_QSPI_INDWR_RDSTAT register field value. */
#define ALT_QSPI_INDWR_RDSTAT_SET_MSK 0x00000004
/* The mask used to clear the ALT_QSPI_INDWR_RDSTAT register field value. */
#define ALT_QSPI_INDWR_RDSTAT_CLR_MSK 0xfffffffb
/* The reset value of the ALT_QSPI_INDWR_RDSTAT register field is UNKNOWN. */
#define ALT_QSPI_INDWR_RDSTAT_RESET 0x0
/* Extracts the ALT_QSPI_INDWR_RDSTAT field value from a register. */
#define ALT_QSPI_INDWR_RDSTAT_GET(value) (((value) & 0x00000004) >> 2)
/* Produces a ALT_QSPI_INDWR_RDSTAT register field value suitable for setting the register. */
#define ALT_QSPI_INDWR_RDSTAT_SET(value) (((value) << 2) & 0x00000004)
/*
* Field : Reserved - sramfull
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWR_SRAMFULL register field. */
#define ALT_QSPI_INDWR_SRAMFULL_LSB 3
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWR_SRAMFULL register field. */
#define ALT_QSPI_INDWR_SRAMFULL_MSB 3
/* The width in bits of the ALT_QSPI_INDWR_SRAMFULL register field. */
#define ALT_QSPI_INDWR_SRAMFULL_WIDTH 1
/* The mask used to set the ALT_QSPI_INDWR_SRAMFULL register field value. */
#define ALT_QSPI_INDWR_SRAMFULL_SET_MSK 0x00000008
/* The mask used to clear the ALT_QSPI_INDWR_SRAMFULL register field value. */
#define ALT_QSPI_INDWR_SRAMFULL_CLR_MSK 0xfffffff7
/* The reset value of the ALT_QSPI_INDWR_SRAMFULL register field. */
#define ALT_QSPI_INDWR_SRAMFULL_RESET 0x0
/* Extracts the ALT_QSPI_INDWR_SRAMFULL field value from a register. */
#define ALT_QSPI_INDWR_SRAMFULL_GET(value) (((value) & 0x00000008) >> 3)
/* Produces a ALT_QSPI_INDWR_SRAMFULL register field value suitable for setting the register. */
#define ALT_QSPI_INDWR_SRAMFULL_SET(value) (((value) << 3) & 0x00000008)
/*
* Field : Queued Indirect Write Operations - rdqueued
*
* Two indirect write operations have been queued
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-----------------------------------|:------|:-----------------------------
* ALT_QSPI_INDWR_RDQUEUED_E_INDWROP | 0x1 | Two Indirect write operation
* ALT_QSPI_INDWR_RDQUEUED_E_NOACTION | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDWR_RDQUEUED
*
* Two Indirect write operation
*/
#define ALT_QSPI_INDWR_RDQUEUED_E_INDWROP 0x1
/*
* Enumerated value for register field ALT_QSPI_INDWR_RDQUEUED
*
* No Action
*/
#define ALT_QSPI_INDWR_RDQUEUED_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWR_RDQUEUED register field. */
#define ALT_QSPI_INDWR_RDQUEUED_LSB 4
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWR_RDQUEUED register field. */
#define ALT_QSPI_INDWR_RDQUEUED_MSB 4
/* The width in bits of the ALT_QSPI_INDWR_RDQUEUED register field. */
#define ALT_QSPI_INDWR_RDQUEUED_WIDTH 1
/* The mask used to set the ALT_QSPI_INDWR_RDQUEUED register field value. */
#define ALT_QSPI_INDWR_RDQUEUED_SET_MSK 0x00000010
/* The mask used to clear the ALT_QSPI_INDWR_RDQUEUED register field value. */
#define ALT_QSPI_INDWR_RDQUEUED_CLR_MSK 0xffffffef
/* The reset value of the ALT_QSPI_INDWR_RDQUEUED register field is UNKNOWN. */
#define ALT_QSPI_INDWR_RDQUEUED_RESET 0x0
/* Extracts the ALT_QSPI_INDWR_RDQUEUED field value from a register. */
#define ALT_QSPI_INDWR_RDQUEUED_GET(value) (((value) & 0x00000010) >> 4)
/* Produces a ALT_QSPI_INDWR_RDQUEUED register field value suitable for setting the register. */
#define ALT_QSPI_INDWR_RDQUEUED_SET(value) (((value) << 4) & 0x00000010)
/*
* Field : Indirect Completion Status - inddone
*
* This field is set to 1 when an indirect operation has completed. Write a 1 to
* this field to clear it.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-----------------------------------|:------|:-----------------------------
* ALT_QSPI_INDWR_INDDONE_E_INDCOMPST | 0x1 | Indirect operation completed
* ALT_QSPI_INDWR_INDDONE_E_NOACTION | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_INDWR_INDDONE
*
* Indirect operation completed
*/
#define ALT_QSPI_INDWR_INDDONE_E_INDCOMPST 0x1
/*
* Enumerated value for register field ALT_QSPI_INDWR_INDDONE
*
* No Action
*/
#define ALT_QSPI_INDWR_INDDONE_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWR_INDDONE register field. */
#define ALT_QSPI_INDWR_INDDONE_LSB 5
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWR_INDDONE register field. */
#define ALT_QSPI_INDWR_INDDONE_MSB 5
/* The width in bits of the ALT_QSPI_INDWR_INDDONE register field. */
#define ALT_QSPI_INDWR_INDDONE_WIDTH 1
/* The mask used to set the ALT_QSPI_INDWR_INDDONE register field value. */
#define ALT_QSPI_INDWR_INDDONE_SET_MSK 0x00000020
/* The mask used to clear the ALT_QSPI_INDWR_INDDONE register field value. */
#define ALT_QSPI_INDWR_INDDONE_CLR_MSK 0xffffffdf
/* The reset value of the ALT_QSPI_INDWR_INDDONE register field is UNKNOWN. */
#define ALT_QSPI_INDWR_INDDONE_RESET 0x0
/* Extracts the ALT_QSPI_INDWR_INDDONE field value from a register. */
#define ALT_QSPI_INDWR_INDDONE_GET(value) (((value) & 0x00000020) >> 5)
/* Produces a ALT_QSPI_INDWR_INDDONE register field value suitable for setting the register. */
#define ALT_QSPI_INDWR_INDDONE_SET(value) (((value) << 5) & 0x00000020)
/*
* Field : Completed Indirect Operations - indcnt
*
* This field contains the count of indirect operations which have been completed.
* This is used in conjunction with the indirect completion status field (bit 5).
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWR_INDCNT register field. */
#define ALT_QSPI_INDWR_INDCNT_LSB 6
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWR_INDCNT register field. */
#define ALT_QSPI_INDWR_INDCNT_MSB 7
/* The width in bits of the ALT_QSPI_INDWR_INDCNT register field. */
#define ALT_QSPI_INDWR_INDCNT_WIDTH 2
/* The mask used to set the ALT_QSPI_INDWR_INDCNT register field value. */
#define ALT_QSPI_INDWR_INDCNT_SET_MSK 0x000000c0
/* The mask used to clear the ALT_QSPI_INDWR_INDCNT register field value. */
#define ALT_QSPI_INDWR_INDCNT_CLR_MSK 0xffffff3f
/* The reset value of the ALT_QSPI_INDWR_INDCNT register field is UNKNOWN. */
#define ALT_QSPI_INDWR_INDCNT_RESET 0x0
/* Extracts the ALT_QSPI_INDWR_INDCNT field value from a register. */
#define ALT_QSPI_INDWR_INDCNT_GET(value) (((value) & 0x000000c0) >> 6)
/* Produces a ALT_QSPI_INDWR_INDCNT register field value suitable for setting the register. */
#define ALT_QSPI_INDWR_INDCNT_SET(value) (((value) << 6) & 0x000000c0)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_INDWR.
*/
struct ALT_QSPI_INDWR_s
{
uint32_t start : 1; /* Start Indirect Write */
uint32_t cancel : 1; /* Cancel Indirect Write */
const uint32_t rdstat : 1; /* Indirect Write Status */
const uint32_t sramfull : 1; /* Reserved */
const uint32_t rdqueued : 1; /* Queued Indirect Write Operations */
uint32_t inddone : 1; /* Indirect Completion Status */
const uint32_t indcnt : 2; /* Completed Indirect Operations */
uint32_t : 24; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_INDWR. */
typedef volatile struct ALT_QSPI_INDWR_s ALT_QSPI_INDWR_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_INDWR register from the beginning of the component. */
#define ALT_QSPI_INDWR_OFST 0x70
/*
* Register : Indirect Write Transfer Watermark Register - indwrwater
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:-----------|:----------------
* [31:0] | RW | 0xffffffff | Watermark Value
*
*/
/*
* Field : Watermark Value - level
*
* This represents the maximum fill level of the SRAM before a DMA peripheral
* access is permitted. When the SRAM fill level falls below the watermark, an
* interrupt is also generated. This field can be disabled by writing a value of
* all ones. The units of this register are bytes.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWRWATER_LEVEL register field. */
#define ALT_QSPI_INDWRWATER_LEVEL_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWRWATER_LEVEL register field. */
#define ALT_QSPI_INDWRWATER_LEVEL_MSB 31
/* The width in bits of the ALT_QSPI_INDWRWATER_LEVEL register field. */
#define ALT_QSPI_INDWRWATER_LEVEL_WIDTH 32
/* The mask used to set the ALT_QSPI_INDWRWATER_LEVEL register field value. */
#define ALT_QSPI_INDWRWATER_LEVEL_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_INDWRWATER_LEVEL register field value. */
#define ALT_QSPI_INDWRWATER_LEVEL_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_INDWRWATER_LEVEL register field. */
#define ALT_QSPI_INDWRWATER_LEVEL_RESET 0xffffffff
/* Extracts the ALT_QSPI_INDWRWATER_LEVEL field value from a register. */
#define ALT_QSPI_INDWRWATER_LEVEL_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_INDWRWATER_LEVEL register field value suitable for setting the register. */
#define ALT_QSPI_INDWRWATER_LEVEL_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_INDWRWATER.
*/
struct ALT_QSPI_INDWRWATER_s
{
uint32_t level : 32; /* Watermark Value */
};
/* The typedef declaration for register ALT_QSPI_INDWRWATER. */
typedef volatile struct ALT_QSPI_INDWRWATER_s ALT_QSPI_INDWRWATER_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_INDWRWATER register from the beginning of the component. */
#define ALT_QSPI_INDWRWATER_OFST 0x74
/*
* Register : Indirect Write Transfer Start Address Register - indwrstaddr
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:-------------------------
* [31:0] | RW | 0x0 | Start of Indirect Access
*
*/
/*
* Field : Start of Indirect Access - addr
*
* This is the start address from which the indirect access will commence its write
* operation.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWRSTADDR_ADDR register field. */
#define ALT_QSPI_INDWRSTADDR_ADDR_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWRSTADDR_ADDR register field. */
#define ALT_QSPI_INDWRSTADDR_ADDR_MSB 31
/* The width in bits of the ALT_QSPI_INDWRSTADDR_ADDR register field. */
#define ALT_QSPI_INDWRSTADDR_ADDR_WIDTH 32
/* The mask used to set the ALT_QSPI_INDWRSTADDR_ADDR register field value. */
#define ALT_QSPI_INDWRSTADDR_ADDR_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_INDWRSTADDR_ADDR register field value. */
#define ALT_QSPI_INDWRSTADDR_ADDR_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_INDWRSTADDR_ADDR register field. */
#define ALT_QSPI_INDWRSTADDR_ADDR_RESET 0x0
/* Extracts the ALT_QSPI_INDWRSTADDR_ADDR field value from a register. */
#define ALT_QSPI_INDWRSTADDR_ADDR_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_INDWRSTADDR_ADDR register field value suitable for setting the register. */
#define ALT_QSPI_INDWRSTADDR_ADDR_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_INDWRSTADDR.
*/
struct ALT_QSPI_INDWRSTADDR_s
{
uint32_t addr : 32; /* Start of Indirect Access */
};
/* The typedef declaration for register ALT_QSPI_INDWRSTADDR. */
typedef volatile struct ALT_QSPI_INDWRSTADDR_s ALT_QSPI_INDWRSTADDR_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_INDWRSTADDR register from the beginning of the component. */
#define ALT_QSPI_INDWRSTADDR_OFST 0x78
/*
* Register : Indirect Write Transfer Count Register - indwrcnt
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:-------------------------
* [31:0] | RW | 0x0 | Indirect Number of Bytes
*
*/
/*
* Field : Indirect Number of Bytes - value
*
* This is the number of bytes that the indirect access will consume. This can be
* bigger than the configured size of SRAM.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_INDWRCNT_VALUE register field. */
#define ALT_QSPI_INDWRCNT_VALUE_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_INDWRCNT_VALUE register field. */
#define ALT_QSPI_INDWRCNT_VALUE_MSB 31
/* The width in bits of the ALT_QSPI_INDWRCNT_VALUE register field. */
#define ALT_QSPI_INDWRCNT_VALUE_WIDTH 32
/* The mask used to set the ALT_QSPI_INDWRCNT_VALUE register field value. */
#define ALT_QSPI_INDWRCNT_VALUE_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_INDWRCNT_VALUE register field value. */
#define ALT_QSPI_INDWRCNT_VALUE_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_INDWRCNT_VALUE register field. */
#define ALT_QSPI_INDWRCNT_VALUE_RESET 0x0
/* Extracts the ALT_QSPI_INDWRCNT_VALUE field value from a register. */
#define ALT_QSPI_INDWRCNT_VALUE_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_INDWRCNT_VALUE register field value suitable for setting the register. */
#define ALT_QSPI_INDWRCNT_VALUE_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_INDWRCNT.
*/
struct ALT_QSPI_INDWRCNT_s
{
uint32_t value : 32; /* Indirect Number of Bytes */
};
/* The typedef declaration for register ALT_QSPI_INDWRCNT. */
typedef volatile struct ALT_QSPI_INDWRCNT_s ALT_QSPI_INDWRCNT_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_INDWRCNT register from the beginning of the component. */
#define ALT_QSPI_INDWRCNT_OFST 0x7c
/*
* Register : Flash Command Register - flashcmd
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:------|:---------------------------
* [0] | RW | 0x0 | Execute Command
* [1] | R | 0x0 | Command Execution Status
* [6:2] | ??? | 0x0 | *UNDEFINED*
* [11:7] | RW | 0x0 | Number of Dummy Bytes
* [14:12] | RW | 0x0 | Number of Write Data Bytes
* [15] | RW | 0x0 | Write Data Enable
* [17:16] | RW | 0x0 | Number of Address Bytes
* [18] | RW | 0x0 | Mode Bit Enable
* [19] | RW | 0x0 | Command Address Enable
* [22:20] | RW | 0x0 | Number of Read Data Bytes
* [23] | RW | 0x0 | Read Data Enable
* [31:24] | RW | 0x0 | Command Opcode
*
*/
/*
* Field : Execute Command - execcmd
*
* Execute the command.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------------|:------|:----------------
* ALT_QSPI_FLSHCMD_EXECCMD_E_EXECUTE | 0x1 | Execute Command
* ALT_QSPI_FLSHCMD_EXECCMD_E_NOACTION | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_EXECCMD
*
* Execute Command
*/
#define ALT_QSPI_FLSHCMD_EXECCMD_E_EXECUTE 0x1
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_EXECCMD
*
* No Action
*/
#define ALT_QSPI_FLSHCMD_EXECCMD_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_EXECCMD register field. */
#define ALT_QSPI_FLSHCMD_EXECCMD_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_EXECCMD register field. */
#define ALT_QSPI_FLSHCMD_EXECCMD_MSB 0
/* The width in bits of the ALT_QSPI_FLSHCMD_EXECCMD register field. */
#define ALT_QSPI_FLSHCMD_EXECCMD_WIDTH 1
/* The mask used to set the ALT_QSPI_FLSHCMD_EXECCMD register field value. */
#define ALT_QSPI_FLSHCMD_EXECCMD_SET_MSK 0x00000001
/* The mask used to clear the ALT_QSPI_FLSHCMD_EXECCMD register field value. */
#define ALT_QSPI_FLSHCMD_EXECCMD_CLR_MSK 0xfffffffe
/* The reset value of the ALT_QSPI_FLSHCMD_EXECCMD register field. */
#define ALT_QSPI_FLSHCMD_EXECCMD_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_EXECCMD field value from a register. */
#define ALT_QSPI_FLSHCMD_EXECCMD_GET(value) (((value) & 0x00000001) >> 0)
/* Produces a ALT_QSPI_FLSHCMD_EXECCMD register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_EXECCMD_SET(value) (((value) << 0) & 0x00000001)
/*
* Field : Command Execution Status - cmdexecstat
*
* Command execution in progress.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-------------------------------------------|:------|:-------------------------
* ALT_QSPI_FLSHCMD_CMDEXECSTAT_E_EXECUTESTAT | 0x1 | Command Execution Status
* ALT_QSPI_FLSHCMD_CMDEXECSTAT_E_NOACTION | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_CMDEXECSTAT
*
* Command Execution Status
*/
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_E_EXECUTESTAT 0x1
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_CMDEXECSTAT
*
* No Action
*/
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_CMDEXECSTAT register field. */
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_LSB 1
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_CMDEXECSTAT register field. */
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_MSB 1
/* The width in bits of the ALT_QSPI_FLSHCMD_CMDEXECSTAT register field. */
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_WIDTH 1
/* The mask used to set the ALT_QSPI_FLSHCMD_CMDEXECSTAT register field value. */
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_SET_MSK 0x00000002
/* The mask used to clear the ALT_QSPI_FLSHCMD_CMDEXECSTAT register field value. */
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_CLR_MSK 0xfffffffd
/* The reset value of the ALT_QSPI_FLSHCMD_CMDEXECSTAT register field. */
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_CMDEXECSTAT field value from a register. */
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_GET(value) (((value) & 0x00000002) >> 1)
/* Produces a ALT_QSPI_FLSHCMD_CMDEXECSTAT register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_CMDEXECSTAT_SET(value) (((value) << 1) & 0x00000002)
/*
* Field : Number of Dummy Bytes - numdummybytes
*
* Set to the number of dummy bytes required This should be setup before triggering
* the command via the execute field of this register.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_NUMDUMMYBYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMDUMMYBYTES_LSB 7
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_NUMDUMMYBYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMDUMMYBYTES_MSB 11
/* The width in bits of the ALT_QSPI_FLSHCMD_NUMDUMMYBYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMDUMMYBYTES_WIDTH 5
/* The mask used to set the ALT_QSPI_FLSHCMD_NUMDUMMYBYTES register field value. */
#define ALT_QSPI_FLSHCMD_NUMDUMMYBYTES_SET_MSK 0x00000f80
/* The mask used to clear the ALT_QSPI_FLSHCMD_NUMDUMMYBYTES register field value. */
#define ALT_QSPI_FLSHCMD_NUMDUMMYBYTES_CLR_MSK 0xfffff07f
/* The reset value of the ALT_QSPI_FLSHCMD_NUMDUMMYBYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMDUMMYBYTES_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_NUMDUMMYBYTES field value from a register. */
#define ALT_QSPI_FLSHCMD_NUMDUMMYBYTES_GET(value) (((value) & 0x00000f80) >> 7)
/* Produces a ALT_QSPI_FLSHCMD_NUMDUMMYBYTES register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_NUMDUMMYBYTES_SET(value) (((value) << 7) & 0x00000f80)
/*
* Field : Number of Write Data Bytes - numwrdatabytes
*
* Up to 8 Data bytes may be written using this command.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------------------|:------|:-------------
* ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE1 | 0x0 | Write 1 Byte
* ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE2 | 0x1 | Write 2 Byte
* ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE3 | 0x2 | Write 3 Byte
* ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE4 | 0x3 | Write 4 Byte
* ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE5 | 0x4 | Write 5 Byte
* ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE6 | 0x5 | Write 6 Byte
* ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE7 | 0x6 | Write 7 Byte
* ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE8 | 0x7 | Write 8 Byte
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMWRDATABYTES
*
* Write 1 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE1 0x0
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMWRDATABYTES
*
* Write 2 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE2 0x1
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMWRDATABYTES
*
* Write 3 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE3 0x2
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMWRDATABYTES
*
* Write 4 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE4 0x3
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMWRDATABYTES
*
* Write 5 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE5 0x4
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMWRDATABYTES
*
* Write 6 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE6 0x5
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMWRDATABYTES
*
* Write 7 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE7 0x6
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMWRDATABYTES
*
* Write 8 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_E_WRBYTE8 0x7
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_NUMWRDATABYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_LSB 12
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_NUMWRDATABYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_MSB 14
/* The width in bits of the ALT_QSPI_FLSHCMD_NUMWRDATABYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_WIDTH 3
/* The mask used to set the ALT_QSPI_FLSHCMD_NUMWRDATABYTES register field value. */
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_SET_MSK 0x00007000
/* The mask used to clear the ALT_QSPI_FLSHCMD_NUMWRDATABYTES register field value. */
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_CLR_MSK 0xffff8fff
/* The reset value of the ALT_QSPI_FLSHCMD_NUMWRDATABYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_NUMWRDATABYTES field value from a register. */
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_GET(value) (((value) & 0x00007000) >> 12)
/* Produces a ALT_QSPI_FLSHCMD_NUMWRDATABYTES register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_NUMWRDATABYTES_SET(value) (((value) << 12) & 0x00007000)
/*
* Field : Write Data Enable - enwrdata
*
* Set to 1 if the command specified in the command opcode field requires write
* data bytes to be sent to the device.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------------|:------|:----------------------------------
* ALT_QSPI_FLSHCMD_ENWRDATA_E_WRDATABYTES | 0x1 | Command requires write data bytes
* ALT_QSPI_FLSHCMD_ENWRDATA_E_NOACTION | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_ENWRDATA
*
* Command requires write data bytes
*/
#define ALT_QSPI_FLSHCMD_ENWRDATA_E_WRDATABYTES 0x1
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_ENWRDATA
*
* No Action
*/
#define ALT_QSPI_FLSHCMD_ENWRDATA_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_ENWRDATA register field. */
#define ALT_QSPI_FLSHCMD_ENWRDATA_LSB 15
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_ENWRDATA register field. */
#define ALT_QSPI_FLSHCMD_ENWRDATA_MSB 15
/* The width in bits of the ALT_QSPI_FLSHCMD_ENWRDATA register field. */
#define ALT_QSPI_FLSHCMD_ENWRDATA_WIDTH 1
/* The mask used to set the ALT_QSPI_FLSHCMD_ENWRDATA register field value. */
#define ALT_QSPI_FLSHCMD_ENWRDATA_SET_MSK 0x00008000
/* The mask used to clear the ALT_QSPI_FLSHCMD_ENWRDATA register field value. */
#define ALT_QSPI_FLSHCMD_ENWRDATA_CLR_MSK 0xffff7fff
/* The reset value of the ALT_QSPI_FLSHCMD_ENWRDATA register field. */
#define ALT_QSPI_FLSHCMD_ENWRDATA_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_ENWRDATA field value from a register. */
#define ALT_QSPI_FLSHCMD_ENWRDATA_GET(value) (((value) & 0x00008000) >> 15)
/* Produces a ALT_QSPI_FLSHCMD_ENWRDATA register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_ENWRDATA_SET(value) (((value) << 15) & 0x00008000)
/*
* Field : Number of Address Bytes - numaddrbytes
*
* Set to the number of address bytes required (the address itself is programmed in
* the FLASH COMMAND ADDRESS REGISTERS). This should be setup before triggering the
* command via bit 0 of this register. 2'b00 : 1 address byte 2'b01 : 2 address
* bytes 2'b10 : 3 address bytes 2'b11 : 4 address bytes
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------------------|:------|:----------------------
* ALT_QSPI_FLSHCMD_NUMADDRBYTES_E_ADDRBYTE1 | 0x0 | Write 1 Address Byte
* ALT_QSPI_FLSHCMD_NUMADDRBYTES_E_ADDRBYTE2 | 0x1 | Write 2 Address Bytes
* ALT_QSPI_FLSHCMD_NUMADDRBYTES_E_ADDRBYTE3 | 0x2 | Write 3 Address Bytes
* ALT_QSPI_FLSHCMD_NUMADDRBYTES_E_ADDRBYTE4 | 0x3 | Write 4 Address Bytes
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMADDRBYTES
*
* Write 1 Address Byte
*/
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_E_ADDRBYTE1 0x0
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMADDRBYTES
*
* Write 2 Address Bytes
*/
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_E_ADDRBYTE2 0x1
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMADDRBYTES
*
* Write 3 Address Bytes
*/
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_E_ADDRBYTE3 0x2
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMADDRBYTES
*
* Write 4 Address Bytes
*/
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_E_ADDRBYTE4 0x3
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_NUMADDRBYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_LSB 16
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_NUMADDRBYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_MSB 17
/* The width in bits of the ALT_QSPI_FLSHCMD_NUMADDRBYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_WIDTH 2
/* The mask used to set the ALT_QSPI_FLSHCMD_NUMADDRBYTES register field value. */
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_SET_MSK 0x00030000
/* The mask used to clear the ALT_QSPI_FLSHCMD_NUMADDRBYTES register field value. */
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_CLR_MSK 0xfffcffff
/* The reset value of the ALT_QSPI_FLSHCMD_NUMADDRBYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_NUMADDRBYTES field value from a register. */
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_GET(value) (((value) & 0x00030000) >> 16)
/* Produces a ALT_QSPI_FLSHCMD_NUMADDRBYTES register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_NUMADDRBYTES_SET(value) (((value) << 16) & 0x00030000)
/*
* Field : Mode Bit Enable - enmodebit
*
* Set to 1 to ensure the mode bits as defined in the Mode Bit Configuration
* register are sent following the address bytes.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :---------------------------------|:------|:-------------------------------
* ALT_QSPI_FLSHCMD_ENMODBIT_E_END | 0x1 | Mode Bit follows address bytes
* ALT_QSPI_FLSHCMD_ENMODBIT_E_DISD | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_ENMODBIT
*
* Mode Bit follows address bytes
*/
#define ALT_QSPI_FLSHCMD_ENMODBIT_E_END 0x1
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_ENMODBIT
*
* No Action
*/
#define ALT_QSPI_FLSHCMD_ENMODBIT_E_DISD 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_ENMODBIT register field. */
#define ALT_QSPI_FLSHCMD_ENMODBIT_LSB 18
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_ENMODBIT register field. */
#define ALT_QSPI_FLSHCMD_ENMODBIT_MSB 18
/* The width in bits of the ALT_QSPI_FLSHCMD_ENMODBIT register field. */
#define ALT_QSPI_FLSHCMD_ENMODBIT_WIDTH 1
/* The mask used to set the ALT_QSPI_FLSHCMD_ENMODBIT register field value. */
#define ALT_QSPI_FLSHCMD_ENMODBIT_SET_MSK 0x00040000
/* The mask used to clear the ALT_QSPI_FLSHCMD_ENMODBIT register field value. */
#define ALT_QSPI_FLSHCMD_ENMODBIT_CLR_MSK 0xfffbffff
/* The reset value of the ALT_QSPI_FLSHCMD_ENMODBIT register field. */
#define ALT_QSPI_FLSHCMD_ENMODBIT_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_ENMODBIT field value from a register. */
#define ALT_QSPI_FLSHCMD_ENMODBIT_GET(value) (((value) & 0x00040000) >> 18)
/* Produces a ALT_QSPI_FLSHCMD_ENMODBIT register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_ENMODBIT_SET(value) (((value) << 18) & 0x00040000)
/*
* Field : Command Address Enable - encmdaddr
*
* If enabled, the command specified in bits 31:24 requires an address. This should
* be setup before triggering the command via writing a 1 to the execute field.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :----------------------------------|:------|:---------------------------------------
* ALT_QSPI_FLSHCMD_ENCMDADDR_E_END | 0x1 | Command in bits 31:24 requires address
* ALT_QSPI_FLSHCMD_ENCMDADDR_E_DISD | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_ENCMDADDR
*
* Command in bits 31:24 requires address
*/
#define ALT_QSPI_FLSHCMD_ENCMDADDR_E_END 0x1
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_ENCMDADDR
*
* No Action
*/
#define ALT_QSPI_FLSHCMD_ENCMDADDR_E_DISD 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_ENCMDADDR register field. */
#define ALT_QSPI_FLSHCMD_ENCMDADDR_LSB 19
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_ENCMDADDR register field. */
#define ALT_QSPI_FLSHCMD_ENCMDADDR_MSB 19
/* The width in bits of the ALT_QSPI_FLSHCMD_ENCMDADDR register field. */
#define ALT_QSPI_FLSHCMD_ENCMDADDR_WIDTH 1
/* The mask used to set the ALT_QSPI_FLSHCMD_ENCMDADDR register field value. */
#define ALT_QSPI_FLSHCMD_ENCMDADDR_SET_MSK 0x00080000
/* The mask used to clear the ALT_QSPI_FLSHCMD_ENCMDADDR register field value. */
#define ALT_QSPI_FLSHCMD_ENCMDADDR_CLR_MSK 0xfff7ffff
/* The reset value of the ALT_QSPI_FLSHCMD_ENCMDADDR register field. */
#define ALT_QSPI_FLSHCMD_ENCMDADDR_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_ENCMDADDR field value from a register. */
#define ALT_QSPI_FLSHCMD_ENCMDADDR_GET(value) (((value) & 0x00080000) >> 19)
/* Produces a ALT_QSPI_FLSHCMD_ENCMDADDR register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_ENCMDADDR_SET(value) (((value) << 19) & 0x00080000)
/*
* Field : Number of Read Data Bytes - numrddatabytes
*
* Up to 8 data bytes may be read using this command. Set to 0 for 1 byte and 7 for
* 8 bytes.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :------------------------------------------|:------|:------------
* ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE1 | 0x0 | Read 1 Byte
* ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE2 | 0x1 | Read 2 Byte
* ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE3 | 0x2 | Read 3 Byte
* ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE4 | 0x3 | Read 4 Byte
* ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE5 | 0x4 | Read 5 Byte
* ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE6 | 0x5 | Read 6 Byte
* ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE7 | 0x6 | Read 7 Byte
* ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE8 | 0x7 | Read 8 Byte
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMRDDATABYTES
*
* Read 1 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE1 0x0
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMRDDATABYTES
*
* Read 2 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE2 0x1
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMRDDATABYTES
*
* Read 3 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE3 0x2
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMRDDATABYTES
*
* Read 4 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE4 0x3
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMRDDATABYTES
*
* Read 5 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE5 0x4
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMRDDATABYTES
*
* Read 6 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE6 0x5
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMRDDATABYTES
*
* Read 7 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE7 0x6
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_NUMRDDATABYTES
*
* Read 8 Byte
*/
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_E_RDBYTE8 0x7
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_NUMRDDATABYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_LSB 20
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_NUMRDDATABYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_MSB 22
/* The width in bits of the ALT_QSPI_FLSHCMD_NUMRDDATABYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_WIDTH 3
/* The mask used to set the ALT_QSPI_FLSHCMD_NUMRDDATABYTES register field value. */
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_SET_MSK 0x00700000
/* The mask used to clear the ALT_QSPI_FLSHCMD_NUMRDDATABYTES register field value. */
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_CLR_MSK 0xff8fffff
/* The reset value of the ALT_QSPI_FLSHCMD_NUMRDDATABYTES register field. */
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_NUMRDDATABYTES field value from a register. */
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_GET(value) (((value) & 0x00700000) >> 20)
/* Produces a ALT_QSPI_FLSHCMD_NUMRDDATABYTES register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_NUMRDDATABYTES_SET(value) (((value) << 20) & 0x00700000)
/*
* Field : Read Data Enable - enrddata
*
* If enabled, the command specified in the command opcode field (bits 31:24)
* requires read data bytes to be received from the device.
*
* Field Enumeration Values:
*
* Enum | Value | Description
* :-------------------------------------|:------|:---------------------------
* ALT_QSPI_FLSHCMD_ENRDDATA_E_EN | 0x1 | Command Requires read data
* ALT_QSPI_FLSHCMD_ENRDDATA_E_NOACTION | 0x0 | No Action
*
* Field Access Macros:
*
*/
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_ENRDDATA
*
* Command Requires read data
*/
#define ALT_QSPI_FLSHCMD_ENRDDATA_E_EN 0x1
/*
* Enumerated value for register field ALT_QSPI_FLSHCMD_ENRDDATA
*
* No Action
*/
#define ALT_QSPI_FLSHCMD_ENRDDATA_E_NOACTION 0x0
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_ENRDDATA register field. */
#define ALT_QSPI_FLSHCMD_ENRDDATA_LSB 23
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_ENRDDATA register field. */
#define ALT_QSPI_FLSHCMD_ENRDDATA_MSB 23
/* The width in bits of the ALT_QSPI_FLSHCMD_ENRDDATA register field. */
#define ALT_QSPI_FLSHCMD_ENRDDATA_WIDTH 1
/* The mask used to set the ALT_QSPI_FLSHCMD_ENRDDATA register field value. */
#define ALT_QSPI_FLSHCMD_ENRDDATA_SET_MSK 0x00800000
/* The mask used to clear the ALT_QSPI_FLSHCMD_ENRDDATA register field value. */
#define ALT_QSPI_FLSHCMD_ENRDDATA_CLR_MSK 0xff7fffff
/* The reset value of the ALT_QSPI_FLSHCMD_ENRDDATA register field. */
#define ALT_QSPI_FLSHCMD_ENRDDATA_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_ENRDDATA field value from a register. */
#define ALT_QSPI_FLSHCMD_ENRDDATA_GET(value) (((value) & 0x00800000) >> 23)
/* Produces a ALT_QSPI_FLSHCMD_ENRDDATA register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_ENRDDATA_SET(value) (((value) << 23) & 0x00800000)
/*
* Field : Command Opcode - cmdopcode
*
* The command opcode field should be setup before triggering the command. For
* example, 0x20 maps to SubSector Erase. Writeing to the execute field (bit 0) of
* this register launches the command. NOTE : Using this approach to issue commands
* to the device will make use of the instruction type of the device instruction
* configuration register. If this field is set to 2'b00, then the command opcode,
* command address, command dummy bytes and command data will all be transferred in
* a serial fashion. If this field is set to 2'b01, then the command opcode,
* command address, command dummy bytes and command data will all be transferred in
* parallel using DQ0 and DQ1 pins. If this field is set to 2'b10, then the command
* opcode, command address, command dummy bytes and command data will all be
* transferred in parallel using DQ0, DQ1, DQ2 and DQ3 pins.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMD_CMDOPCODE register field. */
#define ALT_QSPI_FLSHCMD_CMDOPCODE_LSB 24
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMD_CMDOPCODE register field. */
#define ALT_QSPI_FLSHCMD_CMDOPCODE_MSB 31
/* The width in bits of the ALT_QSPI_FLSHCMD_CMDOPCODE register field. */
#define ALT_QSPI_FLSHCMD_CMDOPCODE_WIDTH 8
/* The mask used to set the ALT_QSPI_FLSHCMD_CMDOPCODE register field value. */
#define ALT_QSPI_FLSHCMD_CMDOPCODE_SET_MSK 0xff000000
/* The mask used to clear the ALT_QSPI_FLSHCMD_CMDOPCODE register field value. */
#define ALT_QSPI_FLSHCMD_CMDOPCODE_CLR_MSK 0x00ffffff
/* The reset value of the ALT_QSPI_FLSHCMD_CMDOPCODE register field. */
#define ALT_QSPI_FLSHCMD_CMDOPCODE_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMD_CMDOPCODE field value from a register. */
#define ALT_QSPI_FLSHCMD_CMDOPCODE_GET(value) (((value) & 0xff000000) >> 24)
/* Produces a ALT_QSPI_FLSHCMD_CMDOPCODE register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMD_CMDOPCODE_SET(value) (((value) << 24) & 0xff000000)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_FLSHCMD.
*/
struct ALT_QSPI_FLSHCMD_s
{
uint32_t execcmd : 1; /* Execute Command */
const uint32_t cmdexecstat : 1; /* Command Execution Status */
uint32_t : 5; /* *UNDEFINED* */
uint32_t numdummybytes : 5; /* Number of Dummy Bytes */
uint32_t numwrdatabytes : 3; /* Number of Write Data Bytes */
uint32_t enwrdata : 1; /* Write Data Enable */
uint32_t numaddrbytes : 2; /* Number of Address Bytes */
uint32_t enmodebit : 1; /* Mode Bit Enable */
uint32_t encmdaddr : 1; /* Command Address Enable */
uint32_t numrddatabytes : 3; /* Number of Read Data Bytes */
uint32_t enrddata : 1; /* Read Data Enable */
uint32_t cmdopcode : 8; /* Command Opcode */
};
/* The typedef declaration for register ALT_QSPI_FLSHCMD. */
typedef volatile struct ALT_QSPI_FLSHCMD_s ALT_QSPI_FLSHCMD_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_FLSHCMD register from the beginning of the component. */
#define ALT_QSPI_FLSHCMD_OFST 0x90
/*
* Register : Flash Command Address Registers - flashcmdaddr
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:----------------
* [31:0] | RW | 0x0 | Command Address
*
*/
/*
* Field : Command Address - addr
*
* This should be setup before triggering the command with execute field (bit 0) of
* the Flash Command Control register. It is the address used by the command
* specified in the opcode field (bits 31:24) of the Flash Command Control
* register.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMDADDR_ADDR register field. */
#define ALT_QSPI_FLSHCMDADDR_ADDR_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMDADDR_ADDR register field. */
#define ALT_QSPI_FLSHCMDADDR_ADDR_MSB 31
/* The width in bits of the ALT_QSPI_FLSHCMDADDR_ADDR register field. */
#define ALT_QSPI_FLSHCMDADDR_ADDR_WIDTH 32
/* The mask used to set the ALT_QSPI_FLSHCMDADDR_ADDR register field value. */
#define ALT_QSPI_FLSHCMDADDR_ADDR_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_FLSHCMDADDR_ADDR register field value. */
#define ALT_QSPI_FLSHCMDADDR_ADDR_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_FLSHCMDADDR_ADDR register field. */
#define ALT_QSPI_FLSHCMDADDR_ADDR_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMDADDR_ADDR field value from a register. */
#define ALT_QSPI_FLSHCMDADDR_ADDR_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_FLSHCMDADDR_ADDR register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMDADDR_ADDR_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_FLSHCMDADDR.
*/
struct ALT_QSPI_FLSHCMDADDR_s
{
uint32_t addr : 32; /* Command Address */
};
/* The typedef declaration for register ALT_QSPI_FLSHCMDADDR. */
typedef volatile struct ALT_QSPI_FLSHCMDADDR_s ALT_QSPI_FLSHCMDADDR_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_FLSHCMDADDR register from the beginning of the component. */
#define ALT_QSPI_FLSHCMDADDR_OFST 0x94
/*
* Register : Flash Command Read Data Register (Lower) - flashcmdrddatalo
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:-------------------------------
* [31:0] | RW | 0x0 | Command Read Data (Lower byte)
*
*/
/*
* Field : Command Read Data (Lower byte) - data
*
* This is the data that is returned by the flash device for any status or
* configuration read operation carried out by triggering the event in the control
* register. The register will be valid when the polling bit in the control
* register is low.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMDRDDATALO_DATA register field. */
#define ALT_QSPI_FLSHCMDRDDATALO_DATA_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMDRDDATALO_DATA register field. */
#define ALT_QSPI_FLSHCMDRDDATALO_DATA_MSB 31
/* The width in bits of the ALT_QSPI_FLSHCMDRDDATALO_DATA register field. */
#define ALT_QSPI_FLSHCMDRDDATALO_DATA_WIDTH 32
/* The mask used to set the ALT_QSPI_FLSHCMDRDDATALO_DATA register field value. */
#define ALT_QSPI_FLSHCMDRDDATALO_DATA_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_FLSHCMDRDDATALO_DATA register field value. */
#define ALT_QSPI_FLSHCMDRDDATALO_DATA_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_FLSHCMDRDDATALO_DATA register field. */
#define ALT_QSPI_FLSHCMDRDDATALO_DATA_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMDRDDATALO_DATA field value from a register. */
#define ALT_QSPI_FLSHCMDRDDATALO_DATA_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_FLSHCMDRDDATALO_DATA register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMDRDDATALO_DATA_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_FLSHCMDRDDATALO.
*/
struct ALT_QSPI_FLSHCMDRDDATALO_s
{
uint32_t data : 32; /* Command Read Data (Lower byte) */
};
/* The typedef declaration for register ALT_QSPI_FLSHCMDRDDATALO. */
typedef volatile struct ALT_QSPI_FLSHCMDRDDATALO_s ALT_QSPI_FLSHCMDRDDATALO_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_FLSHCMDRDDATALO register from the beginning of the component. */
#define ALT_QSPI_FLSHCMDRDDATALO_OFST 0xa0
/*
* Register : Flash Command Read Data Register (Upper) - flashcmdrddataup
*
* Device Instruction Register
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:-------------------------------
* [31:0] | RW | 0x0 | Command Read Data (Upper byte)
*
*/
/*
* Field : Command Read Data (Upper byte) - data
*
* This is the data that is returned by the FLASH device for any status or
* configuration read operation carried out by triggering the event in the control
* register. The register will be valid when the polling bit in the control
* register is low.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMDRDDATAUP_DATA register field. */
#define ALT_QSPI_FLSHCMDRDDATAUP_DATA_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMDRDDATAUP_DATA register field. */
#define ALT_QSPI_FLSHCMDRDDATAUP_DATA_MSB 31
/* The width in bits of the ALT_QSPI_FLSHCMDRDDATAUP_DATA register field. */
#define ALT_QSPI_FLSHCMDRDDATAUP_DATA_WIDTH 32
/* The mask used to set the ALT_QSPI_FLSHCMDRDDATAUP_DATA register field value. */
#define ALT_QSPI_FLSHCMDRDDATAUP_DATA_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_FLSHCMDRDDATAUP_DATA register field value. */
#define ALT_QSPI_FLSHCMDRDDATAUP_DATA_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_FLSHCMDRDDATAUP_DATA register field. */
#define ALT_QSPI_FLSHCMDRDDATAUP_DATA_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMDRDDATAUP_DATA field value from a register. */
#define ALT_QSPI_FLSHCMDRDDATAUP_DATA_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_FLSHCMDRDDATAUP_DATA register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMDRDDATAUP_DATA_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_FLSHCMDRDDATAUP.
*/
struct ALT_QSPI_FLSHCMDRDDATAUP_s
{
uint32_t data : 32; /* Command Read Data (Upper byte) */
};
/* The typedef declaration for register ALT_QSPI_FLSHCMDRDDATAUP. */
typedef volatile struct ALT_QSPI_FLSHCMDRDDATAUP_s ALT_QSPI_FLSHCMDRDDATAUP_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_FLSHCMDRDDATAUP register from the beginning of the component. */
#define ALT_QSPI_FLSHCMDRDDATAUP_OFST 0xa4
/*
* Register : Flash Command Write Data Register (Lower) - flashcmdwrdatalo
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:------------------------------
* [31:0] | RW | 0x0 | Command Write Data Lower Byte
*
*/
/*
* Field : Command Write Data Lower Byte - data
*
* This is the command write data lower byte. This should be setup before
* triggering the command with execute field (bit 0) of the Flash Command Control
* register. It is the data that is to be written to the flash for any status or
* configuration write operation carried out by triggering the event in the Flash
* Command Control register.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMDWRDATALO_DATA register field. */
#define ALT_QSPI_FLSHCMDWRDATALO_DATA_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMDWRDATALO_DATA register field. */
#define ALT_QSPI_FLSHCMDWRDATALO_DATA_MSB 31
/* The width in bits of the ALT_QSPI_FLSHCMDWRDATALO_DATA register field. */
#define ALT_QSPI_FLSHCMDWRDATALO_DATA_WIDTH 32
/* The mask used to set the ALT_QSPI_FLSHCMDWRDATALO_DATA register field value. */
#define ALT_QSPI_FLSHCMDWRDATALO_DATA_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_FLSHCMDWRDATALO_DATA register field value. */
#define ALT_QSPI_FLSHCMDWRDATALO_DATA_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_FLSHCMDWRDATALO_DATA register field. */
#define ALT_QSPI_FLSHCMDWRDATALO_DATA_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMDWRDATALO_DATA field value from a register. */
#define ALT_QSPI_FLSHCMDWRDATALO_DATA_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_FLSHCMDWRDATALO_DATA register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMDWRDATALO_DATA_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_FLSHCMDWRDATALO.
*/
struct ALT_QSPI_FLSHCMDWRDATALO_s
{
uint32_t data : 32; /* Command Write Data Lower Byte */
};
/* The typedef declaration for register ALT_QSPI_FLSHCMDWRDATALO. */
typedef volatile struct ALT_QSPI_FLSHCMDWRDATALO_s ALT_QSPI_FLSHCMDWRDATALO_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_FLSHCMDWRDATALO register from the beginning of the component. */
#define ALT_QSPI_FLSHCMDWRDATALO_OFST 0xa8
/*
* Register : Flash Command Write Data Register (Upper) - flashcmdwrdataup
*
* Register Layout
*
* Bits | Access | Reset | Description
* :-------|:-------|:------|:------------------------------
* [31:0] | RW | 0x0 | ALT_QSPI_FLSHCMDWRDATAUP_DATA
*
*/
/*
* Field : data
*
* This is the command write data upper byte. This should be setup before
* triggering the command with execute field (bit 0) of the Flash Command Control
* register. It is the data that is to be written to the flash for any status or
* configuration write operation carried out by triggering the event in the Flash
* Command Control register.
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_FLSHCMDWRDATAUP_DATA register field. */
#define ALT_QSPI_FLSHCMDWRDATAUP_DATA_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_FLSHCMDWRDATAUP_DATA register field. */
#define ALT_QSPI_FLSHCMDWRDATAUP_DATA_MSB 31
/* The width in bits of the ALT_QSPI_FLSHCMDWRDATAUP_DATA register field. */
#define ALT_QSPI_FLSHCMDWRDATAUP_DATA_WIDTH 32
/* The mask used to set the ALT_QSPI_FLSHCMDWRDATAUP_DATA register field value. */
#define ALT_QSPI_FLSHCMDWRDATAUP_DATA_SET_MSK 0xffffffff
/* The mask used to clear the ALT_QSPI_FLSHCMDWRDATAUP_DATA register field value. */
#define ALT_QSPI_FLSHCMDWRDATAUP_DATA_CLR_MSK 0x00000000
/* The reset value of the ALT_QSPI_FLSHCMDWRDATAUP_DATA register field. */
#define ALT_QSPI_FLSHCMDWRDATAUP_DATA_RESET 0x0
/* Extracts the ALT_QSPI_FLSHCMDWRDATAUP_DATA field value from a register. */
#define ALT_QSPI_FLSHCMDWRDATAUP_DATA_GET(value) (((value) & 0xffffffff) >> 0)
/* Produces a ALT_QSPI_FLSHCMDWRDATAUP_DATA register field value suitable for setting the register. */
#define ALT_QSPI_FLSHCMDWRDATAUP_DATA_SET(value) (((value) << 0) & 0xffffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_FLSHCMDWRDATAUP.
*/
struct ALT_QSPI_FLSHCMDWRDATAUP_s
{
uint32_t data : 32; /* ALT_QSPI_FLSHCMDWRDATAUP_DATA */
};
/* The typedef declaration for register ALT_QSPI_FLSHCMDWRDATAUP. */
typedef volatile struct ALT_QSPI_FLSHCMDWRDATAUP_s ALT_QSPI_FLSHCMDWRDATAUP_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_FLSHCMDWRDATAUP register from the beginning of the component. */
#define ALT_QSPI_FLSHCMDWRDATAUP_OFST 0xac
/*
* Register : Module ID Register - moduleid
*
* Register Layout
*
* Bits | Access | Reset | Description
* :--------|:-------|:-------|:-----------------
* [24:0] | R | 0x1001 | Module ID number
* [31:25] | ??? | 0x0 | *UNDEFINED*
*
*/
/*
* Field : Module ID number - value
*
* Field Access Macros:
*
*/
/* The Least Significant Bit (LSB) position of the ALT_QSPI_MODULEID_VALUE register field. */
#define ALT_QSPI_MODULEID_VALUE_LSB 0
/* The Most Significant Bit (MSB) position of the ALT_QSPI_MODULEID_VALUE register field. */
#define ALT_QSPI_MODULEID_VALUE_MSB 24
/* The width in bits of the ALT_QSPI_MODULEID_VALUE register field. */
#define ALT_QSPI_MODULEID_VALUE_WIDTH 25
/* The mask used to set the ALT_QSPI_MODULEID_VALUE register field value. */
#define ALT_QSPI_MODULEID_VALUE_SET_MSK 0x01ffffff
/* The mask used to clear the ALT_QSPI_MODULEID_VALUE register field value. */
#define ALT_QSPI_MODULEID_VALUE_CLR_MSK 0xfe000000
/* The reset value of the ALT_QSPI_MODULEID_VALUE register field. */
#define ALT_QSPI_MODULEID_VALUE_RESET 0x1001
/* Extracts the ALT_QSPI_MODULEID_VALUE field value from a register. */
#define ALT_QSPI_MODULEID_VALUE_GET(value) (((value) & 0x01ffffff) >> 0)
/* Produces a ALT_QSPI_MODULEID_VALUE register field value suitable for setting the register. */
#define ALT_QSPI_MODULEID_VALUE_SET(value) (((value) << 0) & 0x01ffffff)
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register ALT_QSPI_MODULEID.
*/
struct ALT_QSPI_MODULEID_s
{
const uint32_t value : 25; /* Module ID number */
uint32_t : 7; /* *UNDEFINED* */
};
/* The typedef declaration for register ALT_QSPI_MODULEID. */
typedef volatile struct ALT_QSPI_MODULEID_s ALT_QSPI_MODULEID_t;
#endif /* __ASSEMBLY__ */
/* The byte offset of the ALT_QSPI_MODULEID register from the beginning of the component. */
#define ALT_QSPI_MODULEID_OFST 0xfc
#ifndef __ASSEMBLY__
/*
* WARNING: The C register and register group struct declarations are provided for
* convenience and illustrative purposes. They should, however, be used with
* caution as the C language standard provides no guarantees about the alignment or
* atomicity of device memory accesses. The recommended practice for writing
* hardware drivers is to use the SoCAL access macros and alt_read_word() and
* alt_write_word() functions.
*
* The struct declaration for register group ALT_QSPI.
*/
struct ALT_QSPI_s
{
volatile ALT_QSPI_CFG_t cfg; /* ALT_QSPI_CFG */
volatile ALT_QSPI_DEVRD_t devrd; /* ALT_QSPI_DEVRD */
volatile ALT_QSPI_DEVWR_t devwr; /* ALT_QSPI_DEVWR */
volatile ALT_QSPI_DELAY_t delay; /* ALT_QSPI_DELAY */
volatile ALT_QSPI_RDDATACAP_t rddatacap; /* ALT_QSPI_RDDATACAP */
volatile ALT_QSPI_DEVSZ_t devsz; /* ALT_QSPI_DEVSZ */
volatile ALT_QSPI_SRAMPART_t srampart; /* ALT_QSPI_SRAMPART */
volatile ALT_QSPI_INDADDRTRIG_t indaddrtrig; /* ALT_QSPI_INDADDRTRIG */
volatile ALT_QSPI_DMAPER_t dmaper; /* ALT_QSPI_DMAPER */
volatile ALT_QSPI_REMAPADDR_t remapaddr; /* ALT_QSPI_REMAPADDR */
volatile ALT_QSPI_MODBIT_t modebit; /* ALT_QSPI_MODBIT */
volatile ALT_QSPI_SRAMFILL_t sramfill; /* ALT_QSPI_SRAMFILL */
volatile ALT_QSPI_TXTHRESH_t txthresh; /* ALT_QSPI_TXTHRESH */
volatile ALT_QSPI_RXTHRESH_t rxthresh; /* ALT_QSPI_RXTHRESH */
volatile uint32_t _pad_0x38_0x3f[2]; /* *UNDEFINED* */
volatile ALT_QSPI_IRQSTAT_t irqstat; /* ALT_QSPI_IRQSTAT */
volatile ALT_QSPI_IRQMSK_t irqmask; /* ALT_QSPI_IRQMSK */
volatile uint32_t _pad_0x48_0x4f[2]; /* *UNDEFINED* */
volatile ALT_QSPI_LOWWRPROT_t lowwrprot; /* ALT_QSPI_LOWWRPROT */
volatile ALT_QSPI_UPPWRPROT_t uppwrprot; /* ALT_QSPI_UPPWRPROT */
volatile ALT_QSPI_WRPROT_t wrprot; /* ALT_QSPI_WRPROT */
volatile uint32_t _pad_0x5c_0x5f; /* *UNDEFINED* */
volatile ALT_QSPI_INDRD_t indrd; /* ALT_QSPI_INDRD */
volatile ALT_QSPI_INDRDWATER_t indrdwater; /* ALT_QSPI_INDRDWATER */
volatile ALT_QSPI_INDRDSTADDR_t indrdstaddr; /* ALT_QSPI_INDRDSTADDR */
volatile ALT_QSPI_INDRDCNT_t indrdcnt; /* ALT_QSPI_INDRDCNT */
volatile ALT_QSPI_INDWR_t indwr; /* ALT_QSPI_INDWR */
volatile ALT_QSPI_INDWRWATER_t indwrwater; /* ALT_QSPI_INDWRWATER */
volatile ALT_QSPI_INDWRSTADDR_t indwrstaddr; /* ALT_QSPI_INDWRSTADDR */
volatile ALT_QSPI_INDWRCNT_t indwrcnt; /* ALT_QSPI_INDWRCNT */
volatile uint32_t _pad_0x80_0x8f[4]; /* *UNDEFINED* */
volatile ALT_QSPI_FLSHCMD_t flashcmd; /* ALT_QSPI_FLSHCMD */
volatile ALT_QSPI_FLSHCMDADDR_t flashcmdaddr; /* ALT_QSPI_FLSHCMDADDR */
volatile uint32_t _pad_0x98_0x9f[2]; /* *UNDEFINED* */
volatile ALT_QSPI_FLSHCMDRDDATALO_t flashcmdrddatalo; /* ALT_QSPI_FLSHCMDRDDATALO */
volatile ALT_QSPI_FLSHCMDRDDATAUP_t flashcmdrddataup; /* ALT_QSPI_FLSHCMDRDDATAUP */
volatile ALT_QSPI_FLSHCMDWRDATALO_t flashcmdwrdatalo; /* ALT_QSPI_FLSHCMDWRDATALO */
volatile ALT_QSPI_FLSHCMDWRDATAUP_t flashcmdwrdataup; /* ALT_QSPI_FLSHCMDWRDATAUP */
volatile uint32_t _pad_0xb0_0xfb[19]; /* *UNDEFINED* */
volatile ALT_QSPI_MODULEID_t moduleid; /* ALT_QSPI_MODULEID */
};
/* The typedef declaration for register group ALT_QSPI. */
typedef volatile struct ALT_QSPI_s ALT_QSPI_t;
/* The struct declaration for the raw register contents of register group ALT_QSPI. */
struct ALT_QSPI_raw_s
{
volatile uint32_t cfg; /* ALT_QSPI_CFG */
volatile uint32_t devrd; /* ALT_QSPI_DEVRD */
volatile uint32_t devwr; /* ALT_QSPI_DEVWR */
volatile uint32_t delay; /* ALT_QSPI_DELAY */
volatile uint32_t rddatacap; /* ALT_QSPI_RDDATACAP */
volatile uint32_t devsz; /* ALT_QSPI_DEVSZ */
volatile uint32_t srampart; /* ALT_QSPI_SRAMPART */
volatile uint32_t indaddrtrig; /* ALT_QSPI_INDADDRTRIG */
volatile uint32_t dmaper; /* ALT_QSPI_DMAPER */
volatile uint32_t remapaddr; /* ALT_QSPI_REMAPADDR */
volatile uint32_t modebit; /* ALT_QSPI_MODBIT */
volatile uint32_t sramfill; /* ALT_QSPI_SRAMFILL */
volatile uint32_t txthresh; /* ALT_QSPI_TXTHRESH */
volatile uint32_t rxthresh; /* ALT_QSPI_RXTHRESH */
volatile uint32_t _pad_0x38_0x3f[2]; /* *UNDEFINED* */
volatile uint32_t irqstat; /* ALT_QSPI_IRQSTAT */
volatile uint32_t irqmask; /* ALT_QSPI_IRQMSK */
volatile uint32_t _pad_0x48_0x4f[2]; /* *UNDEFINED* */
volatile uint32_t lowwrprot; /* ALT_QSPI_LOWWRPROT */
volatile uint32_t uppwrprot; /* ALT_QSPI_UPPWRPROT */
volatile uint32_t wrprot; /* ALT_QSPI_WRPROT */
volatile uint32_t _pad_0x5c_0x5f; /* *UNDEFINED* */
volatile uint32_t indrd; /* ALT_QSPI_INDRD */
volatile uint32_t indrdwater; /* ALT_QSPI_INDRDWATER */
volatile uint32_t indrdstaddr; /* ALT_QSPI_INDRDSTADDR */
volatile uint32_t indrdcnt; /* ALT_QSPI_INDRDCNT */
volatile uint32_t indwr; /* ALT_QSPI_INDWR */
volatile uint32_t indwrwater; /* ALT_QSPI_INDWRWATER */
volatile uint32_t indwrstaddr; /* ALT_QSPI_INDWRSTADDR */
volatile uint32_t indwrcnt; /* ALT_QSPI_INDWRCNT */
volatile uint32_t _pad_0x80_0x8f[4]; /* *UNDEFINED* */
volatile uint32_t flashcmd; /* ALT_QSPI_FLSHCMD */
volatile uint32_t flashcmdaddr; /* ALT_QSPI_FLSHCMDADDR */
volatile uint32_t _pad_0x98_0x9f[2]; /* *UNDEFINED* */
volatile uint32_t flashcmdrddatalo; /* ALT_QSPI_FLSHCMDRDDATALO */
volatile uint32_t flashcmdrddataup; /* ALT_QSPI_FLSHCMDRDDATAUP */
volatile uint32_t flashcmdwrdatalo; /* ALT_QSPI_FLSHCMDWRDATALO */
volatile uint32_t flashcmdwrdataup; /* ALT_QSPI_FLSHCMDWRDATAUP */
volatile uint32_t _pad_0xb0_0xfb[19]; /* *UNDEFINED* */
volatile uint32_t moduleid; /* ALT_QSPI_MODULEID */
};
/* The typedef declaration for the raw register contents of register group ALT_QSPI. */
typedef volatile struct ALT_QSPI_raw_s ALT_QSPI_raw_t;
#endif /* __ASSEMBLY__ */
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* __ALTERA_ALT_QSPI_H__ */