Disabling an Interrupt (Windows CE 5.0)
If your OS needs to disable an interrupt, this typically occurs after the kernel has received a request to unload a driver.
To disable an interrupt
- Implement the OEMInterruptDisable function, which is called by the kernel when such a request has been made
To disable a driver interrupt, Windows CE initiates the following sequence of steps:
The kernel calls the FreeLibrary function to close or unload the device driver.
The kernel calls the DLL main entry function of the driver with the DLL_PROCESS_DETACH flag passed in as a parameter.
The device driver calls the InterruptDisable function to disable the logical interrupt.
InterruptDisable calls OEMInterruptDisable to disable the physical interrupt.
If the interrupt request (IRQ) line is not multiplexed, the interrupt service routine (ISR) can physically disable the IRQ line associated with the interrupt identifier.
If the IRQ line is multiplexed, the ISR sends an SYSINTR_NOP interrupt identifier to the kernel for interrupts with the disabled interrupt identifier to keep track of those multiplexed interrupts that have been disabled.
See Also
How to Develop an OEM Adaptation Layer | Implementing an ISR
Send Feedback on this topic to the authors