On Mon, Jul 02, 2001 at 09:00:59PM -0700, Sisinio Baldis wrote:
> How do I implement an IRQ servicing routine?

void my_interrupt(int irq_nr, void *dev_id, struct pt_regs *regs)
{
        /* your code */
}

int init(void)
{
        int ret;

        ret = request_irq(irq_nr, my_interrupt, flags, "name", dev_id);
        if (ret) {
                printk("request_irq for %d failed: %d\n", irq_nr, ret);
                return ret;
        }
        return 0;
}

Don't forget to free the interrupt (free_irq) when your module is removed.

   _____
  |_____| ------------------------------------------------- ---+---+-
  |   |        Russell King       [EMAIL PROTECTED]      --- ---
  | | | |            http://www.arm.linux.org.uk/            /  /  |
  | +-+-+                                                     --- -+-
  /   |               THE developer of ARM Linux              |+| /|\
 /  | | |                                                     ---  |
    +-+-+ -------------------------------------------------  /\\\  |

_______________________________________________
http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm
Please visit the above address for information on this list.
  • IRQs Sisinio Baldis
    • Russell King - ARM Linux

Reply via email to