![]() |
spi
Vitis Drivers API Documentation
|
Data Structures | |
struct | XSpi_Stats |
XSpi statistics. More... | |
struct | XSpi_Config |
This typedef contains configuration information for the device. More... | |
struct | XSpi |
The XSpi driver instance data. More... | |
Macros | |
#define | XSpi_IntrGlobalEnable(InstancePtr) |
This macro writes to the global interrupt enable register to enable interrupts from the device. More... | |
#define | XSpi_IntrGlobalDisable(InstancePtr) XSpi_WriteReg(((InstancePtr)->BaseAddr), XSP_DGIER_OFFSET, 0) |
This macro disables all interrupts for the device by writing to the Global interrupt enable register. More... | |
#define | XSpi_IsIntrGlobalEnabled(InstancePtr) |
This function determines if interrupts are enabled at the global level by reading the global interrupt register. More... | |
#define | XSpi_IntrGetStatus(InstancePtr) XSpi_ReadReg(((InstancePtr)->BaseAddr), XSP_IISR_OFFSET) |
This function gets the contents of the Interrupt Status Register. More... | |
#define | XSpi_IntrClear(InstancePtr, ClearMask) |
This function clears the specified interrupts in the Interrupt status Register. More... | |
#define | XSpi_IntrEnable(InstancePtr, EnableMask) |
This function sets the contents of the Interrupt Enable Register. More... | |
#define | XSpi_IntrDisable(InstancePtr, DisableMask) |
Disable the specified Interrupts in the Interrupt Enable Register. More... | |
#define | XSpi_IntrGetEnabled(InstancePtr) XSpi_ReadReg(((InstancePtr)->BaseAddr), XSP_IIER_OFFSET) |
This function gets the contents of the Interrupt Enable Register. More... | |
#define | XSpi_SetControlReg(InstancePtr, Mask) XSpi_WriteReg(((InstancePtr)->BaseAddr), XSP_CR_OFFSET, (Mask)) |
Set the contents of the control register. More... | |
#define | XSpi_GetControlReg(InstancePtr) XSpi_ReadReg(((InstancePtr)->BaseAddr), XSP_CR_OFFSET) |
Get the contents of the control register. More... | |
#define | XSpi_GetStatusReg(InstancePtr) XSpi_ReadReg(((InstancePtr)->BaseAddr), XSP_SR_OFFSET) |
Get the contents of the status register. More... | |
#define | XSpi_SetXipControlReg(InstancePtr, Mask) XSpi_WriteReg(((InstancePtr)->BaseAddr), XSP_CR_OFFSET, (Mask)) |
Set the contents of the XIP control register. More... | |
#define | XSpi_GetXipControlReg(InstancePtr) XSpi_ReadReg(((InstancePtr)->BaseAddr), XSP_CR_OFFSET) |
Get the contents of the XIP control register. More... | |
#define | XSpi_GetXipStatusReg(InstancePtr) XSpi_ReadReg(((InstancePtr)->BaseAddr), XSP_SR_OFFSET) |
Get the contents of the status register. More... | |
#define | XSpi_SetSlaveSelectReg(InstancePtr, Mask) XSpi_WriteReg(((InstancePtr)->BaseAddr), XSP_SSR_OFFSET, (Mask)) |
Set the contents of the slave select register. More... | |
#define | XSpi_GetSlaveSelectReg(InstancePtr) XSpi_ReadReg((InstancePtr)->BaseAddr, XSP_SSR_OFFSET) |
Get the contents of the slave select register. More... | |
#define | XSpi_Enable(InstancePtr) |
Enable the device and uninhibit master transactions. More... | |
#define | XSpi_Disable(InstancePtr) |
Disable the device. More... | |
Configuration options | |
The following options may be specified or retrieved for the device and enable/disable additional features of the SPI. Each of the options are bit fields, so more than one may be specified. | |
#define | XSP_MASTER_OPTION 0x1 |
#define | XSP_CLK_ACTIVE_LOW_OPTION 0x2 |
#define | XSP_CLK_PHASE_1_OPTION 0x4 |
#define | XSP_LOOPBACK_OPTION 0x8 |
#define | XSP_MANUAL_SSELECT_OPTION 0x10 |
Typedefs | |
typedef void(* | XSpi_StatusHandler )(void *CallBackRef, u32 StatusEvent, unsigned int ByteCount) |
The handler data type allows the user to define a callback function to handle the asynchronous processing of the SPI driver. More... | |
Functions | |
int | XSpi_Initialize (XSpi *InstancePtr, u16 DeviceId) |
Initializes a specific XSpi instance such that the driver is ready to use. More... | |
XSpi_Config * | XSpi_LookupConfig (u16 DeviceId) |
Looks up the device configuration based on the unique device ID. More... | |
int | XSpi_CfgInitialize (XSpi *InstancePtr, XSpi_Config *Config, UINTPTR EffectiveAddr) |
Initializes a specific XSpi instance such that the driver is ready to use. More... | |
int | XSpi_Start (XSpi *InstancePtr) |
This function enables interrupts for the SPI device. More... | |
int | XSpi_Stop (XSpi *InstancePtr) |
This function stops the SPI device by disabling interrupts and disabling the device itself. More... | |
void | XSpi_Reset (XSpi *InstancePtr) |
Resets the SPI device by writing to the Software Reset register. More... | |
int | XSpi_SetSlaveSelect (XSpi *InstancePtr, u32 SlaveMask) |
Selects or deselect the slave with which the master communicates. More... | |
u32 | XSpi_GetSlaveSelect (XSpi *InstancePtr) |
Gets the current slave select bit mask for the SPI device. More... | |
int | XSpi_Transfer (XSpi *InstancePtr, u8 *SendBufPtr, u8 *RecvBufPtr, unsigned int ByteCount) |
Transfers the specified data on the SPI bus. More... | |
void | XSpi_SetStatusHandler (XSpi *InstancePtr, void *CallBackRef, XSpi_StatusHandler FuncPtr) |
Sets the status callback function, the status handler, which the driver calls when it encounters conditions that should be reported to the higher layer software. More... | |
void | XSpi_InterruptHandler (void *InstancePtr) |
The interrupt handler for SPI interrupts. More... | |
int | XSpi_SelfTest (XSpi *InstancePtr) |
Runs a self-test on the driver/device. More... | |
void | XSpi_GetStats (XSpi *InstancePtr, XSpi_Stats *StatsPtr) |
Gets a copy of the statistics for an SPI device. More... | |
void | XSpi_ClearStats (XSpi *InstancePtr) |
Clears the statistics for the SPI device. More... | |
int | XSpi_SetOptions (XSpi *InstancePtr, u32 Options) |
This function sets the options for the SPI device driver. More... | |
u32 | XSpi_GetOptions (XSpi *InstancePtr) |
This function gets the options for the SPI device. More... | |