Reference

rtl_free_irq(3)

install and remove real-time interrupt handlers

Part of 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 <[email protected]>

SEE ALSO

rtl_hard_enable_irq(3), rtl_hard_disable_irq(3)