 |
Index for Section 9 |
|
 |
Alphabetical listing for V |
|
 |
Bottom of page |
|
vba_post_irq(9r)
NAME
vba_post_irq - VMEbus: Asserts an interrupt
SYNOPSIS
unsigned int vba_post_irq(
struct controller *ctlr,
unsigned int irq,
unsigned int status_ID,
int (*iack_isr) () );
ARGUMENTS
ctlr
Specifies a pointer to the VMEbus device's controller data structure.
irq Specifies the VMEbus interrupt request line (1 through 7) on which you
want to post the interrupt. At any point in time, there must be only
one outstanding posted interrupt for each interrupt request line.
status_ID
Specifies the VMEbus vector to present on acknowledgement of an
interrupt request.
iack_isr
Specifies the interrupt service routine to be called on successful
presentation of the interrupt. The common interrupt service routine
calls this interrupt handler on completion of the interrupt
acknowledgement cycle.
DESCRIPTION
The vba_post_irq() routine asserts an interrupt on the interrupt request
line specified in irq. There is a maximum of one posted, unacknowledged
interrupt per interrupt request line. If you attempt to post an interrupt
on an interrupt request line on which there is a pending interrupt request,
vba_post_irq() returns an error.
When the interrupt is acknowledged and an interrupt callback service
routine is provided through the iack_isr argument, the specified interrupt
callback routine is invoked from the VMEbus adapter's common interrupt
acknowledge handler. The user-specified interrupt callback routine is
passed two arguments. The first argument is struct controller * ctlr, the
controller data structure pointer. The second argument is unsigned int
irq, the interrupt request (IRQ) corresponding to the IRQ being
acknowledged. The user-specified interrupt callback routine executes as an
interrupt service routine with the same constraints on execution.
After the interrupt request has been acknowledged and the user-specified
callback service routine (if provided) is invoked, the interrupt request
line is made available for another call to the vba_post_irq() routine.
RETURN VALUES
Upon successful completion, vba_post_irq() returns the value 1. Otherwise,
it returns the value zero (0). If the bus adapter is not capable of posting
interrupts, vba_post_irq() returns a -1.
SEE ALSO
Kernel Routines: vba_clear_irq(9r)
 |
Index for Section 9 |
|
 |
Alphabetical listing for V |
|
 |
Top of page |
|