Search code examples
windowsdevice-driverinterrupt

Large IRQ value in windows for MSI


For MSI(Message Signaled Interrupts), the IRQ value in the Windows Device Manager is large or negative.

Why is this so?


Solution

  • If you're asking "why", the answer is "because that's what Microsoft decided to do".

    Message Signaled Interrupt support was added in Windows Vista: http://msdn.microsoft.com/en-us/library/windows/hardware/gg463217.aspx

    When a device is configured for MSI, the IRQ number is negative: http://support.microsoft.com/kb/940394

    As a side effect of it being a negative number, it may appear as something like 0xFFFFFFFFC, depending on how the program decides to display the IRQ info. (Read up on two's complement if you don't know why this happens.)

    As to why Microsoft chose to represent an MSI as a negative number, my guess is that this was done to clearly differentiate them from traditional "wired" interrupts.