Embodiments of a system and method for handling interrupts are described
herein. In an embodiment interrupts from various client components in a
system (also referred to as clients) are processed by an interrupt
handler component uniformly. The various clients signal interrupts in
different manners. For example, some clients signal interrupts in a
level-based manner, and some clients signal interrupts in a pulse-based
manner. In an embodiment, all interrupts received by the interrupt
handler are formed into an event message according to a uniform format
regardless of the manner in which the interrupt is signaled. The event
message includes all information necessary for a host processor interrupt
service routine (ISR) to service the interrupts without reading hardware
registers. Event messages are stored in an event buffer for access and
handling by the host. The event buffer is managed by the interrupt
handler.