Creating an Interrupt Identifier
In addition to using the predefined interrupt identifiers, you can define identifiers in your OAL for your custom target devices. Create a file named Oalintr.h, and define your non-kernel interrupt identifiers in Oalintr.h relative to the value SYSINTR_FIRMWARE. For example, you could define the value of an interrupt identifier as SYSINTR_FIRMWARE+1. The maximum value of an interrupt identifier should be less than SYSINTR_MAXUMUM or SYSINTR_FIRMWARE+23.
The interrupt identifiers reside in the Oalintr.h file in %_WINCEROOT%\Platform\%BSP%\Inc and those for a CEPC reside in the Oalintr.h file in %_WINCEROOT%\Platform\CEPC\Inc. The following table shows the interrupt identifiers that are defined in Oalintr.h.
Interrupt identifier | Description |
---|---|
SYSINTR_ADC | Indicates an analog-to-digital converter interrupt. |
SYSINTR_AUDIO | Indicates an audio interrupt. |
SYSINTR_IR | Indicates an infrared interrupt. |
SYSINTR_ETHER | Indicates an Ethernet debugging adapter interrupt. |
SYSINTR_KEYBOARD | Indicates a keyboard interrupt. |
SYSINTR_PCMCIA_EDGE | Indicates a PCMCIA edge transition interrupt. |
SYSINTR_PCMCIA_LEVEL | Indicates a PCMCIA level interrupt. |
SYSINTR_PCMCIA_STATE | Indicates a PCMCIA state interrupt. |
SYSINTR_SERIAL | Indicates a serial port interrupt. |
SYSINTR_TOUCH | Indicates a touch screen interrupt. |
SYSINTR_TOUCH_CHANGED | Indicates that the touch screen data has changed. |
**Note **The kernel reserves all values below SYSINTR_FIRMWARE for future use. If you redefine the predefined interrupt identifiers, you risk breaking the model device driver (MDD) code in the platform-independent layer for native device drivers.
See Also
How to Develop an OEM Adaptation Layer | Implementing an ISR
Last updated on Wednesday, April 13, 2005
© 2005 Microsoft Corporation. All rights reserved.