Find the answer to your Linux question:
Results 1 to 1 of 1
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1

    Registered ISR is not invoked


    I am writing some Diagnostics code for a UART chip. I was able to write most of our test cases from application space using inb/outb calls.

    To test the 'interrupts' generated by this device, i decided to use the same application space program to cause interrupts to be generated in the device (see generate_intr.c in attachment) and write a simple kernel module which just registers for the static IRQ line (4 in this case) using the request_irq() call and implements the ISR (see reg_intr.c in the attachment).

    On 'insmod', i am able to see the registered module in /proc/interrupts.
    The kernel i am using is 2.6.18.
    On running the application program, I can see that a interrupt is generated in the UART.
    But, the ISR I have registered is not getting called. I have tried registering the interrupt with and without sharing, with the same result.

    Am i missing something ?

    I am attaching my user space program as well as the kernel module.
    Attached Files Attached Files

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts