qspipsu
Vitis Drivers API Documentation
|
Data Structures | |
struct | XQspiPsu_Msg |
This typedef contains configuration information for a flash message. More... | |
struct | XQspiPsu_Config |
This typedef contains configuration information for the device. More... | |
struct | XQspiPsu |
The XQspiPsu driver instance data. More... | |
Macros | |
#define | XQSPIPSU_H_ |
< prevent circular inclusions More... | |
#define | BYTES256_PER_PAGE 256U |
Definitions for Intel, STM, Winbond and Spansion Serial Flash Device geometry. More... | |
#define | BYTES512_PER_PAGE 512U |
512 Bytes per Page More... | |
#define | BYTES1024_PER_PAGE 1024U |
1024 Bytes per Page More... | |
#define | PAGES16_PER_SECTOR 16U |
16 Pages per Sector More... | |
#define | PAGES128_PER_SECTOR 128U |
128 Pages per Sector More... | |
#define | PAGES256_PER_SECTOR 256U |
256 Pages per Sector More... | |
#define | PAGES512_PER_SECTOR 512U |
512 Pages per Sector More... | |
#define | PAGES1024_PER_SECTOR 1024U |
1024 Pages per Sector More... | |
#define | NUM_OF_SECTORS2 2U |
2 Sectors More... | |
#define | NUM_OF_SECTORS4 4U |
4 Sectors More... | |
#define | NUM_OF_SECTORS8 8U |
8 Sector More... | |
#define | NUM_OF_SECTORS16 16U |
16 Sectors More... | |
#define | NUM_OF_SECTORS32 32U |
32 Sectors More... | |
#define | NUM_OF_SECTORS64 64U |
64 Sectors More... | |
#define | NUM_OF_SECTORS128 128U |
128 Sectors More... | |
#define | NUM_OF_SECTORS256 256U |
256 Sectors More... | |
#define | NUM_OF_SECTORS512 512U |
512 Sectors More... | |
#define | NUM_OF_SECTORS1024 1024U |
1024 Sectors More... | |
#define | NUM_OF_SECTORS2048 2048U |
2048 Sectors More... | |
#define | NUM_OF_SECTORS4096 4096U |
4096 Sectors More... | |
#define | NUM_OF_SECTORS8192 8192U |
8192 Sectors More... | |
#define | SECTOR_SIZE_64K 0X10000U |
64K Sector More... | |
#define | SECTOR_SIZE_128K 0X20000U |
128K Sector More... | |
#define | SECTOR_SIZE_256K 0X40000U |
256K Sector More... | |
#define | SECTOR_SIZE_512K 0X80000U |
512K Sector More... | |
#define | XQSPIPSU_READMODE_DMA 0x0U |
DMA read mode. More... | |
#define | XQSPIPSU_READMODE_IO 0x1U |
IO read mode. More... | |
#define | XQSPIPSU_SELECT_FLASH_CS_LOWER 0x1U |
Select lower flash. More... | |
#define | XQSPIPSU_SELECT_FLASH_CS_UPPER 0x2U |
Select upper flash. More... | |
#define | XQSPIPSU_SELECT_FLASH_CS_BOTH 0x3U |
Select both flash. More... | |
#define | XQSPIPSU_SELECT_FLASH_BUS_LOWER 0x1U |
Select lower bus flash. More... | |
#define | XQSPIPSU_SELECT_FLASH_BUS_UPPER 0x2U |
Select upper bus flash. More... | |
#define | XQSPIPSU_SELECT_FLASH_BUS_BOTH 0x3U |
Select both bus flash. More... | |
#define | XQSPIPSU_SELECT_MODE_SPI 0x1U |
Select SPI mode. More... | |
#define | XQSPIPSU_SELECT_MODE_DUALSPI 0x2U |
Select dual SPI mode. More... | |
#define | XQSPIPSU_SELECT_MODE_QUADSPI 0x4U |
Select quad SPI mode. More... | |
#define | XQSPIPSU_GENFIFO_CS_SETUP 0x05U |
Chip select setup in GENFIO. More... | |
#define | XQSPIPSU_GENFIFO_CS_HOLD 0x04U |
Chip select hold in GENFIFO. More... | |
#define | XQSPIPSU_CLK_ACTIVE_LOW_OPTION 0x2U |
Clk Active low option. More... | |
#define | XQSPIPSU_CLK_PHASE_1_OPTION 0x4U |
Clk phase 1 option. More... | |
#define | XQSPIPSU_MANUAL_START_OPTION 0x8U |
Manual start option. More... | |
#define | XQSPIPSU_LQSPI_MODE_OPTION 0x20U |
LQSPI mode option. More... | |
#define | XQSPIPSU_LQSPI_LESS_THEN_SIXTEENMB 1U |
LQSPI less Than 16 MB. More... | |
#define | XQSPIPSU_GENFIFO_EXP_START 0x100U |
Genfifo start. More... | |
#define | XQSPIPSU_DMA_BYTES_MAX 0x10000000U |
DMA bytes max. More... | |
#define | XQSPIPSU_CLK_PRESCALE_2 0x00U |
Clock prescale 2. More... | |
#define | XQSPIPSU_CLK_PRESCALE_4 0x01U |
Clock prescale 4. More... | |
#define | XQSPIPSU_CLK_PRESCALE_8 0x02U |
Clock prescale 8. More... | |
#define | XQSPIPSU_CLK_PRESCALE_16 0x03U |
Clock prescale 16. More... | |
#define | XQSPIPSU_CLK_PRESCALE_32 0x04U |
Clock prescale 32. More... | |
#define | XQSPIPSU_CLK_PRESCALE_64 0x05U |
Clock prescale 64. More... | |
#define | XQSPIPSU_CLK_PRESCALE_128 0x06U |
Clock prescale 128. More... | |
#define | XQSPIPSU_CLK_PRESCALE_256 0x07U |
Clock prescale 256. More... | |
#define | XQSPIPSU_CR_PRESC_MAXIMUM 7U |
Prescale max. More... | |
#define | XQSPIPSU_CONNECTION_MODE_SINGLE 0U |
Single mode connection. More... | |
#define | XQSPIPSU_CONNECTION_MODE_STACKED 1U |
Stacked mode connection. More... | |
#define | XQSPIPSU_CONNECTION_MODE_PARALLEL 2U |
Parallel mode connection. More... | |
#define | XQSPIPSU_FREQ_37_5MHZ 37500000U |
Frequency 375 Mhz. More... | |
#define | XQSPIPSU_FREQ_40MHZ 40000000U |
Frequency 40 Mhz. More... | |
#define | XQSPIPSU_FREQ_100MHZ 100000000U |
Frequency 100 Mhz. More... | |
#define | XQSPIPSU_FREQ_150MHZ 150000000U |
Frequency 150 Mhz. More... | |
#define | XQSPIPSU_MSG_FLAG_STRIPE 0x1U |
Stripe Msg flag. More... | |
#define | XQSPIPSU_MSG_FLAG_RX 0x2U |
Rx Msg flag. More... | |
#define | XQSPIPSU_MSG_FLAG_TX 0x4U |
Tx Msg flag. More... | |
#define | XQSPIPSU_MSG_FLAG_POLL 0x8U |
POLL Msg flag. More... | |
#define | XQSPIPSU_RXADDR_OVER_32BIT 0x100000000U |
Rx address over 32 bit. More... | |
#define | XQSPIPSU_SET_WP 1 |
GQSPI configuration to toggle WP of flash. More... | |
#define | XQspiPsu_Select(InstancePtr, Mask) |
select QSPI controller More... | |
#define | XQspiPsu_Enable(InstancePtr) |
Enable QSPI Controller. More... | |
#define | XQspiPsu_Disable(InstancePtr) |
Disable QSPI controller. More... | |
#define | XQspiPsu_GetLqspiConfigReg(InstancePtr) |
Read Configuration register of LQSPI Controller. More... | |
Typedefs | |
typedef void(* | XQspiPsu_StatusHandler )(const void *CallBackRef, u32 StatusEvent, u32 ByteCount) |
The handler data type allows the user to define a callback function to handle the asynchronous processing for the QSPIPSU device. More... | |
Functions | |
XQspiPsu_Config * | XQspiPsu_LookupConfig (u16 DeviceId) |
Looks up the device configuration based on the unique device ID. More... | |
s32 | XQspiPsu_CfgInitialize (XQspiPsu *InstancePtr, const XQspiPsu_Config *ConfigPtr, UINTPTR EffectiveAddr) |
Initializes a specific XQspiPsu instance as such the driver is ready to use. More... | |
void | XQspiPsu_Reset (XQspiPsu *InstancePtr) |
Resets the QSPIPSU device. More... | |
void | XQspiPsu_Abort (XQspiPsu *InstancePtr) |
Aborts a transfer in progress. More... | |
s32 | XQspiPsu_PolledTransfer (XQspiPsu *InstancePtr, XQspiPsu_Msg *Msg, u32 NumMsg) |
This function performs a transfer on the bus in polled mode. More... | |
s32 | XQspiPsu_InterruptTransfer (XQspiPsu *InstancePtr, XQspiPsu_Msg *Msg, u32 NumMsg) |
This function initiates a transfer on the bus and enables interrupts. More... | |
s32 | XQspiPsu_InterruptHandler (XQspiPsu *InstancePtr) |
Handles interrupt based transfers by acting on GENFIFO and DMA interurpts. More... | |
void | XQspiPsu_SetStatusHandler (XQspiPsu *InstancePtr, void *CallBackRef, XQspiPsu_StatusHandler FuncPointer) |
Sets the status callback function, the status handler, which the driver calls when it encounters conditions that should be reported to upper layer software. More... | |
s32 | XQspiPsu_StartDmaTransfer (XQspiPsu *InstancePtr, XQspiPsu_Msg *Msg, u32 NumMsg) |
This function start a DMA transfer. More... | |
s32 | XQspiPsu_CheckDmaDone (XQspiPsu *InstancePtr) |
This function check for DMA transfer complete. More... | |
s32 | XQspiPsu_SetClkPrescaler (const XQspiPsu *InstancePtr, u8 Prescaler) |
Configures the clock according to the prescaler passed. More... | |
void | XQspiPsu_SelectFlash (XQspiPsu *InstancePtr, u8 FlashCS, u8 FlashBus) |
This function should be used to tell the QSPIPSU driver the HW flash configuration being used. More... | |
s32 | XQspiPsu_SetOptions (XQspiPsu *InstancePtr, u32 Options) |
This function sets the options for the QSPIPSU device driver.The options control how the device behaves relative to the QSPIPSU bus. More... | |
s32 | XQspiPsu_ClearOptions (XQspiPsu *InstancePtr, u32 Options) |
This function resets the options for the QSPIPSU device driver.The options control how the device behaves relative to the QSPIPSU bus. More... | |
u32 | XQspiPsu_GetOptions (const XQspiPsu *InstancePtr) |
This function gets the options for the QSPIPSU device. More... | |
s32 | XQspiPsu_SetReadMode (XQspiPsu *InstancePtr, u32 Mode) |
This function sets the Read mode for the QSPIPSU device driver.The device must be idle rather than busy transferring data before setting Read mode options. More... | |
void | XQspiPsu_SetWP (const XQspiPsu *InstancePtr, u8 Value) |
This function sets the Write Protect and Hold options for the QSPIPSU device driver.The device must be idle rather than busy transferring data before setting Write Protect and Hold options. More... | |
void | XQspiPsu_WriteProtectToggle (const XQspiPsu *InstancePtr, u32 Toggle) |
This API enables/ disables Write Protect pin on the flash parts. More... | |
void | XQspiPsu_Idle (const XQspiPsu *InstancePtr) |
Stops the transfer of data to internal DST FIFO from stream interface and also stops the issuing of new write commands to memory. More... | |
Variables | |
XQspiPsu_Config | XQspiPsu_ConfigTable [XPAR_XQSPIPSU_NUM_INSTANCES] |
This table contains configuration information for each QSPIPSU device in the system. More... | |