intc
Xilinx SDK Drivers API Documentation
xintc.h File Reference

Data Structures

struct  XIntc_Config
 This typedef contains configuration information for the device. More...
 
struct  XIntc
 The XIntc driver instance data. More...
 

Macros

Configuration options

These options are used in XIntc_SetOptions() to configure the device.

#define XIN_SVC_SGL_ISR_OPTION   1UL
 
#define XIN_SVC_ALL_ISRS_OPTION   2UL
 
Start modes

One of these values is passed to XIntc_Start() to start the device.

#define XIN_SIMULATION_MODE   0
 Simulation only mode, no hardware interrupts recognized. More...
 
#define XIN_REAL_MODE   1
 Real mode, no simulation allowed, hardware interrupts recognized. More...
 
Masks to specify Interrupt Controller Mode
#define XIN_INTC_NOCASCADE   0 /* Normal - No Cascade Mode */
 
#define XIN_INTC_PRIMARY   1 /* Master/Primary controller */
 
#define XIN_INTC_SECONDARY   2 /* Secondary Slave Controllers */
 
#define XIN_INTC_LAST   3 /* Last Slave Controller */
 
Mask to specify maximum number of interrupt sources per controller
#define XIN_CONTROLLER_MAX_INTRS
 
#define XINTC_STANDARD_VECTOR_ADDRESS_WIDTH   32U
 

Functions

int XIntc_Initialize (XIntc *InstancePtr, u16 DeviceId)
 Initialize a specific interrupt controller instance/driver. More...
 
int XIntc_Start (XIntc *InstancePtr, u8 Mode)
 Starts the interrupt controller by enabling the output from the controller to the processor. More...
 
void XIntc_Stop (XIntc *InstancePtr)
 Stops the interrupt controller by disabling the output from the controller so that no interrupts will be caused by the interrupt controller. More...
 
int XIntc_Connect (XIntc *InstancePtr, u8 Id, XInterruptHandler Handler, void *CallBackRef)
 Makes the connection between the Id of the interrupt source and the associated handler that is to run when the interrupt is recognized. More...
 
void XIntc_Disconnect (XIntc *InstancePtr, u8 Id)
 Updates the interrupt table with the Null Handler and NULL arguments at the location pointed at by the Id. More...
 
void XIntc_Enable (XIntc *InstancePtr, u8 Id)
 Enables the interrupt source provided as the argument Id. More...
 
void XIntc_Disable (XIntc *InstancePtr, u8 Id)
 Disables the interrupt source provided as the argument Id such that the interrupt controller will not cause interrupts for the specified Id. More...
 
void XIntc_Acknowledge (XIntc *InstancePtr, u8 Id)
 Acknowledges the interrupt source provided as the argument Id. More...
 
XIntc_ConfigXIntc_LookupConfig (u16 DeviceId)
 Looks up the device configuration based on the unique device ID. More...
 
int XIntc_ConnectFastHandler (XIntc *InstancePtr, u8 Id, XFastInterruptHandler Handler)
 Makes the connection between the Id of the interrupt source and the associated handler that is to run when the interrupt is recognized.In Cascade mode, connects handler to corresponding Slave controller IVAR/IVEAR register depending on the Id and sets all interrupt sources of the Slave controller as fast interrupts. More...
 
void XIntc_SetNormalIntrMode (XIntc *InstancePtr, u8 Id)
 Sets the normal interrupt mode for the specified interrupt in the Interrupt Mode Register. More...
 
void XIntc_InterruptHandler (XIntc *InstancePtr)
 Interrupt handler for the driver used when there can be no argument passed to the handler. More...
 
int XIntc_SetOptions (XIntc *InstancePtr, u32 Options)
 Set the options for the interrupt controller driver. More...
 
u32 XIntc_GetOptions (XIntc *InstancePtr)
 Return the currently set options. More...
 
int XIntc_SelfTest (XIntc *InstancePtr)
 Run a self-test on the driver/device. More...
 
int XIntc_SimulateIntr (XIntc *InstancePtr, u8 Id)
 Allows software to simulate an interrupt in the interrupt controller. More...