diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/annotated.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/annotated.html index 81b70854..8fe6ffd5 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/annotated.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/annotated.html @@ -2,39 +2,28 @@ - Xilinx Driver intc v3_2: Class List + Class List - + Software Drivers
- - - -
+ +
+
+
+

Class List

Here are the classes, structs, unions and interfaces with brief descriptions:
XIntc
XIntc_Config
XIntc_VectorTableEntry
-
- - - +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/classes.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/classes.html deleted file mode 100755 index c5af356f..00000000 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/classes.html +++ /dev/null @@ -1,39 +0,0 @@ - - - - - Xilinx Driver intc v3_2: Alphabetical List - - - - -Software Drivers -
- - - -
-

Class Index

X
- -
  X  
-
XIntc   XIntc_Config   XIntc_VectorTableEntry   
X
-
- - - diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/files.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/files.html index f0f117de..88c7ce64 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/files.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/files.html @@ -2,31 +2,25 @@ - Xilinx Driver intc v3_2: File Index + File Index - + Software Drivers
- - - -
+ +
+
+
+

File List

Here is a list of all files with brief descriptions: @@ -38,9 +32,4 @@
xintc.c
xintc.h
xintc_options.c
xintc_selftest.c
-
- - - +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/functions.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/functions.html index 633c1d47..5788f6f6 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/functions.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/functions.html @@ -2,88 +2,48 @@ - Xilinx Driver intc v3_2: Class Members + Class Members - + Software Drivers
- - - - - - + correctly (CR#799609). + 3.3 adk 11/3/14 added generation of C_HAS_ILR parameter to + xparameters.h.Changes are made in the driver tcl file + (CR#828046).

+

 
Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc-members.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc-members.html index bed3341b..f7878fdd 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc-members.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc-members.html @@ -2,40 +2,29 @@ - Xilinx Driver intc v3_2: Member List + Member List - + Software Drivers
- - - -
-

XIntc Member List

This is the complete list of members for XIntc, including all inherited members. - - - - - -
BaseAddressXIntc
CfgPtrXIntc
IsReadyXIntc
IsStartedXIntc
UnhandledInterruptsXIntc
- - - + +
+
+
+
+

XIntc Member List

This is the complete list of members for XIntc, including all inherited members.

+ + + + + +
BaseAddressXIntc
CfgPtrXIntc
IsReadyXIntc
IsStartedXIntc
UnhandledInterruptsXIntc
Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc.html index 5e500a72..cf640889 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc.html @@ -2,123 +2,120 @@ - Xilinx Driver intc v3_2: XIntc Struct Reference + XIntc Struct Reference - +

Software Drivers
- - - -
-

XIntc Struct Reference

-

#include <xintc.h>

- -

List of all members.

+ +
+
+
+
+

XIntc Struct Reference

#include <xintc.h> +

+List of all members.


Detailed Description

+The XIntc driver instance data. The user is required to allocate a variable of this type for every intc device in the system. A pointer to a variable of this type is then passed to the driver API functions. +

- - - - - - + + + + + + + + + + + +

Public Attributes

u32 BaseAddress
u32 IsReady
u32 IsStarted
u32 UnhandledInterrupts
XIntc_ConfigCfgPtr

Public Attributes

u32 BaseAddress
u32 IsReady
u32 IsStarted
u32 UnhandledInterrupts
XIntc_ConfigCfgPtr
-


Detailed Description

-

The XIntc driver instance data. The user is required to allocate a variable of this type for every intc device in the system. A pointer to a variable of this type is then passed to the driver API functions.

-

Member Data Documentation

- +

Member Data Documentation

+
-

Base address of registers

+

+Base address of registers

-
- +

+

- +
XIntc_Config* XIntc::CfgPtrXIntc_Config* XIntc::CfgPtr
-

Pointer to instance config entry

+

+Pointer to instance config entry

-
- +

+

- +
u32 XIntc::IsReadyu32 XIntc::IsReady
-

Device is initialized and ready

+

+Device is initialized and ready

-
- +

+

- +
u32 XIntc::IsStartedu32 XIntc::IsStarted
-

Device has been started

+

+Device has been started

-
- +

+

- +
u32 XIntc::UnhandledInterruptsu32 XIntc::UnhandledInterrupts
-

Intc Statistics

+

+Intc Statistics

-
-
The documentation for this struct was generated from the following file: - - - - - +

+


The documentation for this struct was generated from the following file: +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___config-members.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___config-members.html index 024a207c..56f28b4c 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___config-members.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___config-members.html @@ -2,44 +2,33 @@ - Xilinx Driver intc v3_2: Member List + Member List - + Software Drivers
- - - -
-

XIntc_Config Member List

This is the complete list of members for XIntc_Config, including all inherited members. - - - - - - - - - -
AckBeforeServiceXIntc_Config
BaseAddressXIntc_Config
DeviceIdXIntc_Config
FastIntrXIntc_Config
HandlerTableXIntc_Config
IntcTypeXIntc_Config
IntVectorAddrXIntc_Config
NumberofIntrsXIntc_Config
OptionsXIntc_Config
- - - + +
+
+
+
+

XIntc_Config Member List

This is the complete list of members for XIntc_Config, including all inherited members.

+ + + + + + + + + +
AckBeforeServiceXIntc_Config
BaseAddressXIntc_Config
DeviceIdXIntc_Config
FastIntrXIntc_Config
HandlerTableXIntc_Config
IntcTypeXIntc_Config
IntVectorAddrXIntc_Config
NumberofIntrsXIntc_Config
OptionsXIntc_Config
Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___config.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___config.html index 4ee23878..f797f121 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___config.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___config.html @@ -2,183 +2,188 @@ - Xilinx Driver intc v3_2: XIntc_Config Struct Reference + XIntc_Config Struct Reference - +

Software Drivers
- - - -
-

XIntc_Config Struct Reference

-

#include <xintc.h>

- -

List of all members.

+ +
+
+
+
+

XIntc_Config Struct Reference

#include <xintc.h> +

+List of all members.


Detailed Description

+This typedef contains configuration information for the device. +

- - - - - - - - - - + + + + + + + + + + + + + + + + + + + +

Public Attributes

u16 DeviceId
u32 BaseAddress
u32 AckBeforeService
int FastIntr
u32 IntVectorAddr
int NumberofIntrs
u32 Options
int IntcType
XIntc_VectorTableEntry HandlerTable [XPAR_INTC_MAX_NUM_INTR_INPUTS]

Public Attributes

u16 DeviceId
u32 BaseAddress
u32 AckBeforeService
int FastIntr
u32 IntVectorAddr
int NumberofIntrs
u32 Options
int IntcType
XIntc_VectorTableEntry HandlerTable [XPAR_INTC_MAX_NUM_INTR_INPUTS]
-


Detailed Description

-

This typedef contains configuration information for the device.

-

Member Data Documentation

- +

Member Data Documentation

+
-

Ack location per interrupt

+

+Ack location per interrupt

-
- +

+

- +
u32 XIntc_Config::BaseAddressu32 XIntc_Config::BaseAddress
-

Register base address

+

+Register base address

-
- +

+

- +
u16 XIntc_Config::DeviceIdu16 XIntc_Config::DeviceId
-

Unique ID of device

+

+Unique ID of device

-
- +

+

- +
int XIntc_Config::FastIntrint XIntc_Config::FastIntr
-

Fast Interrupt enabled

+

+Fast Interrupt enabled

-
- +

+

- +
XIntc_VectorTableEntry XIntc_Config::HandlerTable[XPAR_INTC_MAX_NUM_INTR_INPUTS]XIntc_VectorTableEntry XIntc_Config::HandlerTable[XPAR_INTC_MAX_NUM_INTR_INPUTS]
-

Static vector table of interrupt handlers

+

+Static vector table of interrupt handlers

-
- +

+

- +
int XIntc_Config::IntcTypeint XIntc_Config::IntcType
-

Intc type 0 - No Cascade Mode 1 - primary instance 2 - secondary instance 3 - last instance

+

+Intc type 0 - No Cascade Mode 1 - primary instance 2 - secondary instance 3 - last instance

-
- +

+

- +
u32 XIntc_Config::IntVectorAddru32 XIntc_Config::IntVectorAddr
-

Interrupt Vector Address

+

+Interrupt Vector Address

-
- +

+

- +
int XIntc_Config::NumberofIntrsint XIntc_Config::NumberofIntrs
-

Number of Interrupt sources

+

+Number of Interrupt sources

-
- +

+

- +
u32 XIntc_Config::Optionsu32 XIntc_Config::Options
-

Device options

+

+Device options

-
-
The documentation for this struct was generated from the following file: - - - - - +

+


The documentation for this struct was generated from the following file: +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___vector_table_entry-members.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___vector_table_entry-members.html index 1318149a..cd3a0e8a 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___vector_table_entry-members.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___vector_table_entry-members.html @@ -2,37 +2,26 @@ - Xilinx Driver intc v3_2: Member List + Member List - + Software Drivers
- - - -
-

XIntc_VectorTableEntry Member List

This is the complete list of members for XIntc_VectorTableEntry, including all inherited members. - - -
CallBackRefXIntc_VectorTableEntry
HandlerXIntc_VectorTableEntry
- - - + +
+
+
+
+

XIntc_VectorTableEntry Member List

This is the complete list of members for XIntc_VectorTableEntry, including all inherited members.

+ + +
CallBackRefXIntc_VectorTableEntry
HandlerXIntc_VectorTableEntry
Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___vector_table_entry.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___vector_table_entry.html index 345aea24..0c119008 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___vector_table_entry.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/struct_x_intc___vector_table_entry.html @@ -2,73 +2,66 @@ - Xilinx Driver intc v3_2: XIntc_VectorTableEntry Struct Reference + XIntc_VectorTableEntry Struct Reference - +

Software Drivers
+ +
+
+
+
+

XIntc_VectorTableEntry Struct Reference

#include <xintc_l.h> +

+List of all members. + + + - - -
-

XIntc_VectorTableEntry Struct Reference

-

#include <xintc_l.h>

+
-

List of all members.

-

Public Attributes

XInterruptHandler Handler
void * CallBackRef
- - -

Public Attributes

XInterruptHandler Handler
void * CallBackRef
-


Member Data Documentation

- +

Member Data Documentation

+
- +
void* XIntc_VectorTableEntry::CallBackRefvoid* XIntc_VectorTableEntry::CallBackRef
+

+

-
- +

+

- +
XInterruptHandler XIntc_VectorTableEntry::HandlerXInterruptHandler XIntc_VectorTableEntry::Handler
+

+

-
-
The documentation for this struct was generated from the following file: - - - - +

+


The documentation for this struct was generated from the following file: +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/tabs.css b/XilinxProcessorIPLib/drivers/intc/doc/html/api/tabs.css index a4441634..a61552a6 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/tabs.css +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/tabs.css @@ -32,7 +32,7 @@ DIV.tabs A float : left; background : url("tab_r.gif") no-repeat right top; border-bottom : 1px solid #84B0C7; - font-size : 80%; + font-size : x-small; font-weight : bold; text-decoration : none; } @@ -57,7 +57,7 @@ DIV.tabs SPAN white-space : nowrap; } -DIV.tabs #MSearchBox +DIV.tabs INPUT { float : right; display : inline; @@ -66,7 +66,7 @@ DIV.tabs #MSearchBox DIV.tabs TD { - font-size : 80%; + font-size : x-small; font-weight : bold; text-decoration : none; } @@ -82,24 +82,21 @@ DIV.tabs A:hover SPAN background-position: 0% -150px; } -DIV.tabs LI.current A +DIV.tabs LI#current A { background-position: 100% -150px; border-width : 0px; } -DIV.tabs LI.current SPAN +DIV.tabs LI#current SPAN { background-position: 0% -150px; padding-bottom : 6px; } -DIV.navpath +DIV.nav { background : none; border : none; border-bottom : 1px solid #84B0C7; - text-align : center; - margin : 2px; - padding : 2px; } diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc_8c.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc_8c.html index 507821e3..23faa35b 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc_8c.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc_8c.html @@ -2,56 +2,30 @@ - Xilinx Driver intc v3_2: xintc.c File Reference + xintc.c File Reference - + Software Drivers
- - - -
-

xintc.c File Reference

#include "xil_types.h"
-#include "xil_assert.h"
-#include "xintc.h"
-#include "xintc_l.h"
-#include "xintc_i.h"
- - - - - - - - - - - - - - - -

Functions

int XIntc_Initialize (XIntc *InstancePtr, u16 DeviceId)
int XIntc_Start (XIntc *InstancePtr, u8 Mode)
void XIntc_Stop (XIntc *InstancePtr)
int XIntc_Connect (XIntc *InstancePtr, u8 Id, XInterruptHandler Handler, void *CallBackRef)
void XIntc_Disconnect (XIntc *InstancePtr, u8 Id)
void XIntc_Enable (XIntc *InstancePtr, u8 Id)
void XIntc_Disable (XIntc *InstancePtr, u8 Id)
void XIntc_Acknowledge (XIntc *InstancePtr, u8 Id)
XIntc_ConfigXIntc_LookupConfig (u16 DeviceId)
int XIntc_ConnectFastHandler (XIntc *InstancePtr, u8 Id, XFastInterruptHandler Handler)
void XIntc_SetNormalIntrMode (XIntc *InstancePtr, u8 Id)

Variables

u32 XIntc_BitPosMask [XIN_CONTROLLER_MAX_INTRS]
-

Detailed Description

-

Contains required functions for the XIntc driver for the Xilinx Interrupt Controller. See xintc.h for a detailed description of the driver.

+ +
+
+
+
+

xintc.c File Reference


Detailed Description

+Contains required functions for the XIntc driver for the Xilinx Interrupt Controller. See xintc.h for a detailed description of the driver.

- MODIFICATION HISTORY:
 Ver   Who  Date     Changes
+ MODIFICATION HISTORY:

+

 Ver   Who  Date     Changes
  ----- ---- -------- --------------------------------------------------------
  1.00a ecm  08/16/01 First release
  1.00b jhl  02/21/02 Repartitioned the driver for smaller files
@@ -79,13 +53,50 @@
 		      Added XIntc_InitializeSlaves API.
  3.0   bss  01/28/13 Modified to initialize IVAR register with
 		      XPAR_MICROBLAZE_BASE_VECTORS + 0x10 to fix
-		      CR#765931
 

Function Documentation

- + CR#765931

+

 
+

+#include "xil_types.h"
+#include "xil_assert.h"
+#include "xintc.h"
+#include "xintc_l.h"
+#include "xintc_i.h"
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Functions

int XIntc_Initialize (XIntc *InstancePtr, u16 DeviceId)
int XIntc_Start (XIntc *InstancePtr, u8 Mode)
void XIntc_Stop (XIntc *InstancePtr)
int XIntc_Connect (XIntc *InstancePtr, u8 Id, XInterruptHandler Handler, void *CallBackRef)
void XIntc_Disconnect (XIntc *InstancePtr, u8 Id)
void XIntc_Enable (XIntc *InstancePtr, u8 Id)
void XIntc_Disable (XIntc *InstancePtr, u8 Id)
void XIntc_Acknowledge (XIntc *InstancePtr, u8 Id)
XIntc_ConfigXIntc_LookupConfig (u16 DeviceId)
int XIntc_ConnectFastHandler (XIntc *InstancePtr, u8 Id, XFastInterruptHandler Handler)
void XIntc_SetNormalIntrMode (XIntc *InstancePtr, u8 Id)

Variables

u32 XIntc_BitPosMask [XIN_CONTROLLER_MAX_INTRS]
+


Function Documentation

+
- + @@ -99,30 +110,31 @@ - +
void XIntc_Acknowledge void XIntc_Acknowledge ( XIntc InstancePtr,
)
-

Acknowledges the interrupt source provided as the argument Id. When the interrupt is acknowledged, it causes the interrupt controller to clear its interrupt condition.In Cascade mode, acknowledges corresponding interrupt source of Slave controllers depending on the Id.

-
Parameters:
+ +

+Acknowledges the interrupt source provided as the argument Id. When the interrupt is acknowledged, it causes the interrupt controller to clear its interrupt condition.In Cascade mode, acknowledges corresponding interrupt source of Slave controllers depending on the Id.

+

Parameters:
InstancePtr is a pointer to the XIntc instance to be worked on.
Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
-
-
Returns:
None.
-
Note:
None.
+
Returns:
None.
+
Note:
None.
-
- +

+

- + @@ -148,36 +160,36 @@ - +
int XIntc_Connect int XIntc_Connect ( XIntc InstancePtr,
)
-

Makes the connection between the Id of the interrupt source and the associated handler that is to run when the interrupt is recognized. The argument provided in this call as the Callbackref is used as the argument for the handler when it is called. In Cascade mode, connects handler to Slave controller handler table depending on the interrupt Id.

-
Parameters:
+ +

+Makes the connection between the Id of the interrupt source and the associated handler that is to run when the interrupt is recognized. The argument provided in this call as the Callbackref is used as the argument for the handler when it is called. In Cascade mode, connects handler to Slave controller handler table depending on the interrupt Id.

+

Parameters:
InstancePtr is a pointer to the XIntc instance to be worked on.
Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
Handler to the handler for that interrupt.
CallBackRef is the callback reference, usually the instance pointer of the connecting driver.
-
-
Returns:
+
Returns:
    -
  • XST_SUCCESS if the handler was connected correctly.
  • -
-
Note:
-

WARNING: The handler provided as an argument will overwrite any handler that was previously connected.

- +
  • XST_SUCCESS if the handler was connected correctly.
  • +

    +

    Note:
    +WARNING: The handler provided as an argument will overwrite any handler that was previously connected.
    -
    - +

    +

    - + @@ -191,41 +203,40 @@ - + - +
    int XIntc_ConnectFastHandler int XIntc_ConnectFastHandler ( XIntc InstancePtr,
    XFastInterruptHandler 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 register depending on the Id and sets all interrupt sources of the Slave controller as fast interrupts.

    -
    Parameters:
    + +

    +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 register depending on the Id and sets all interrupt sources of the Slave controller as fast interrupts.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    Handler to the handler for that interrupt.
    -
    -
    Returns:
      -
    • XST_SUCCESS
    • -
    +
    Returns:
      +
    • XST_SUCCESS
    -
    Note:
    Slave controllers in Cascade Mode should have all as Fast interrupts or Normal interrupts, mixed interrupts are not supported
    -

    WARNING: The handler provided as an argument will overwrite any handler that was previously connected.

    - +
    Note:
    Slave controllers in Cascade Mode should have all as Fast interrupts or Normal interrupts, mixed interrupts are not supported
    +WARNING: The handler provided as an argument will overwrite any handler that was previously connected.
    -
    - +

    +

    - + @@ -239,30 +250,31 @@ - +
    void XIntc_Disable void XIntc_Disable ( XIntc InstancePtr,
    )
    -

    Disables the interrupt source provided as the argument Id such that the interrupt controller will not cause interrupts for the specified Id. The interrupt controller will continue to hold an interrupt condition for the Id, but will not cause an interrupt.In Cascade mode, disables corresponding interrupt of Slave controllers depending on the Id.

    -
    Parameters:
    + +

    +Disables the interrupt source provided as the argument Id such that the interrupt controller will not cause interrupts for the specified Id. The interrupt controller will continue to hold an interrupt condition for the Id, but will not cause an interrupt.In Cascade mode, disables corresponding interrupt of Slave controllers depending on the Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -276,30 +288,31 @@ - +
    void XIntc_Disconnect void XIntc_Disconnect ( XIntc InstancePtr,
    )
    -

    Updates the interrupt table with the Null Handler and NULL arguments at the location pointed at by the Id. This effectively disconnects that interrupt source from any handler. The interrupt is disabled also. In Cascade mode, disconnects handler from Slave controller handler table depending on the interrupt Id.

    -
    Parameters:
    + +

    +Updates the interrupt table with the Null Handler and NULL arguments at the location pointed at by the Id. This effectively disconnects that interrupt source from any handler. The interrupt is disabled also. In Cascade mode, disconnects handler from Slave controller handler table depending on the interrupt Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -313,30 +326,31 @@ - +
    void XIntc_Enable void XIntc_Enable ( XIntc InstancePtr,
    )
    -

    Enables the interrupt source provided as the argument Id. Any pending interrupt condition for the specified Id will occur after this function is called. In Cascade mode, enables corresponding interrupt of Slave controllers depending on the Id.

    -
    Parameters:
    + +

    +Enables the interrupt source provided as the argument Id. Any pending interrupt condition for the specified Id will occur after this function is called. In Cascade mode, enables corresponding interrupt of Slave controllers depending on the Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -350,68 +364,64 @@ - +
    int XIntc_Initialize int XIntc_Initialize ( XIntc InstancePtr,
    )
    -

    Initialize a specific interrupt controller instance/driver. The initialization entails:

    + +

    +Initialize a specific interrupt controller instance/driver. The initialization entails:

    -
    Parameters:
    +
  • Initialize fields of the XIntc structure
  • Initial vector table with stub function calls
  • All interrupt sources are disabled
  • Interrupt output is disabled
  • +

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    DeviceId is the unique id of the device controlled by this XIntc instance. Passing in a device id associates the generic XIntc instance to a specific device, as chosen by the caller or application developer.
    -
    -
    Returns:
      -
    • XST_SUCCESS if initialization was successful
    • -
    • XST_DEVICE_IS_STARTED if the device has already been started
    • -
    • XST_DEVICE_NOT_FOUND if device configuration information was not found for a device with the supplied device ID.
    • -
    +
    Returns:
      +
    • XST_SUCCESS if initialization was successful
    • XST_DEVICE_IS_STARTED if the device has already been started
    • XST_DEVICE_NOT_FOUND if device configuration information was not found for a device with the supplied device ID.
    -
    Note:
    In Cascade mode this function calls XIntc_InitializeSlaves to initialiaze Slave Interrupt controllers.
    +
    Note:
    In Cascade mode this function calls XIntc_InitializeSlaves to initialiaze Slave Interrupt controllers.
    -
    - +

    +

    - + - + - +
    XIntc_Config* XIntc_LookupConfig XIntc_Config* XIntc_LookupConfig ( u16  DeviceId DeviceId  ) 
    -

    Looks up the device configuration based on the unique device ID. A table contains the configuration info for each device in the system.

    -
    Parameters:
    + +

    +Looks up the device configuration based on the unique device ID. A table contains the configuration info for each device in the system.

    +

    Parameters:
    DeviceId is the unique identifier for a device.
    -
    -
    Returns:
    A pointer to the XIntc configuration structure for the specified device, or NULL if the device was not found.
    -
    Note:
    None.
    +
    Returns:
    A pointer to the XIntc configuration structure for the specified device, or NULL if the device was not found.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -425,30 +435,31 @@ - +
    void XIntc_SetNormalIntrMode void XIntc_SetNormalIntrMode ( XIntc InstancePtr,
    )
    -

    Sets the normal interrupt mode for the specified interrupt in the Interrupt Mode Register. In Cascade mode disconnects handler from corresponding Slave controller IVAR register depending on the Id and sets all interrupt sources of the Slave controller as normal interrupts.

    -
    Parameters:
    + +

    +Sets the normal interrupt mode for the specified interrupt in the Interrupt Mode Register. In Cascade mode disconnects handler from corresponding Slave controller IVAR register depending on the Id and sets all interrupt sources of the Slave controller as normal interrupts.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    -
    -
    Returns:
    None.
    -
    Note:
    Slave controllers in Cascade Mode should have all as Fast interrupts or Normal interrupts, mixed interrupts are not supported
    +
    Returns:
    None.
    +
    Note:
    Slave controllers in Cascade Mode should have all as Fast interrupts or Normal interrupts, mixed interrupts are not supported
    -
    - +

    +

    - + @@ -462,78 +473,73 @@ - +
    int XIntc_Start int XIntc_Start ( XIntc InstancePtr,
    )
    -

    Starts the interrupt controller by enabling the output from the controller to the processor. Interrupts may be generated by the interrupt controller after this function is called.

    -

    It is necessary for the caller to connect the interrupt handler of this component to the proper interrupt source. This function also starts Slave controllers in Cascade mode.

    -
    Parameters:
    + +

    +Starts the interrupt controller by enabling the output from the controller to the processor. Interrupts may be generated by the interrupt controller after this function is called.

    +It is necessary for the caller to connect the interrupt handler of this component to the proper interrupt source. This function also starts Slave controllers in Cascade mode.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Mode determines if software is allowed to simulate interrupts or real interrupts are allowed to occur. Note that these modes are mutually exclusive. The interrupt controller hardware resets in a mode that allows software to simulate interrupts until this mode is exited. It cannot be reentered once it has been exited.
    -
    -

    One of the following values should be used for the mode.

    -
      -
    • XIN_SIMULATION_MODE enables simulation of interrupts only
    • -
    • XIN_REAL_MODE enables hardware interrupts only
    • -
    -
    Returns:
      -
    • XST_SUCCESS if the device was started successfully
    • -
    • XST_FAILURE if simulation mode was specified and it could not be set because real mode has already been entered.
    • -
    +One of the following values should be used for the mode.
      +
    • XIN_SIMULATION_MODE enables simulation of interrupts only
    • XIN_REAL_MODE enables hardware interrupts only
    +

    +

    Returns:
      +
    • XST_SUCCESS if the device was started successfully
    • XST_FAILURE if simulation mode was specified and it could not be set because real mode has already been entered.
    -
    Note:
    Must be called after XIntc initialization is completed.
    +
    Note:
    Must be called after XIntc initialization is completed.
    -
    - +

    +

    - + - + - +
    void XIntc_Stop void XIntc_Stop ( XIntc InstancePtr InstancePtr  ) 
    -

    Stops the interrupt controller by disabling the output from the controller so that no interrupts will be caused by the interrupt controller.

    -
    Parameters:
    + +

    +Stops the interrupt controller by disabling the output from the controller so that no interrupts will be caused by the interrupt controller.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    -

    Variable Documentation

    - +

    +


    Variable Documentation

    +
    - +
    u32 XIntc_BitPosMask[XIN_CONTROLLER_MAX_INTRS]u32 XIntc_BitPosMask[XIN_CONTROLLER_MAX_INTRS]
    +

    +

    -
    - - - - +

    +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc_8h.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc_8h.html index cfbdc329..dd292896 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc_8h.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc_8h.html @@ -2,200 +2,235 @@ - Xilinx Driver intc v3_2: xintc.h File Reference + xintc.h File Reference - +

    Software Drivers
    - - - -
    -

    xintc.h File Reference

    #include "xil_types.h"
    -#include "xil_assert.h"
    -#include "xparameters.h"
    -#include "xstatus.h"
    -#include "xintc_l.h"
    + +
    +
    +
    +
    +

    xintc.h File Reference

    +

    +#include "xil_types.h"
    +#include "xil_assert.h"
    +#include "xparameters.h"
    +#include "xstatus.h"
    +#include "xintc_l.h"
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Classes

    struct  XIntc_Config
    struct  XIntc

    Defines

    #define XINTC_H
    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
    #define XIN_REAL_MODE   1
    Masks to specify Interrupt Controller Mode

    -

    #define XIN_INTC_NOCASCADE   0
    #define XIN_INTC_PRIMARY   1
    #define XIN_INTC_SECONDARY   2
    #define XIN_INTC_LAST   3
    Mask to specify maximum number of interrupt sources per controller

    -

    #define XIN_CONTROLLER_MAX_INTRS   32

    Functions

    int XIntc_Initialize (XIntc *InstancePtr, u16 DeviceId)
    int XIntc_Start (XIntc *InstancePtr, u8 Mode)
    void XIntc_Stop (XIntc *InstancePtr)
    int XIntc_Connect (XIntc *InstancePtr, u8 Id, XInterruptHandler Handler, void *CallBackRef)
    void XIntc_Disconnect (XIntc *InstancePtr, u8 Id)
    void XIntc_Enable (XIntc *InstancePtr, u8 Id)
    void XIntc_Disable (XIntc *InstancePtr, u8 Id)
    void XIntc_Acknowledge (XIntc *InstancePtr, u8 Id)
    XIntc_ConfigXIntc_LookupConfig (u16 DeviceId)
    int XIntc_ConnectFastHandler (XIntc *InstancePtr, u8 Id, XFastInterruptHandler Handler)
    void XIntc_SetNormalIntrMode (XIntc *InstancePtr, u8 Id)
    void XIntc_VoidInterruptHandler (void)
    void XIntc_InterruptHandler (XIntc *InstancePtr)
    int XIntc_SetOptions (XIntc *InstancePtr, u32 Options)
    u32 XIntc_GetOptions (XIntc *InstancePtr)
    int XIntc_SelfTest (XIntc *InstancePtr)
    int XIntc_SimulateIntr (XIntc *InstancePtr, u8 Id)

    Classes

    struct  XIntc_Config
    struct  XIntc

    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
    #define XIN_REAL_MODE   1

    Masks to specify Interrupt Controller Mode

    #define XIN_INTC_NOCASCADE   0
    #define XIN_INTC_PRIMARY   1
    #define XIN_INTC_SECONDARY   2
    #define XIN_INTC_LAST   3

    Mask to specify maximum number of interrupt sources per controller

    #define XIN_CONTROLLER_MAX_INTRS   32

    Defines

    #define XINTC_H

    Functions

    int XIntc_Initialize (XIntc *InstancePtr, u16 DeviceId)
    int XIntc_Start (XIntc *InstancePtr, u8 Mode)
    void XIntc_Stop (XIntc *InstancePtr)
    int XIntc_Connect (XIntc *InstancePtr, u8 Id, XInterruptHandler Handler, void *CallBackRef)
    void XIntc_Disconnect (XIntc *InstancePtr, u8 Id)
    void XIntc_Enable (XIntc *InstancePtr, u8 Id)
    void XIntc_Disable (XIntc *InstancePtr, u8 Id)
    void XIntc_Acknowledge (XIntc *InstancePtr, u8 Id)
    XIntc_ConfigXIntc_LookupConfig (u16 DeviceId)
    int XIntc_ConnectFastHandler (XIntc *InstancePtr, u8 Id, XFastInterruptHandler Handler)
    void XIntc_SetNormalIntrMode (XIntc *InstancePtr, u8 Id)
    void XIntc_VoidInterruptHandler (void)
    void XIntc_InterruptHandler (XIntc *InstancePtr)
    int XIntc_SetOptions (XIntc *InstancePtr, u32 Options)
    u32 XIntc_GetOptions (XIntc *InstancePtr)
    int XIntc_SelfTest (XIntc *InstancePtr)
    int XIntc_SimulateIntr (XIntc *InstancePtr, u8 Id)
    -


    Detailed Description

    -

    Define Documentation

    - +

    Define Documentation

    +
    - +
    #define XIN_CONTROLLER_MAX_INTRS   32#define XIN_CONTROLLER_MAX_INTRS   32
    +

    +

    -
    - +

    +

    - +
    #define XIN_INTC_LAST   3#define XIN_INTC_LAST   3
    +

    +

    -
    - +

    +

    - +
    #define XIN_INTC_NOCASCADE   0#define XIN_INTC_NOCASCADE   0
    +

    +

    -
    - +

    +

    - +
    #define XIN_INTC_PRIMARY   1#define XIN_INTC_PRIMARY   1
    +

    +

    -
    - +

    +

    - +
    #define XIN_INTC_SECONDARY   2#define XIN_INTC_SECONDARY   2
    -
    -
    - -
    -
    - - - - -
    #define XIN_REAL_MODE   1
    -
    -
    -

    Real mode, no simulation allowed, hardware interrupts recognized

    +

    -
    - +

    +

    - - -
    #define XIN_SIMULATION_MODE   0
    -
    -
    -

    Simulation only mode, no hardware interrupts recognized

    - -
    -
    - -
    -
    - - - +
    #define XIN_SVC_ALL_ISRS_OPTION   2UL#define XIN_REAL_MODE   1
    +

    +Real mode, no simulation allowed, hardware interrupts recognized

    -
    - +

    +

    - +
    #define XIN_SVC_SGL_ISR_OPTION   1UL#define XIN_SIMULATION_MODE   0
    + +

    +Simulation only mode, no hardware interrupts recognized +

    +

    + +

    +
    + + + + +
    #define XIN_SVC_ALL_ISRS_OPTION   2UL
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    #define XIN_SVC_SGL_ISR_OPTION   1UL
    +
    +
    + +

      XIN_SVC_SGL_ISR_OPTION	Service the highest priority pending interrupt
     				and then return.
    @@ -203,27 +238,29 @@
     				return.
      
    -
    - +

    +

    - +
    #define XINTC_H#define XINTC_H
    +

    +

    -
    -

    Function Documentation

    - +

    +


    Function Documentation

    +
    - + @@ -237,30 +274,31 @@ - +
    void XIntc_Acknowledge void XIntc_Acknowledge ( XIntc InstancePtr,
    )
    -

    Acknowledges the interrupt source provided as the argument Id. When the interrupt is acknowledged, it causes the interrupt controller to clear its interrupt condition.In Cascade mode, acknowledges corresponding interrupt source of Slave controllers depending on the Id.

    -
    Parameters:
    + +

    +Acknowledges the interrupt source provided as the argument Id. When the interrupt is acknowledged, it causes the interrupt controller to clear its interrupt condition.In Cascade mode, acknowledges corresponding interrupt source of Slave controllers depending on the Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -286,36 +324,36 @@ - +
    int XIntc_Connect int XIntc_Connect ( XIntc InstancePtr,
    )
    -

    Makes the connection between the Id of the interrupt source and the associated handler that is to run when the interrupt is recognized. The argument provided in this call as the Callbackref is used as the argument for the handler when it is called. In Cascade mode, connects handler to Slave controller handler table depending on the interrupt Id.

    -
    Parameters:
    + +

    +Makes the connection between the Id of the interrupt source and the associated handler that is to run when the interrupt is recognized. The argument provided in this call as the Callbackref is used as the argument for the handler when it is called. In Cascade mode, connects handler to Slave controller handler table depending on the interrupt Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    Handler to the handler for that interrupt.
    CallBackRef is the callback reference, usually the instance pointer of the connecting driver.
    -
    -
    Returns:
    +
    Returns:
      -
    • XST_SUCCESS if the handler was connected correctly.
    • -
    -
    Note:
    -

    WARNING: The handler provided as an argument will overwrite any handler that was previously connected.

    - +
  • XST_SUCCESS if the handler was connected correctly.
  • +

    +

    Note:
    +WARNING: The handler provided as an argument will overwrite any handler that was previously connected.
    -
    - +

    +

    - + @@ -329,41 +367,40 @@ - + - +
    int XIntc_ConnectFastHandler int XIntc_ConnectFastHandler ( XIntc InstancePtr,
    XFastInterruptHandler 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 register depending on the Id and sets all interrupt sources of the Slave controller as fast interrupts.

    -
    Parameters:
    + +

    +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 register depending on the Id and sets all interrupt sources of the Slave controller as fast interrupts.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    Handler to the handler for that interrupt.
    -
    -
    Returns:
      -
    • XST_SUCCESS
    • -
    +
    Returns:
      +
    • XST_SUCCESS
    -
    Note:
    Slave controllers in Cascade Mode should have all as Fast interrupts or Normal interrupts, mixed interrupts are not supported
    -

    WARNING: The handler provided as an argument will overwrite any handler that was previously connected.

    - +
    Note:
    Slave controllers in Cascade Mode should have all as Fast interrupts or Normal interrupts, mixed interrupts are not supported
    +WARNING: The handler provided as an argument will overwrite any handler that was previously connected.
    -
    - +

    +

    - + @@ -377,30 +414,31 @@ - +
    void XIntc_Disable void XIntc_Disable ( XIntc InstancePtr,
    )
    -

    Disables the interrupt source provided as the argument Id such that the interrupt controller will not cause interrupts for the specified Id. The interrupt controller will continue to hold an interrupt condition for the Id, but will not cause an interrupt.In Cascade mode, disables corresponding interrupt of Slave controllers depending on the Id.

    -
    Parameters:
    + +

    +Disables the interrupt source provided as the argument Id such that the interrupt controller will not cause interrupts for the specified Id. The interrupt controller will continue to hold an interrupt condition for the Id, but will not cause an interrupt.In Cascade mode, disables corresponding interrupt of Slave controllers depending on the Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -414,30 +452,31 @@ - +
    void XIntc_Disconnect void XIntc_Disconnect ( XIntc InstancePtr,
    )
    -

    Updates the interrupt table with the Null Handler and NULL arguments at the location pointed at by the Id. This effectively disconnects that interrupt source from any handler. The interrupt is disabled also. In Cascade mode, disconnects handler from Slave controller handler table depending on the interrupt Id.

    -
    Parameters:
    + +

    +Updates the interrupt table with the Null Handler and NULL arguments at the location pointed at by the Id. This effectively disconnects that interrupt source from any handler. The interrupt is disabled also. In Cascade mode, disconnects handler from Slave controller handler table depending on the interrupt Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -451,57 +490,59 @@ - +
    void XIntc_Enable void XIntc_Enable ( XIntc InstancePtr,
    )
    -

    Enables the interrupt source provided as the argument Id. Any pending interrupt condition for the specified Id will occur after this function is called. In Cascade mode, enables corresponding interrupt of Slave controllers depending on the Id.

    -
    Parameters:
    + +

    +Enables the interrupt source provided as the argument Id. Any pending interrupt condition for the specified Id will occur after this function is called. In Cascade mode, enables corresponding interrupt of Slave controllers depending on the Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + - + - +
    u32 XIntc_GetOptions u32 XIntc_GetOptions ( XIntc InstancePtr InstancePtr  ) 
    -

    Return the currently set options.

    -
    Parameters:
    + +

    +Return the currently set options.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    -
    -
    Returns:
    The currently set options. The options are described in xintc.h.
    -
    Note:
    None.
    +
    Returns:
    The currently set options. The options are described in xintc.h.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -515,133 +556,124 @@ - +
    int XIntc_Initialize int XIntc_Initialize ( XIntc InstancePtr,
    )
    -

    Initialize a specific interrupt controller instance/driver. The initialization entails:

    + +

    +Initialize a specific interrupt controller instance/driver. The initialization entails:

    -
    Parameters:
    +
  • Initialize fields of the XIntc structure
  • Initial vector table with stub function calls
  • All interrupt sources are disabled
  • Interrupt output is disabled
  • +

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    DeviceId is the unique id of the device controlled by this XIntc instance. Passing in a device id associates the generic XIntc instance to a specific device, as chosen by the caller or application developer.
    -
    -
    Returns:
      -
    • XST_SUCCESS if initialization was successful
    • -
    • XST_DEVICE_IS_STARTED if the device has already been started
    • -
    • XST_DEVICE_NOT_FOUND if device configuration information was not found for a device with the supplied device ID.
    • -
    +
    Returns:
      +
    • XST_SUCCESS if initialization was successful
    • XST_DEVICE_IS_STARTED if the device has already been started
    • XST_DEVICE_NOT_FOUND if device configuration information was not found for a device with the supplied device ID.
    -
    Note:
    In Cascade mode this function calls XIntc_InitializeSlaves to initialiaze Slave Interrupt controllers.
    +
    Note:
    In Cascade mode this function calls XIntc_InitializeSlaves to initialiaze Slave Interrupt controllers.
    -
    - +

    +

    - + - + - +
    void XIntc_InterruptHandler void XIntc_InterruptHandler ( XIntc InstancePtr InstancePtr  ) 
    -

    Interrupt handler for the driver used when there can be no argument passed to the handler. This function is provided mostly for backward compatibility. The user should use XIntc_DeviceInterruptHandler(), defined in xintc_l.c, if possible.

    -

    The user must connect this function to the interrupt system such that it is called whenever the devices which are connected to it cause an interrupt.

    -
    Returns:
    None.
    -
    Note:
    -

    The constant XPAR_INTC_SINGLE_DEVICE_ID must be defined for this handler to be included in the driver compilation.

    -

    The interrupt handler for the driver. This function is provided mostly for backward compatibility. The user should use XIntc_DeviceInterruptHandler(), defined in xintc_l.c when possible and pass the device ID of the interrupt controller device as its argument.

    -

    The user must connect this function to the interrupt system such that it is called whenever the devices which are connected to it cause an interrupt.

    -
    Parameters:
    + +

    +The interrupt handler for the driver. This function is provided mostly for backward compatibility. The user should use XIntc_DeviceInterruptHandler(), defined in xintc_l.c when possible and pass the device ID of the interrupt controller device as its argument.

    +The user must connect this function to the interrupt system such that it is called whenever the devices which are connected to it cause an interrupt.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + - + - +
    XIntc_Config* XIntc_LookupConfig XIntc_Config* XIntc_LookupConfig ( u16  DeviceId DeviceId  ) 
    -

    Looks up the device configuration based on the unique device ID. A table contains the configuration info for each device in the system.

    -
    Parameters:
    + +

    +Looks up the device configuration based on the unique device ID. A table contains the configuration info for each device in the system.

    +

    Parameters:
    DeviceId is the unique identifier for a device.
    -
    -
    Returns:
    A pointer to the XIntc configuration structure for the specified device, or NULL if the device was not found.
    -
    Note:
    None.
    +
    Returns:
    A pointer to the XIntc configuration structure for the specified device, or NULL if the device was not found.
    +
    Note:
    None.
    -
    - +

    +

    - + - + - +
    int XIntc_SelfTest int XIntc_SelfTest ( XIntc InstancePtr InstancePtr  ) 
    -

    Run a self-test on the driver/device. This is a destructive test.

    -

    This involves forcing interrupts into the controller and verifying that they are recognized and can be acknowledged. This test will not succeed if the interrupt controller has been started in real mode such that interrupts cannot be forced.

    -
    Parameters:
    + +

    +Run a self-test on the driver/device. This is a destructive test.

    +This involves forcing interrupts into the controller and verifying that they are recognized and can be acknowledged. This test will not succeed if the interrupt controller has been started in real mode such that interrupts cannot be forced.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    -
    -
    Returns:
      -
    • XST_SUCCESS if self-test is successful.
    • -
    • XST_INTC_FAIL_SELFTEST if the Interrupt controller fails the self-test. It will fail the self test if the device has previously been started in real mode.
    • -
    +
    Returns:
      +
    • XST_SUCCESS if self-test is successful.
    • XST_INTC_FAIL_SELFTEST if the Interrupt controller fails the self-test. It will fail the self test if the device has previously been started in real mode.
    -
    Note:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -655,30 +687,31 @@ - +
    void XIntc_SetNormalIntrMode void XIntc_SetNormalIntrMode ( XIntc InstancePtr,
    )
    -

    Sets the normal interrupt mode for the specified interrupt in the Interrupt Mode Register. In Cascade mode disconnects handler from corresponding Slave controller IVAR register depending on the Id and sets all interrupt sources of the Slave controller as normal interrupts.

    -
    Parameters:
    + +

    +Sets the normal interrupt mode for the specified interrupt in the Interrupt Mode Register. In Cascade mode disconnects handler from corresponding Slave controller IVAR register depending on the Id and sets all interrupt sources of the Slave controller as normal interrupts.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id contains the ID of the interrupt source and should be in the range of 0 to XPAR_INTC_MAX_NUM_INTR_INPUTS - 1 with 0 being the highest priority interrupt.
    -
    -
    Returns:
    None.
    -
    Note:
    Slave controllers in Cascade Mode should have all as Fast interrupts or Normal interrupts, mixed interrupts are not supported
    +
    Returns:
    None.
    +
    Note:
    Slave controllers in Cascade Mode should have all as Fast interrupts or Normal interrupts, mixed interrupts are not supported
    -
    - +

    +

    - + @@ -692,34 +725,33 @@ - +
    int XIntc_SetOptions int XIntc_SetOptions ( XIntc InstancePtr,
    )
    -

    Set the options for the interrupt controller driver. In Cascade mode same Option is set to Slave controllers.

    -
    Parameters:
    + +

    +Set the options for the interrupt controller driver. In Cascade mode same Option is set to Slave controllers.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Options to be set. The available options are described in xintc.h.
    -
    -
    Returns:
      -
    • XST_SUCCESS if the options were set successfully
    • -
    • XST_INVALID_PARAM if the specified option was not valid
    • -
    +
    Returns:
      +
    • XST_SUCCESS if the options were set successfully
    • XST_INVALID_PARAM if the specified option was not valid
    -
    Note:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -733,34 +765,33 @@ - +
    int XIntc_SimulateIntr int XIntc_SimulateIntr ( XIntc InstancePtr,
    )
    -

    Allows software to simulate an interrupt in the interrupt controller. This function will only be successful when the interrupt controller has been started in simulation mode. Once it has been started in real mode, interrupts cannot be simulated. A simulated interrupt allows the interrupt controller to be tested without any device to drive an interrupt input signal into it. In Cascade mode writes to ISR of appropraite Slave controller depending on Id.

    -
    Parameters:
    + +

    +Allows software to simulate an interrupt in the interrupt controller. This function will only be successful when the interrupt controller has been started in simulation mode. Once it has been started in real mode, interrupts cannot be simulated. A simulated interrupt allows the interrupt controller to be tested without any device to drive an interrupt input signal into it. In Cascade mode writes to ISR of appropraite Slave controller depending on Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id is the interrupt ID for which to simulate an interrupt.
    -
    -
    Returns:
      -
    • XST_SUCCESS if successful
    • -
    • XST_FAILURE if the interrupt could not be simulated because the interrupt controller is or has previously been in real mode.
    • -
    +
    Returns:
      +
    • XST_SUCCESS if successful
    • XST_FAILURE if the interrupt could not be simulated because the interrupt controller is or has previously been in real mode.
    -
    Note:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -774,82 +805,77 @@ - +
    int XIntc_Start int XIntc_Start ( XIntc InstancePtr,
    )
    -

    Starts the interrupt controller by enabling the output from the controller to the processor. Interrupts may be generated by the interrupt controller after this function is called.

    -

    It is necessary for the caller to connect the interrupt handler of this component to the proper interrupt source. This function also starts Slave controllers in Cascade mode.

    -
    Parameters:
    + +

    +Starts the interrupt controller by enabling the output from the controller to the processor. Interrupts may be generated by the interrupt controller after this function is called.

    +It is necessary for the caller to connect the interrupt handler of this component to the proper interrupt source. This function also starts Slave controllers in Cascade mode.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Mode determines if software is allowed to simulate interrupts or real interrupts are allowed to occur. Note that these modes are mutually exclusive. The interrupt controller hardware resets in a mode that allows software to simulate interrupts until this mode is exited. It cannot be reentered once it has been exited.
    -
    -

    One of the following values should be used for the mode.

    -
      -
    • XIN_SIMULATION_MODE enables simulation of interrupts only
    • -
    • XIN_REAL_MODE enables hardware interrupts only
    • -
    -
    Returns:
      -
    • XST_SUCCESS if the device was started successfully
    • -
    • XST_FAILURE if simulation mode was specified and it could not be set because real mode has already been entered.
    • -
    +One of the following values should be used for the mode.
      +
    • XIN_SIMULATION_MODE enables simulation of interrupts only
    • XIN_REAL_MODE enables hardware interrupts only
    +

    +

    Returns:
      +
    • XST_SUCCESS if the device was started successfully
    • XST_FAILURE if simulation mode was specified and it could not be set because real mode has already been entered.
    -
    Note:
    Must be called after XIntc initialization is completed.
    +
    Note:
    Must be called after XIntc initialization is completed.
    -
    - +

    +

    - + - + - +
    void XIntc_Stop void XIntc_Stop ( XIntc InstancePtr InstancePtr  ) 
    -

    Stops the interrupt controller by disabling the output from the controller so that no interrupts will be caused by the interrupt controller.

    -
    Parameters:
    + +

    +Stops the interrupt controller by disabling the output from the controller so that no interrupts will be caused by the interrupt controller.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + - + - +
    void XIntc_VoidInterruptHandler void XIntc_VoidInterruptHandler ( void   ) 
    +

    +

    -
    - - - - +

    +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__g_8c.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__g_8c.html index 4c266f00..2cf5920d 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__g_8c.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__g_8c.html @@ -2,41 +2,30 @@ - Xilinx Driver intc v3_2: xintc_g.c File Reference + xintc_g.c File Reference - +

    Software Drivers
    - - - -
    -

    xintc_g.c File Reference

    #include "xintc.h"
    -#include "xparameters.h"
    - - - -

    Variables

    XIntc_Config XIntc_ConfigTable [XPAR_XINTC_NUM_INSTANCES]
    -

    Detailed Description

    -

    This file contains a configuration table that specifies the configuration of interrupt controller devices in the system.

    + +
    +
    +
    +
    +

    xintc_g.c File Reference


    Detailed Description

    +This file contains a configuration table that specifies the configuration of interrupt controller devices in the system.

    - MODIFICATION HISTORY:
     Ver   Who  Date     Changes
    + MODIFICATION HISTORY:

    +

     Ver   Who  Date     Changes
      ----- ---- -------- -----------------------------------------------
      1.00a rpm  01/09/02 First release
      1.00b jhl  02/21/02 Repartitioned the driver for smaller files
    @@ -44,17 +33,29 @@
      1.00c rpm  10/17/03 New release. Support the static vector table created
                          in the xintc_g.c configuration table.
      1.10c mta  03/21/07 Updated to new coding style
    - 

    Variable Documentation

    - + +

    +#include "xintc.h"
    +#include "xparameters.h"
    + + + + + +

    Variables

    XIntc_Config XIntc_ConfigTable [XPAR_XINTC_NUM_INSTANCES]
    +


    Variable Documentation

    +
    - +
    XIntc_Config XIntc_ConfigTable[XPAR_XINTC_NUM_INSTANCES]XIntc_Config XIntc_ConfigTable[XPAR_XINTC_NUM_INSTANCES]
    + +

    Initial value:

     {
             {
              XPAR_INTC_0_DEVICE_ID, 
    @@ -70,14 +71,8 @@
              0                      
              }
     }
    -

    This table contains configuration information for each intc device in the system. The XIntc driver must know when to acknowledge the interrupt. The entry which specifies this as a bit mask where each bit corresponds to a specific interrupt. A bit set indicates to ack it before servicing it. Generally, acknowledge before service is used when the interrupt signal is edge-sensitive, and after when the signal is level-sensitive.

    -

    Refer to the XIntc_Config data structure in xintc.h for details on how this table should be initialized.

    - +
    This table contains configuration information for each intc device in the system. The XIntc driver must know when to acknowledge the interrupt. The entry which specifies this as a bit mask where each bit corresponds to a specific interrupt. A bit set indicates to ack it before servicing it. Generally, acknowledge before service is used when the interrupt signal is edge-sensitive, and after when the signal is level-sensitive.

    +Refer to the XIntc_Config data structure in xintc.h for details on how this table should be initialized.

    -
    - - - - +

    +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__i_8h.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__i_8h.html index 4b01e9a9..1acc22bc 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__i_8h.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__i_8h.html @@ -2,45 +2,30 @@ - Xilinx Driver intc v3_2: xintc_i.h File Reference + xintc_i.h File Reference - +

    Software Drivers
    - - - -
    -

    xintc_i.h File Reference

    #include "xil_types.h"
    -#include "xil_assert.h"
    -#include "xintc.h"
    - - - - - - -

    Defines

    #define XINTC_I_H

    Variables

    u32 XIntc_BitPosMask []
    XIntc_Config XIntc_ConfigTable []
    -

    Detailed Description

    -

    This file contains data which is shared between files and internal to the XIntc component. It is intended for internal use only.

    + +
    +
    +
    +
    +

    xintc_i.h File Reference


    Detailed Description

    +This file contains data which is shared between files and internal to the XIntc component. It is intended for internal use only.

    - MODIFICATION HISTORY:
     Ver   Who  Date     Changes
    + MODIFICATION HISTORY:

    +

     Ver   Who  Date     Changes
      ----- ---- -------- -------------------------------------------------------
      1.00b jhl  02/06/02 First release
      1.00b jhl  04/24/02 Moved register definitions to xintc_l.h
    @@ -48,53 +33,68 @@
                          pointer.
      1.10c mta  03/21/07 Updated to new coding style
      2.00a ktn  10/20/09 Updated to use HAL Processor APIs.
    - 

    Define Documentation

    - + +

    +#include "xil_types.h"
    +#include "xil_assert.h"
    +#include "xintc.h"
    + + + + + + + + + + +

    Defines

    #define XINTC_I_H

    Variables

    u32 XIntc_BitPosMask []
    XIntc_Config XIntc_ConfigTable []
    +


    Define Documentation

    +
    - +
    #define XINTC_I_H#define XINTC_I_H
    +

    +

    -
    -

    Variable Documentation

    - +

    +


    Variable Documentation

    +
    - +
    u32 XIntc_BitPosMask[]u32 XIntc_BitPosMask[]
    +

    +

    -
    - +

    +

    - +
    XIntc_Config XIntc_ConfigTable[]XIntc_Config XIntc_ConfigTable[]
    -

    This table contains configuration information for each intc device in the system. The XIntc driver must know when to acknowledge the interrupt. The entry which specifies this as a bit mask where each bit corresponds to a specific interrupt. A bit set indicates to ack it before servicing it. Generally, acknowledge before service is used when the interrupt signal is edge-sensitive, and after when the signal is level-sensitive.

    -

    Refer to the XIntc_Config data structure in xintc.h for details on how this table should be initialized.

    +

    +This table contains configuration information for each intc device in the system. The XIntc driver must know when to acknowledge the interrupt. The entry which specifies this as a bit mask where each bit corresponds to a specific interrupt. A bit set indicates to ack it before servicing it. Generally, acknowledge before service is used when the interrupt signal is edge-sensitive, and after when the signal is level-sensitive.

    +Refer to the XIntc_Config data structure in xintc.h for details on how this table should be initialized.

    -
    - - - - - +

    +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__intr_8c.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__intr_8c.html index f25900d0..c0152846 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__intr_8c.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__intr_8c.html @@ -2,92 +2,83 @@ - Xilinx Driver intc v3_2: xintc_intr.c File Reference + xintc_intr.c File Reference - +

    Software Drivers
    - - - -
    -

    xintc_intr.c File Reference

    #include "xil_types.h"
    -#include "xil_assert.h"
    -#include "xparameters.h"
    -#include "xintc.h"
    - - - -

    Functions

    void XIntc_InterruptHandler (XIntc *InstancePtr)
    -

    Detailed Description

    -

    This file contains the interrupt processing for the XIntc component which is the driver for the Xilinx Interrupt Controller. The interrupt processing is partitioned seperately such that users are not required to use the provided interrupt processing. This file requires other files of the driver to be linked in also.

    -

    Two different interrupt handlers are provided for this driver such that the user must select the appropriate handler for the application. The first interrupt handler, XIntc_VoidInterruptHandler, is provided for systems which use only a single interrupt controller or for systems that cannot otherwise provide an argument to the XIntc interrupt handler (e.g., the RTOS interrupt vector handler may not provide such a facility). The constant XPAR_INTC_SINGLE_DEVICE_ID must be defined for this handler to be included in the driver. The second interrupt handler, XIntc_InterruptHandler, uses an input argument which is an instance pointer to an interrupt controller driver such that multiple interrupt controllers can be supported. This handler requires the calling function to pass it the appropriate argument, so another level of indirection may be required.

    -

    Note that both of these handlers are now only provided for backward compatibility. The handler defined in xintc_l.c is the recommended handler.

    -

    The interrupt processing may be used by connecting one of the interrupt handlers to the interrupt system. These handlers do not save and restore the processor context but only handle the processing of the Interrupt Controller. The two handlers are provided as working examples. The user is encouraged to supply their own interrupt handler when performance tuning is deemed necessary.

    + +
    +
    +
    +
    +

    xintc_intr.c File Reference


    Detailed Description

    +This file contains the interrupt processing for the XIntc component which is the driver for the Xilinx Interrupt Controller. The interrupt processing is partitioned seperately such that users are not required to use the provided interrupt processing. This file requires other files of the driver to be linked in also.

    +Two different interrupt handlers are provided for this driver such that the user must select the appropriate handler for the application. The first interrupt handler, XIntc_VoidInterruptHandler, is provided for systems which use only a single interrupt controller or for systems that cannot otherwise provide an argument to the XIntc interrupt handler (e.g., the RTOS interrupt vector handler may not provide such a facility). The constant XPAR_INTC_SINGLE_DEVICE_ID must be defined for this handler to be included in the driver. The second interrupt handler, XIntc_InterruptHandler, uses an input argument which is an instance pointer to an interrupt controller driver such that multiple interrupt controllers can be supported. This handler requires the calling function to pass it the appropriate argument, so another level of indirection may be required.

    +Note that both of these handlers are now only provided for backward compatibility. The handler defined in xintc_l.c is the recommended handler.

    +The interrupt processing may be used by connecting one of the interrupt handlers to the interrupt system. These handlers do not save and restore the processor context but only handle the processing of the Interrupt Controller. The two handlers are provided as working examples. The user is encouraged to supply their own interrupt handler when performance tuning is deemed necessary.

    - MODIFICATION HISTORY:
     Ver   Who  Date     Changes
    + MODIFICATION HISTORY:

    +

     Ver   Who  Date     Changes
      ----- ---- -------- ---------------------------------------------------------
      1.00b jhl  02/13/02 First release
      1.00c rpm  10/17/03 New release. Support the static vector table created
                          in the xintc_g.c configuration table. Collapse handlers
    -                     to use the XIntc_DeviceInterruptHandler() in xintc_l.c.
    +                     to use the XIntc_DeviceInterruptHandler() in xintc_l.c.
      1.00c rpm  04/09/04 Added conditional compilation around the old handler
    -                     XIntc_VoidInterruptHandler(). This handler will only be
    +                     XIntc_VoidInterruptHandler(). This handler will only be
                          include/compiled if XPAR_INTC_SINGLE_DEVICE_ID is defined.
      1.10c mta  03/21/07 Updated to new coding style
    - 2.00a ktn  10/20/09 Updated to use HAL Processor APIs.
     

    Function Documentation

    - + 2.00a ktn 10/20/09 Updated to use HAL Processor APIs.

    +

     
    +

    +#include "xil_types.h"
    +#include "xil_assert.h"
    +#include "xparameters.h"
    +#include "xintc.h"
    + + + + + +

    Functions

    void XIntc_InterruptHandler (XIntc *InstancePtr)
    +


    Function Documentation

    +
    - + - + - +
    void XIntc_InterruptHandler void XIntc_InterruptHandler ( XIntc InstancePtr InstancePtr  ) 
    -

    Interrupt handler for the driver used when there can be no argument passed to the handler. This function is provided mostly for backward compatibility. The user should use XIntc_DeviceInterruptHandler(), defined in xintc_l.c, if possible.

    -

    The user must connect this function to the interrupt system such that it is called whenever the devices which are connected to it cause an interrupt.

    -
    Returns:
    None.
    -
    Note:
    -

    The constant XPAR_INTC_SINGLE_DEVICE_ID must be defined for this handler to be included in the driver compilation.

    -

    The interrupt handler for the driver. This function is provided mostly for backward compatibility. The user should use XIntc_DeviceInterruptHandler(), defined in xintc_l.c when possible and pass the device ID of the interrupt controller device as its argument.

    -

    The user must connect this function to the interrupt system such that it is called whenever the devices which are connected to it cause an interrupt.

    -
    Parameters:
    + +

    +The interrupt handler for the driver. This function is provided mostly for backward compatibility. The user should use XIntc_DeviceInterruptHandler(), defined in xintc_l.c when possible and pass the device ID of the interrupt controller device as its argument.

    +The user must connect this function to the interrupt system such that it is called whenever the devices which are connected to it cause an interrupt.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    -
    -
    Returns:
    None.
    -
    Note:
    None.
    +
    Returns:
    None.
    +
    Note:
    None.
    -
    -
    - - - +

    +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__l_8c.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__l_8c.html index 3b68932d..d1e5994b 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__l_8c.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__l_8c.html @@ -2,53 +2,36 @@ - Xilinx Driver intc v3_2: xintc_l.c File Reference + xintc_l.c File Reference - +

    Software Drivers
    - - - -
    -

    xintc_l.c File Reference

    #include "xparameters.h"
    -#include "xil_types.h"
    -#include "xil_assert.h"
    -#include "xintc.h"
    -#include "xintc_i.h"
    - - - - - - -

    Functions

    void XIntc_DeviceInterruptHandler (void *DeviceId)
    void XIntc_SetIntrSvcOption (u32 BaseAddress, int Option)
    void XIntc_RegisterHandler (u32 BaseAddress, int InterruptId, XInterruptHandler Handler, void *CallBackRef)
    void XIntc_RegisterFastHandler (u32 BaseAddress, u8 Id, XFastInterruptHandler FastHandler)
    -

    Detailed Description

    -

    This file contains low-level driver functions that can be used to access the device. The user should refer to the hardware device specification for more details of the device operation.

    + +
    +
    +
    +
    +

    xintc_l.c File Reference


    Detailed Description

    +This file contains low-level driver functions that can be used to access the device. The user should refer to the hardware device specification for more details of the device operation.

    - MODIFICATION HISTORY:
     Ver   Who  Date     Changes
    + MODIFICATION HISTORY:

    +

     Ver   Who  Date     Changes
      ----- ---- -------- -------------------------------------------------------
      1.00b jhl  04/24/02 First release
      1.00c rpm  10/17/03 New release. Support the static vector table created
                          in the xintc_g.c configuration table.
      1.00c rpm  04/09/04 Added conditional compilation around the old handler
    -                     XIntc_LowLevelInterruptHandler(). This handler will only
    +                     XIntc_LowLevelInterruptHandler(). This handler will only
                          be include/compiled if XPAR_INTC_SINGLE_DEVICE_ID is
                          defined.
      1.10c mta  03/21/07 Updated to new coding style
    @@ -66,46 +49,61 @@
     		      XIntc_RegisterFastHandler APIs.
     		      Added XIntc_CascadeHandler API.
      2.07a bss  10/18/13 Modified XIntc_DeviceInterruptHandler to support
    -		      nested interrupts.
     

    Function Documentation

    - + nested interrupts.

    +

     
    +

    +#include "xparameters.h"
    +#include "xil_types.h"
    +#include "xil_assert.h"
    +#include "xintc.h"
    +#include "xintc_i.h"
    + + + + + + + + + + + +

    Functions

    void XIntc_DeviceInterruptHandler (void *DeviceId)
    void XIntc_SetIntrSvcOption (u32 BaseAddress, int Option)
    void XIntc_RegisterHandler (u32 BaseAddress, int InterruptId, XInterruptHandler Handler, void *CallBackRef)
    void XIntc_RegisterFastHandler (u32 BaseAddress, u8 Id, XFastInterruptHandler FastHandler)
    +


    Function Documentation

    +
    - + - + - +
    void XIntc_DeviceInterruptHandler void XIntc_DeviceInterruptHandler ( void *  DeviceId DeviceId  ) 
    -

    This is the interrupt handler for the driver interface provided in this file when there can be no argument passed to the handler. In this case, we just use the globally defined device ID for the interrupt controller. This function is provided mostly for backward compatibility. The user should use XIntc_DeviceInterruptHandler() if possible.

    -

    This function does not support multiple interrupt controller instances to be handled.

    -

    The user must connect this function to the interrupt system such that it is called whenever the devices which are connected to it cause an interrupt.

    -
    Returns:
    None.
    -
    Note:
    -

    The constant XPAR_INTC_SINGLE_DEVICE_ID must be defined for this handler to be included in the driver compilation.

    -

    This function is the primary interrupt handler for the driver. It must be connected to the interrupt source such that is called when an interrupt of the interrupt controller is active. It will resolve which interrupts are active and enabled and call the appropriate interrupt handler. It uses the AckBeforeService flag in the configuration data to determine when to acknowledge the interrupt. Highest priority interrupts are serviced first. This function assumes that an interrupt vector table has been previously initialized.It does not verify that entries in the table are valid before calling an interrupt handler. In Cascade mode this function calls XIntc_CascadeHandler to handle interrupts of Master and Slave controllers. This functions also handles interrupts nesting by saving and restoring link register of Microblaze and Interrupt Level register of interrupt controller properly.

    -
    Parameters:
    + +

    +This function is the primary interrupt handler for the driver. It must be connected to the interrupt source such that is called when an interrupt of the interrupt controller is active. It will resolve which interrupts are active and enabled and call the appropriate interrupt handler. It uses the AckBeforeService flag in the configuration data to determine when to acknowledge the interrupt. Highest priority interrupts are serviced first. This function assumes that an interrupt vector table has been previously initialized.It does not verify that entries in the table are valid before calling an interrupt handler. In Cascade mode this function calls XIntc_CascadeHandler to handle interrupts of Master and Slave controllers. This functions also handles interrupts nesting by saving and restoring link register of Microblaze and Interrupt Level register of interrupt controller properly.

    +

    Parameters:
    DeviceId is the zero-based device ID defined in xparameters.h of the interrupting interrupt controller. It is used as a direct index into the configuration data, which contains the vector table for the interrupt controller. Note that even though the argument is a void pointer, the value is not a pointer but the actual device ID. The void pointer type is necessary to meet the XInterruptHandler typedef for interrupt handlers.
    -
    -
    Returns:
    None.
    -
    Note:
    For nested interrupts, this function saves microblaze r14 register on entry and restores on exit. This is required since compiler does not support nesting. This function enables Microblaze interrupts after blocking further interrupts from the current interrupt number and interrupts below current interrupt proirity by writing to Interrupt Level Register of INTC on entry. On exit, it disables microblaze interrupts and restores ILR register default value(0xFFFFFFFF)back. It is recommended to increase STACK_SIZE in linker script for nested interrupts.
    +
    Returns:
    None.
    +
    Note:
    For nested interrupts, this function saves microblaze r14 register on entry and restores on exit. This is required since compiler does not support nesting. This function enables Microblaze interrupts after blocking further interrupts from the current interrupt number and interrupts below current interrupt proirity by writing to Interrupt Level Register of INTC on entry. On exit, it disables microblaze interrupts and restores ILR register default value(0xFFFFFFFF)back. It is recommended to increase STACK_SIZE in linker script for nested interrupts.
    -
    - +

    +

    - + @@ -119,38 +117,38 @@ - + - +
    void XIntc_RegisterFastHandler void XIntc_RegisterFastHandler ( u32  BaseAddress,
    XFastInterruptHandler XFastInterruptHandler  FastHandler 
    )
    -

    Register a fast handler function for a specific interrupt ID. The handler function will be called when an interrupt occurs for the given interrupt ID. In Cascade mode Interrupt Id is used to set Handler for corresponding Slave Controller

    -
    Parameters:
    + +

    +Register a fast handler function for a specific interrupt ID. The handler function will be called when an interrupt occurs for the given interrupt ID. In Cascade mode Interrupt Id is used to set Handler for corresponding Slave Controller

    +

    Parameters:
    BaseAddress is the base address of the interrupt controller whose vector table will be modified.
    InterruptId is the interrupt ID to be associated with the input handler.
    FastHandler is the function pointer that will be called when interrupt occurs
    -
    -
    Returns:
    None.
    -
    Note:
    -

    Note that this function has no effect if the input base address is invalid.

    - +
    Returns:
    None.
    +
    Note:
    +Note that this function has no effect if the input base address is invalid.
    -
    - +

    +

    - + @@ -176,34 +174,34 @@ - +
    void XIntc_RegisterHandler void XIntc_RegisterHandler ( u32  BaseAddress,
    )
    -

    Register a handler function for a specific interrupt ID. The vector table of the interrupt controller is updated, overwriting any previous handler. The handler function will be called when an interrupt occurs for the given interrupt ID.

    -

    This function can also be used to remove a handler from the vector table by passing in the XIntc_DefaultHandler() as the handler and NULL as the callback reference. In Cascade mode Interrupt Id is used to set Handler for corresponding Slave Controller

    -
    Parameters:
    + +

    +Register a handler function for a specific interrupt ID. The vector table of the interrupt controller is updated, overwriting any previous handler. The handler function will be called when an interrupt occurs for the given interrupt ID.

    +This function can also be used to remove a handler from the vector table by passing in the XIntc_DefaultHandler() as the handler and NULL as the callback reference. In Cascade mode Interrupt Id is used to set Handler for corresponding Slave Controller

    +

    Parameters:
    BaseAddress is the base address of the interrupt controller whose vector table will be modified.
    InterruptId is the interrupt ID to be associated with the input handler.
    Handler is the function pointer that will be added to the vector table for the given interrupt ID.
    CallBackRef is the argument that will be passed to the new handler function when it is called. This is user-specific.
    -
    -
    Returns:
    None.
    -
    Note:
    -

    Note that this function has no effect if the input base address is invalid.

    - +
    Returns:
    None.
    +
    Note:
    +Note that this function has no effect if the input base address is invalid.
    -
    - +

    +

    - + @@ -217,28 +215,23 @@ - +
    void XIntc_SetIntrSvcOption void XIntc_SetIntrSvcOption ( u32  BaseAddress,
    )
    -

    Set the interrupt service option, which can configure the driver so that it services only a single interrupt at a time when an interrupt occurs, or services all pending interrupts when an interrupt occurs. The default behavior when using the driver interface given in xintc.h file is to service only a single interrupt, whereas the default behavior when using the driver interface given in this file is to service all outstanding interrupts when an interrupt occurs. In Cascade mode same Option is set to Slave controllers.

    -
    Parameters:
    + +

    +Set the interrupt service option, which can configure the driver so that it services only a single interrupt at a time when an interrupt occurs, or services all pending interrupts when an interrupt occurs. The default behavior when using the driver interface given in xintc.h file is to service only a single interrupt, whereas the default behavior when using the driver interface given in this file is to service all outstanding interrupts when an interrupt occurs. In Cascade mode same Option is set to Slave controllers.

    +

    Parameters:
    BaseAddress is the unique identifier for a device.
    Option is XIN_SVC_SGL_ISR_OPTION if you want only a single interrupt serviced when an interrupt occurs, or XIN_SVC_ALL_ISRS_OPTION if you want all pending interrupts serviced when an interrupt occurs.
    -
    -
    Returns:
    None.
    -
    Note:
    -

    Note that this function has no effect if the input base address is invalid.

    - +
    Returns:
    None.
    +
    Note:
    +Note that this function has no effect if the input base address is invalid.
    -
    - - - - +

    +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__l_8h.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__l_8h.html index 336589de..ec70d416 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__l_8h.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__l_8h.html @@ -2,83 +2,38 @@ - Xilinx Driver intc v3_2: xintc_l.h File Reference + xintc_l.h File Reference - +

    Software Drivers
    - - - -
    -

    xintc_l.h File Reference

    #include "xil_types.h"
    -#include "xil_assert.h"
    -#include "xparameters.h"
    -#include "xil_io.h"
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Classes

    struct  XIntc_VectorTableEntry

    Defines

    #define XINTC_L_H
    #define XPAR_XINTC_USE_DCR_BRIDGE   0
    #define XIN_ISR_OFFSET   0
    #define XIN_IPR_OFFSET   4
    #define XIN_IER_OFFSET   8
    #define XIN_IAR_OFFSET   12
    #define XIN_SIE_OFFSET   16
    #define XIN_CIE_OFFSET   20
    #define XIN_IVR_OFFSET   24
    #define XIN_MER_OFFSET   28
    #define XIN_IMR_OFFSET   32
    #define XIN_ILR_OFFSET   36
    #define XIN_IVAR_OFFSET   0x100
    #define XIN_INT_MASTER_ENABLE_MASK   0x1UL
    #define XIN_INT_HARDWARE_ENABLE_MASK   0x2UL
    #define XIntc_In32   Xil_In32
    #define XIntc_Out32   Xil_Out32
    #define XIntc_MasterEnable(BaseAddress)
    #define XIntc_MasterDisable(BaseAddress)   XIntc_Out32((BaseAddress) + XIN_MER_OFFSET, 0)
    #define XIntc_EnableIntr(BaseAddress, EnableMask)   XIntc_Out32((BaseAddress) + XIN_IER_OFFSET, (EnableMask))
    #define XIntc_DisableIntr(BaseAddress, DisableMask)   XIntc_Out32((BaseAddress) + XIN_IER_OFFSET, ~(DisableMask))
    #define XIntc_AckIntr(BaseAddress, AckMask)   XIntc_Out32((BaseAddress) + XIN_IAR_OFFSET, (AckMask))
    #define XIntc_GetIntrStatus(BaseAddress)

    Typedefs

    typedef void(* XFastInterruptHandler )(void)

    Functions

    void XIntc_LowLevelInterruptHandler (void)
    void XIntc_DeviceInterruptHandler (void *DeviceId)
    void XIntc_SetIntrSvcOption (u32 BaseAddress, int Option)
    void XIntc_RegisterHandler (u32 BaseAddress, int InterruptId, XInterruptHandler Handler, void *CallBackRef)
    void XIntc_RegisterFastHandler (u32 BaseAddress, u8 Id, XFastInterruptHandler FastHandler)
    -

    Detailed Description

    -

    This header file contains identifiers and low-level driver functions (or macros) that can be used to access the device. The user should refer to the hardware device specification for more details of the device operation.

    -

    Note that users of the driver interface given in this file can register an interrupt handler dynamically (at run-time) using the XIntc_RegisterHandler() function. User of the driver interface given in xintc.h should still use XIntc_Connect(), as always. Also see the discussion of the interrupt vector tables in xintc.h.

    -

    There are currently two interrupt handlers specified in this interface.

    + +
    +
    +
    +
    +

    xintc_l.h File Reference


    Detailed Description

    +This header file contains identifiers and low-level driver functions (or macros) that can be used to access the device. The user should refer to the hardware device specification for more details of the device operation.

    +Note that users of the driver interface given in this file can register an interrupt handler dynamically (at run-time) using the XIntc_RegisterHandler() function. User of the driver interface given in xintc.h should still use XIntc_Connect(), as always. Also see the discussion of the interrupt vector tables in xintc.h.

    +There are currently two interrupt handlers specified in this interface.

    +
  • XIntc_LowLevelInterruptHandler() is a handler without any arguments that is used in cases where there is a single interrupt controller device in the system and the handler cannot be passed an argument. This function is provided mostly for backward compatibility.
  • +

    +
  • XIntc_DeviceInterruptHandler() is a handler that takes a device ID as an argument, indicating which interrupt controller device in the system is causing the interrupt - thereby supporting multiple interrupt controllers.
  • +

    - MODIFICATION HISTORY:
     Ver   Who  Date     Changes
    + MODIFICATION HISTORY:

    +

     Ver   Who  Date     Changes
      ----- ---- -------- -----------------------------------------------------
      1.00b jhl  04/24/02 First release
      1.00c rpm  10/17/03 New release. Support the static vector table created
    @@ -91,484 +46,591 @@
                          the FAST Interrupt
      2.05a bss  08/18/12 Added XIntc_RegisterFastHandler API to register fast
     		      interrupt handlers using base address.
    - 2.07a bss  10/18/13 Added XIN_ILR_OFFSET macro for nested interrupts.
     

    Define Documentation

    - + 2.07a bss 10/18/13 Added XIN_ILR_OFFSET macro for nested interrupts.

    +

     
    +

    +#include "xil_types.h"
    +#include "xil_assert.h"
    +#include "xparameters.h"
    +#include "xil_io.h"
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Classes

    struct  XIntc_VectorTableEntry

    Defines

    #define XINTC_L_H
    #define XPAR_XINTC_USE_DCR_BRIDGE   0
    #define XIN_ISR_OFFSET   0
    #define XIN_IPR_OFFSET   4
    #define XIN_IER_OFFSET   8
    #define XIN_IAR_OFFSET   12
    #define XIN_SIE_OFFSET   16
    #define XIN_CIE_OFFSET   20
    #define XIN_IVR_OFFSET   24
    #define XIN_MER_OFFSET   28
    #define XIN_IMR_OFFSET   32
    #define XIN_ILR_OFFSET   36
    #define XIN_IVAR_OFFSET   0x100
    #define XIN_INT_MASTER_ENABLE_MASK   0x1UL
    #define XIN_INT_HARDWARE_ENABLE_MASK   0x2UL
    #define XIntc_In32   Xil_In32
    #define XIntc_Out32   Xil_Out32
    #define XIntc_MasterEnable(BaseAddress)
    #define XIntc_MasterDisable(BaseAddress)   XIntc_Out32((BaseAddress) + XIN_MER_OFFSET, 0)
    #define XIntc_EnableIntr(BaseAddress, EnableMask)   XIntc_Out32((BaseAddress) + XIN_IER_OFFSET, (EnableMask))
    #define XIntc_DisableIntr(BaseAddress, DisableMask)   XIntc_Out32((BaseAddress) + XIN_IER_OFFSET, ~(DisableMask))
    #define XIntc_AckIntr(BaseAddress, AckMask)   XIntc_Out32((BaseAddress) + XIN_IAR_OFFSET, (AckMask))
    #define XIntc_GetIntrStatus(BaseAddress)

    Typedefs

    typedef void(*) XFastInterruptHandler (void)

    Functions

    void XIntc_LowLevelInterruptHandler (void)
    void XIntc_DeviceInterruptHandler (void *DeviceId)
    void XIntc_SetIntrSvcOption (u32 BaseAddress, int Option)
    void XIntc_RegisterHandler (u32 BaseAddress, int InterruptId, XInterruptHandler Handler, void *CallBackRef)
    void XIntc_RegisterFastHandler (u32 BaseAddress, u8 Id, XFastInterruptHandler FastHandler)
    +


    Define Documentation

    +
    - +
    #define XIN_CIE_OFFSET   20#define XIN_CIE_OFFSET   20
    +

    +

    -
    - +

    +

    - +
    #define XIN_IAR_OFFSET   12#define XIN_IAR_OFFSET   12
    +

    +

    -
    - +

    +

    - +
    #define XIN_IER_OFFSET   8#define XIN_IER_OFFSET   8
    +

    +

    -
    - +

    +

    - +
    #define XIN_ILR_OFFSET   36#define XIN_ILR_OFFSET   36
    +

    +

    -
    - +

    +

    - +
    #define XIN_IMR_OFFSET   32#define XIN_IMR_OFFSET   32
    +

    +

    -
    - +

    +

    - +
    #define XIN_INT_HARDWARE_ENABLE_MASK   0x2UL#define XIN_INT_HARDWARE_ENABLE_MASK   0x2UL
    +

    +

    -
    - +

    +

    - +
    #define XIN_INT_MASTER_ENABLE_MASK   0x1UL#define XIN_INT_MASTER_ENABLE_MASK   0x1UL
    +

    +

    -
    - +

    +

    - +
    #define XIN_IPR_OFFSET   4#define XIN_IPR_OFFSET   4
    +

    +

    -
    - +

    +

    - +
    #define XIN_ISR_OFFSET   0#define XIN_ISR_OFFSET   0
    +

    +

    -
    - +

    +

    - +
    #define XIN_IVAR_OFFSET   0x100#define XIN_IVAR_OFFSET   0x100
    +

    +

    -
    - +

    +

    - +
    #define XIN_IVR_OFFSET   24#define XIN_IVR_OFFSET   24
    +

    +

    -
    - +

    +

    - +
    #define XIN_MER_OFFSET   28#define XIN_MER_OFFSET   28
    +

    +

    -
    - +

    +

    - +
    #define XIN_SIE_OFFSET   16#define XIN_SIE_OFFSET   16
    +

    +

    -
    - +

    +

    - + - - - + - + - +
    #define XIntc_AckIntr#define XIntc_AckIntr (BaseAddress,
    BaseAddress,
    AckMask   )    XIntc_Out32((BaseAddress) + XIN_IAR_OFFSET, (AckMask))   XIntc_Out32((BaseAddress) + XIN_IAR_OFFSET, (AckMask))
    -

    Acknowledge specific interrupt(s) in the interrupt controller.

    -
    Parameters:
    + +

    +Acknowledge specific interrupt(s) in the interrupt controller.

    +

    Parameters:
    BaseAddress is the base address of the device
    AckMask is the 32-bit value to write to the acknowledge register. Each bit of the mask corresponds to an interrupt input signal that is connected to the interrupt controller (INT0 = LSB). Only the bits which are set in the mask will acknowledge interrupts.
    -
    -
    Returns:
    None.
    -
    Note:
    C-style signature: void XIntc_AckIntr(u32 BaseAddress, u32 AckMask);
    +
    Returns:
    None.
    +
    Note:
    C-style signature: void XIntc_AckIntr(u32 BaseAddress, u32 AckMask);
    -
    - +

    +

    - + - - - + - + - +
    #define XIntc_DisableIntr#define XIntc_DisableIntr (BaseAddress,
    BaseAddress,
    DisableMask   )    XIntc_Out32((BaseAddress) + XIN_IER_OFFSET, ~(DisableMask))   XIntc_Out32((BaseAddress) + XIN_IER_OFFSET, ~(DisableMask))
    -

    Disable specific interrupt(s) in the interrupt controller.

    -
    Parameters:
    + +

    +Disable specific interrupt(s) in the interrupt controller.

    +

    Parameters:
    BaseAddress is the base address of the device
    DisableMask is the 32-bit value to write to the enable register. Each bit of the mask corresponds to an interrupt input signal that is connected to the interrupt controller (INT0 = LSB). Only the bits which are set in the mask will disable interrupts.
    -
    -
    Returns:
    None.
    -
    Note:
    C-style signature: void XIntc_DisableIntr(u32 BaseAddress, u32 DisableMask);
    +
    Returns:
    None.
    +
    Note:
    C-style signature: void XIntc_DisableIntr(u32 BaseAddress, u32 DisableMask);
    -
    - +

    +

    - + - - - + - + - +
    #define XIntc_EnableIntr#define XIntc_EnableIntr (BaseAddress,
    BaseAddress,
    EnableMask   )    XIntc_Out32((BaseAddress) + XIN_IER_OFFSET, (EnableMask))   XIntc_Out32((BaseAddress) + XIN_IER_OFFSET, (EnableMask))
    -

    Enable specific interrupt(s) in the interrupt controller.

    -
    Parameters:
    + +

    +Enable specific interrupt(s) in the interrupt controller.

    +

    Parameters:
    BaseAddress is the base address of the device
    EnableMask is the 32-bit value to write to the enable register. Each bit of the mask corresponds to an interrupt input signal that is connected to the interrupt controller (INT0 = LSB). Only the bits which are set in the mask will enable interrupts.
    -
    -
    Returns:
    None.
    -
    Note:
    C-style signature: void XIntc_EnableIntr(u32 BaseAddress, u32 EnableMask);
    +
    Returns:
    None.
    +
    Note:
    C-style signature: void XIntc_EnableIntr(u32 BaseAddress, u32 EnableMask);
    -
    - +

    +

    - + - + - +
    #define XIntc_GetIntrStatus#define XIntc_GetIntrStatus ( BaseAddress   ) 
    -Value:
    (XIntc_In32((BaseAddress) + XIN_ISR_OFFSET) & \
    -        XIntc_In32((BaseAddress) + XIN_IER_OFFSET))
    -

    Get the interrupt status from the interrupt controller which indicates which interrupts are active and enabled.

    -
    Parameters:
    + +

    +Value:

    (XIntc_In32((BaseAddress) + XIN_ISR_OFFSET) & \
    +        XIntc_In32((BaseAddress) + XIN_IER_OFFSET))
    +
    Get the interrupt status from the interrupt controller which indicates which interrupts are active and enabled.

    +

    Parameters:
    BaseAddress is the base address of the device
    -
    -
    Returns:
    The 32-bit contents of the interrupt status register. Each bit corresponds to an interrupt input signal that is connected to the interrupt controller (INT0 = LSB). Bits which are set indicate an active interrupt which is also enabled.
    -
    Note:
    C-style signature: u32 XIntc_GetIntrStatus(u32 BaseAddress);
    +
    Returns:
    The 32-bit contents of the interrupt status register. Each bit corresponds to an interrupt input signal that is connected to the interrupt controller (INT0 = LSB). Bits which are set indicate an active interrupt which is also enabled.
    +
    Note:
    C-style signature: u32 XIntc_GetIntrStatus(u32 BaseAddress);
    -
    - +

    +

    - +
    #define XIntc_In32   Xil_In32#define XIntc_In32   Xil_In32
    +

    +

    -
    - +

    +

    - +
    #define XINTC_L_H#define XINTC_L_H
    +

    +

    -
    - +

    +

    - + - + - +
    #define XIntc_MasterDisable#define XIntc_MasterDisable ( BaseAddress   )    XIntc_Out32((BaseAddress) + XIN_MER_OFFSET, 0)   XIntc_Out32((BaseAddress) + XIN_MER_OFFSET, 0)
    -

    Disable all interrupts in the Master Enable register of the interrupt controller.

    -
    Parameters:
    + +

    +Disable all interrupts in the Master Enable register of the interrupt controller.

    +

    Parameters:
    BaseAddress is the base address of the device.
    -
    -
    Returns:
    None.
    -
    Note:
    C-style signature: void XIntc_MasterDisable(u32 BaseAddress);
    +
    Returns:
    None.
    +
    Note:
    C-style signature: void XIntc_MasterDisable(u32 BaseAddress);
    -
    - +

    +

    - + - + - +
    #define XIntc_MasterEnable#define XIntc_MasterEnable ( BaseAddress   ) 
    -Value:

    Enable all interrupts in the Master Enable register of the interrupt controller. The interrupt controller defaults to all interrupts disabled from reset such that this macro must be used to enable interrupts.

    -
    Parameters:
    + +

    +Value:

    Enable all interrupts in the Master Enable register of the interrupt controller. The interrupt controller defaults to all interrupts disabled from reset such that this macro must be used to enable interrupts.

    +

    Parameters:
    BaseAddress is the base address of the device.
    -
    -
    Returns:
    None.
    -
    Note:
    C-style signature: void XIntc_MasterEnable(u32 BaseAddress);
    +
    Returns:
    None.
    +
    Note:
    C-style signature: void XIntc_MasterEnable(u32 BaseAddress);
    -
    - +

    +

    - +
    #define XIntc_Out32   Xil_Out32#define XIntc_Out32   Xil_Out32
    +

    +

    -
    - +

    +

    - +
    #define XPAR_XINTC_USE_DCR_BRIDGE   0#define XPAR_XINTC_USE_DCR_BRIDGE   0
    +

    +

    -
    -

    Typedef Documentation

    - +

    +


    Typedef Documentation

    +
    - +
    typedef void(* XFastInterruptHandler)(void)typedef void(*) XFastInterruptHandler(void)
    +

    +

    -
    -

    Function Documentation

    - +

    +


    Function Documentation

    +
    - + - + - +
    void XIntc_DeviceInterruptHandler void XIntc_DeviceInterruptHandler ( void *  DeviceId DeviceId  ) 
    -

    This is the interrupt handler for the driver interface provided in this file when there can be no argument passed to the handler. In this case, we just use the globally defined device ID for the interrupt controller. This function is provided mostly for backward compatibility. The user should use XIntc_DeviceInterruptHandler() if possible.

    -

    This function does not support multiple interrupt controller instances to be handled.

    -

    The user must connect this function to the interrupt system such that it is called whenever the devices which are connected to it cause an interrupt.

    -
    Returns:
    None.
    -
    Note:
    -

    The constant XPAR_INTC_SINGLE_DEVICE_ID must be defined for this handler to be included in the driver compilation.

    -

    This function is the primary interrupt handler for the driver. It must be connected to the interrupt source such that is called when an interrupt of the interrupt controller is active. It will resolve which interrupts are active and enabled and call the appropriate interrupt handler. It uses the AckBeforeService flag in the configuration data to determine when to acknowledge the interrupt. Highest priority interrupts are serviced first. This function assumes that an interrupt vector table has been previously initialized.It does not verify that entries in the table are valid before calling an interrupt handler. In Cascade mode this function calls XIntc_CascadeHandler to handle interrupts of Master and Slave controllers. This functions also handles interrupts nesting by saving and restoring link register of Microblaze and Interrupt Level register of interrupt controller properly.

    -
    Parameters:
    + +

    +This function is the primary interrupt handler for the driver. It must be connected to the interrupt source such that is called when an interrupt of the interrupt controller is active. It will resolve which interrupts are active and enabled and call the appropriate interrupt handler. It uses the AckBeforeService flag in the configuration data to determine when to acknowledge the interrupt. Highest priority interrupts are serviced first. This function assumes that an interrupt vector table has been previously initialized.It does not verify that entries in the table are valid before calling an interrupt handler. In Cascade mode this function calls XIntc_CascadeHandler to handle interrupts of Master and Slave controllers. This functions also handles interrupts nesting by saving and restoring link register of Microblaze and Interrupt Level register of interrupt controller properly.

    +

    Parameters:
    DeviceId is the zero-based device ID defined in xparameters.h of the interrupting interrupt controller. It is used as a direct index into the configuration data, which contains the vector table for the interrupt controller. Note that even though the argument is a void pointer, the value is not a pointer but the actual device ID. The void pointer type is necessary to meet the XInterruptHandler typedef for interrupt handlers.
    -
    -
    Returns:
    None.
    -
    Note:
    For nested interrupts, this function saves microblaze r14 register on entry and restores on exit. This is required since compiler does not support nesting. This function enables Microblaze interrupts after blocking further interrupts from the current interrupt number and interrupts below current interrupt proirity by writing to Interrupt Level Register of INTC on entry. On exit, it disables microblaze interrupts and restores ILR register default value(0xFFFFFFFF)back. It is recommended to increase STACK_SIZE in linker script for nested interrupts.
    +
    Returns:
    None.
    +
    Note:
    For nested interrupts, this function saves microblaze r14 register on entry and restores on exit. This is required since compiler does not support nesting. This function enables Microblaze interrupts after blocking further interrupts from the current interrupt number and interrupts below current interrupt proirity by writing to Interrupt Level Register of INTC on entry. On exit, it disables microblaze interrupts and restores ILR register default value(0xFFFFFFFF)back. It is recommended to increase STACK_SIZE in linker script for nested interrupts.
    -
    - +

    +

    - + - + - +
    void XIntc_LowLevelInterruptHandler void XIntc_LowLevelInterruptHandler ( void   ) 
    +

    +

    -
    - +

    +

    - + @@ -582,38 +644,38 @@ - + - +
    void XIntc_RegisterFastHandler void XIntc_RegisterFastHandler ( u32  BaseAddress,
    XFastInterruptHandler XFastInterruptHandler  FastHandler 
    )
    -

    Register a fast handler function for a specific interrupt ID. The handler function will be called when an interrupt occurs for the given interrupt ID. In Cascade mode Interrupt Id is used to set Handler for corresponding Slave Controller

    -
    Parameters:
    + +

    +Register a fast handler function for a specific interrupt ID. The handler function will be called when an interrupt occurs for the given interrupt ID. In Cascade mode Interrupt Id is used to set Handler for corresponding Slave Controller

    +

    Parameters:
    BaseAddress is the base address of the interrupt controller whose vector table will be modified.
    InterruptId is the interrupt ID to be associated with the input handler.
    FastHandler is the function pointer that will be called when interrupt occurs
    -
    -
    Returns:
    None.
    -
    Note:
    -

    Note that this function has no effect if the input base address is invalid.

    - +
    Returns:
    None.
    +
    Note:
    +Note that this function has no effect if the input base address is invalid.
    -
    - +

    +

    - + @@ -639,34 +701,34 @@ - +
    void XIntc_RegisterHandler void XIntc_RegisterHandler ( u32  BaseAddress,
    )
    -

    Register a handler function for a specific interrupt ID. The vector table of the interrupt controller is updated, overwriting any previous handler. The handler function will be called when an interrupt occurs for the given interrupt ID.

    -

    This function can also be used to remove a handler from the vector table by passing in the XIntc_DefaultHandler() as the handler and NULL as the callback reference. In Cascade mode Interrupt Id is used to set Handler for corresponding Slave Controller

    -
    Parameters:
    + +

    +Register a handler function for a specific interrupt ID. The vector table of the interrupt controller is updated, overwriting any previous handler. The handler function will be called when an interrupt occurs for the given interrupt ID.

    +This function can also be used to remove a handler from the vector table by passing in the XIntc_DefaultHandler() as the handler and NULL as the callback reference. In Cascade mode Interrupt Id is used to set Handler for corresponding Slave Controller

    +

    Parameters:
    BaseAddress is the base address of the interrupt controller whose vector table will be modified.
    InterruptId is the interrupt ID to be associated with the input handler.
    Handler is the function pointer that will be added to the vector table for the given interrupt ID.
    CallBackRef is the argument that will be passed to the new handler function when it is called. This is user-specific.
    -
    -
    Returns:
    None.
    -
    Note:
    -

    Note that this function has no effect if the input base address is invalid.

    - +
    Returns:
    None.
    +
    Note:
    +Note that this function has no effect if the input base address is invalid.
    -
    - +

    +

    - + @@ -680,28 +742,23 @@ - +
    void XIntc_SetIntrSvcOption void XIntc_SetIntrSvcOption ( u32  BaseAddress,
    )
    -

    Set the interrupt service option, which can configure the driver so that it services only a single interrupt at a time when an interrupt occurs, or services all pending interrupts when an interrupt occurs. The default behavior when using the driver interface given in xintc.h file is to service only a single interrupt, whereas the default behavior when using the driver interface given in this file is to service all outstanding interrupts when an interrupt occurs. In Cascade mode same Option is set to Slave controllers.

    -
    Parameters:
    + +

    +Set the interrupt service option, which can configure the driver so that it services only a single interrupt at a time when an interrupt occurs, or services all pending interrupts when an interrupt occurs. The default behavior when using the driver interface given in xintc.h file is to service only a single interrupt, whereas the default behavior when using the driver interface given in this file is to service all outstanding interrupts when an interrupt occurs. In Cascade mode same Option is set to Slave controllers.

    +

    Parameters:
    BaseAddress is the unique identifier for a device.
    Option is XIN_SVC_SGL_ISR_OPTION if you want only a single interrupt serviced when an interrupt occurs, or XIN_SVC_ALL_ISRS_OPTION if you want all pending interrupts serviced when an interrupt occurs.
    -
    -
    Returns:
    None.
    -
    Note:
    -

    Note that this function has no effect if the input base address is invalid.

    - +
    Returns:
    None.
    +
    Note:
    +Note that this function has no effect if the input base address is invalid.
    -
    - - - - +

    +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__options_8c.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__options_8c.html index e8fb92f6..af4ce7e2 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__options_8c.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__options_8c.html @@ -2,43 +2,30 @@ - Xilinx Driver intc v3_2: xintc_options.c File Reference + xintc_options.c File Reference - +

    Software Drivers
    - - - -
    -

    xintc_options.c File Reference

    #include "xil_types.h"
    -#include "xil_assert.h"
    -#include "xintc.h"
    - - - - -

    Functions

    int XIntc_SetOptions (XIntc *InstancePtr, u32 Options)
    u32 XIntc_GetOptions (XIntc *InstancePtr)
    -

    Detailed Description

    -

    Contains option functions for the XIntc driver. These functions allow the user to configure an instance of the XIntc driver. This file requires other files of the component to be linked in also.

    + +
    +
    +
    +
    +

    xintc_options.c File Reference


    Detailed Description

    +Contains option functions for the XIntc driver. These functions allow the user to configure an instance of the XIntc driver. This file requires other files of the component to be linked in also.

    - MODIFICATION HISTORY:
     Ver   Who  Date     Changes
    + MODIFICATION HISTORY:

    +

     Ver   Who  Date     Changes
      ----- ---- -------- -----------------------------------------------------
      1.00b jhl  02/21/02 First release
      1.00c rpm  10/17/03 New release. Support the relocation of the options flag
    @@ -48,40 +35,54 @@
      2.00a ktn  10/20/09 Updated to use HAL Processor APIs
      2.06a bss  01/28/13 To support Cascade mode:
     		      Modified XIntc_SetOptions API.
    - 

    Function Documentation

    - + +

    +#include "xil_types.h"
    +#include "xil_assert.h"
    +#include "xintc.h"
    + + + + + + + +

    Functions

    int XIntc_SetOptions (XIntc *InstancePtr, u32 Options)
    u32 XIntc_GetOptions (XIntc *InstancePtr)
    +


    Function Documentation

    +
    - + - + - +
    u32 XIntc_GetOptions u32 XIntc_GetOptions ( XIntc InstancePtr InstancePtr  ) 
    -

    Return the currently set options.

    -
    Parameters:
    + +

    +Return the currently set options.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    -
    -
    Returns:
    The currently set options. The options are described in xintc.h.
    -
    Note:
    None.
    +
    Returns:
    The currently set options. The options are described in xintc.h.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -95,31 +96,25 @@ - +
    int XIntc_SetOptions int XIntc_SetOptions ( XIntc InstancePtr,
    )
    -

    Set the options for the interrupt controller driver. In Cascade mode same Option is set to Slave controllers.

    -
    Parameters:
    + +

    +Set the options for the interrupt controller driver. In Cascade mode same Option is set to Slave controllers.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Options to be set. The available options are described in xintc.h.
    -
    -
    Returns:
      -
    • XST_SUCCESS if the options were set successfully
    • -
    • XST_INVALID_PARAM if the specified option was not valid
    • -
    +
    Returns:
      +
    • XST_SUCCESS if the options were set successfully
    • XST_INVALID_PARAM if the specified option was not valid
    -
    Note:
    None.
    +
    Note:
    None.
    -
    - - - - +

    +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved. diff --git a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__selftest_8c.html b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__selftest_8c.html index 2ea8e33e..dd01efd8 100755 --- a/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__selftest_8c.html +++ b/XilinxProcessorIPLib/drivers/intc/doc/html/api/xintc__selftest_8c.html @@ -2,46 +2,30 @@ - Xilinx Driver intc v3_2: xintc_selftest.c File Reference + xintc_selftest.c File Reference - +

    Software Drivers
    - - - -
    -

    xintc_selftest.c File Reference

    #include "xil_types.h"
    -#include "xil_assert.h"
    -#include "xintc.h"
    -#include "xintc_i.h"
    - - - - - - -

    Defines

    #define XIN_TEST_MASK   1

    Functions

    int XIntc_SelfTest (XIntc *InstancePtr)
    int XIntc_SimulateIntr (XIntc *InstancePtr, u8 Id)
    -

    Detailed Description

    -

    Contains diagnostic self-test functions for the XIntc component. This file requires other files of the component to be linked in also.

    + +
    +
    +
    +
    +

    xintc_selftest.c File Reference


    Detailed Description

    +Contains diagnostic self-test functions for the XIntc component. This file requires other files of the component to be linked in also.

    - MODIFICATION HISTORY:
     Ver   Who  Date     Changes
    + MODIFICATION HISTORY:

    +

     Ver   Who  Date     Changes
      ----- ---- -------- -----------------------------------------------
      1.00b jhl  02/21/02 First release
      1.10c mta  03/21/07 Updated to new coding style
    @@ -50,59 +34,77 @@
                          MER register to remove warnings
      2.06a bss  01/28/13 To support Cascade mode:
     		      Modified XIntc_SimulateIntr API.
    - 

    Define Documentation

    - + +

    +#include "xil_types.h"
    +#include "xil_assert.h"
    +#include "xintc.h"
    +#include "xintc_i.h"
    + + + + + + + + + + +

    Defines

    #define XIN_TEST_MASK   1

    Functions

    int XIntc_SelfTest (XIntc *InstancePtr)
    int XIntc_SimulateIntr (XIntc *InstancePtr, u8 Id)
    +


    Define Documentation

    +
    - +
    #define XIN_TEST_MASK   1#define XIN_TEST_MASK   1
    +

    +

    -
    -

    Function Documentation

    - +

    +


    Function Documentation

    +
    - + - + - +
    int XIntc_SelfTest int XIntc_SelfTest ( XIntc InstancePtr InstancePtr  ) 
    -

    Run a self-test on the driver/device. This is a destructive test.

    -

    This involves forcing interrupts into the controller and verifying that they are recognized and can be acknowledged. This test will not succeed if the interrupt controller has been started in real mode such that interrupts cannot be forced.

    -
    Parameters:
    + +

    +Run a self-test on the driver/device. This is a destructive test.

    +This involves forcing interrupts into the controller and verifying that they are recognized and can be acknowledged. This test will not succeed if the interrupt controller has been started in real mode such that interrupts cannot be forced.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    -
    -
    Returns:
      -
    • XST_SUCCESS if self-test is successful.
    • -
    • XST_INTC_FAIL_SELFTEST if the Interrupt controller fails the self-test. It will fail the self test if the device has previously been started in real mode.
    • -
    +
    Returns:
      +
    • XST_SUCCESS if self-test is successful.
    • XST_INTC_FAIL_SELFTEST if the Interrupt controller fails the self-test. It will fail the self test if the device has previously been started in real mode.
    -
    Note:
    None.
    +
    Note:
    None.
    -
    - +

    +

    - + @@ -116,31 +118,25 @@ - +
    int XIntc_SimulateIntr int XIntc_SimulateIntr ( XIntc InstancePtr,
    )
    -

    Allows software to simulate an interrupt in the interrupt controller. This function will only be successful when the interrupt controller has been started in simulation mode. Once it has been started in real mode, interrupts cannot be simulated. A simulated interrupt allows the interrupt controller to be tested without any device to drive an interrupt input signal into it. In Cascade mode writes to ISR of appropraite Slave controller depending on Id.

    -
    Parameters:
    + +

    +Allows software to simulate an interrupt in the interrupt controller. This function will only be successful when the interrupt controller has been started in simulation mode. Once it has been started in real mode, interrupts cannot be simulated. A simulated interrupt allows the interrupt controller to be tested without any device to drive an interrupt input signal into it. In Cascade mode writes to ISR of appropraite Slave controller depending on Id.

    +

    Parameters:
    InstancePtr is a pointer to the XIntc instance to be worked on.
    Id is the interrupt ID for which to simulate an interrupt.
    -
    -
    Returns:
      -
    • XST_SUCCESS if successful
    • -
    • XST_FAILURE if the interrupt could not be simulated because the interrupt controller is or has previously been in real mode.
    • -
    +
    Returns:
      +
    • XST_SUCCESS if successful
    • XST_FAILURE if the interrupt could not be simulated because the interrupt controller is or has previously been in real mode.
    -
    Note:
    None.
    +
    Note:
    None.
    -
    - - - - +

    +Copyright @ 1995-2014 Xilinx, Inc. All rights reserved.