GLAST / LAT > DAQ and FSW > FSW > Doxygen Index> VXW / dev > vxw_symbol / rad750
#include <vxWorks.h>
#include <TEX/TEX_pubdefs.h>
Classes | |
struct | _isrTableEntry |
struct | _isrRoutingInfo |
Defines | |
#define | MAX_INT_LEVELS 32 |
Typedefs | |
typedef struct _isrTableEntry | isrTableEntry_t |
typedef volatile ULONG * | regPtr_t |
typedef struct _isrRoutingInfo | isrRoutingInfo_t |
Functions | |
void | isrRouteInterrupt (isrRoutingInfo_t *pRoutingInfo, TRC_cb_Exception *rtn, unsigned long long tim, unsigned int fui) |
Route an interrupt via a jump table. | |
STATUS | isrIntConnect (isrRoutingInfo_t *pRoutingInfo, ULONG intLvl, VOIDFUNCPTR isr, int parm) |
Connect ISR to interrupt level. |
-----------------------------------------------------------------------------
Description:
General-purpose interrupt service routine (ISR) router.
Restrictions:
Change History:
Date Pgm Description -------- --- ------------------------------------------------------ 11/27/00 DS Created.
-----------------------------------------------------------------------------
#define MAX_INT_LEVELS 32 |
The maximum number of interrupt levels the router supports.
Referenced by isrIntConnect().
The typdef for _isrRoutingInfo.
The typedef for _isrTableEntry.
Address type for interrupt controller registers.
STATUS isrIntConnect | ( | isrRoutingInfo_t * | pRoutingInfo, | |
ULONG | intLvl, | |||
VOIDFUNCPTR | isr, | |||
int | parm | |||
) |
Connect ISR to interrupt level.
----------------------------------------------------------------------------
This routine connects an interrupt service routine (ISR) to the specified interrupt level. Interrupt levelss are enabled separate from this routine. The interrupt level being connected should not be enabled when this routine is called. The specified ISR will get control with interrupts disabled.
pRoutingInfo | - Pointer to the interrupt routing infomation.. | |
intLvl | - The interrupt level (0-31, 0=LSB). | |
isr | - Pointer to the ISR. | |
parm | - A user-defined parameter to pass to the ISR when the interrupt occurs. |
References _isrTableEntry::isr, _isrRoutingInfo::isrTable, MAX_INT_LEVELS, and _isrTableEntry::parm.
Referenced by memIntConnect(), miscIntConnect(), pciErrIntConnect(), pidIntConnect(), and ppciIntConnect().
void isrRouteInterrupt | ( | isrRoutingInfo_t * | pRoutingInfo, | |
TRC_cb_Exception * | rtn, | |||
unsigned long long | tim, | |||
unsigned int | fui | |||
) |
Route an interrupt via a jump table.
pRoutingInfo | (in) Routing jump table | |
rtn | (in) Trace recording callback | |
tim | (in) Timestamp to record in trace | |
fui | (in) Format of trace record (as unsigned int) |
References _isrRoutingInfo::clear, _isrTableEntry::isr, _isrRoutingInfo::isrTable, _isrRoutingInfo::one_pass, _isrTableEntry::parm, _isrRoutingInfo::pEnableReg, and _isrRoutingInfo::pStatusReg.
Referenced by ppciIntInit(), ppciISR(), ppciMemInit(), and ppciPidInit().