Go to the source code of this file.
#define TEMU_IRQ_CLIENT_IFACE_TYPE "IrqClientIface" |
#define TEMU_IRQ_CTRL_IFACE_TYPE "IrqCtrlIface" |
Interface to be defined for classes that uses an IRQ controller object. An IRQ controller may acknowledge to the IRQ controller client, or it may notify the IrqClient that the underlying IRQ controller has been modified and any pending IRQs should be re-issued. Typically, an updateInterrupt call happens if the IRQ registers change in such a way that the IRQ controller does not know the next interrupt to be issued. E.g. On the sparc, the updateInterrupts function will be called on its IRQ controller whenever the ET or PIL field has changed. That is updateInterrupts are called by lazy IRQ controllers.
Interrupt controller interface. An interrupt controller can raise and lower IRQ signals. For systems which has interrupts which can be configured to be active high, low or rising or falling, the raise and lower irq have different semantics. For rising edge triggering, the raiseInterrupt function should trigger the IRQ.
TEMU_IFACE_REFERENCE_TYPE |
( |
temu_IrqCtrl |
| ) |
|
TEMU_IFACE_REFERENCE_TYPE |
( |
temu_IrqClient |
| ) |
|