RTL_REQUEST_IRQ(3)

NAME
rtl_request_irq, rtl_free_irq - install and remove real-time interrupt handlers

SYNOPSIS
#include <rtl_core.h> int rtl_request_irq(unsigned int irq, unsigned int (*handler)(unsigned int irq, struct pt_regs *regs)); int rtl_free_irq(unsigned int irq);

DESCRIPTION
These functions are specific to Real-Time Linux. rtl_request_irq registers the function handler as the interrupt handler for IRQ level irq. The handler will be executed with hardware interrupts disabled. You need to enable the interrupt line with rtl_hard_enable_irq(3) after a successful call to rtl_request_irq. Note: the interrupt will be disabled during the handler execution. If it is necessary to receive further interrupts from this device, you must reenable the interrupt line with the rtl_hard_enable_irq(3) function. rtl_free_irq removes the interrupt handler for IRQ level irq.

RETURN VALUE
All functions return 0 on success and a negative error code on error.

ERRORS

-EBUSY
    rtl_request_irq: interrupt handler is already installed for this interrupt level.

-EINVAL
    rtl_free_irq: there is no handler currently installed for this interrupt level.

AUTHOR
Michael Barabanov <baraban@fsmlabs.com>

SEE ALSO
rtl_hard_enable_irq(3), rtl_hard_disable_irq(3)