Provided by: linux-doc-2.6.15_2.6.15-23.39_all
request_irq - allocate an interrupt line
int request_irq (unsigned int irq,
irqreturn_t (*handler) <funcparams>int, void *, struct pt_regs *</funcparams>,
unsigned long irqflags, const char * devname,
void * dev_id);
irq Interrupt line to allocate
Function to be called when the IRQ occurs
Interrupt type flags
An ascii name for the claiming device
dev_id A cookie passed back to the handler function
This call allocates interrupt resources and enables the interrupt line
and IRQ handling. From the point this call is made your handler
function may be invoked. Since your handler function must clear any
interrupt the board raises, you must take care both to initialise your
hardware and to set up the interrupt handler in the right order.
Dev_id must be globally unique. Normally the address of the device data
structure is used as the cookie. Since the handler receives this value
it makes sense to use it.
If your interrupt is shared you must pass a non NULL dev_id as this is
required when freeing the interrupt.
SA_SHIRQ Interrupt is shared SA_INTERRUPT Disable local interrupts
while processing SA_SAMPLE_RANDOM The interrupt can be used for entropy