OEMInterruptHandler (Windows CE 5.0)

Send Feedback

This function is called by the kernel when an interrupt occurs. This function is only used by the ARM kernel, and provides all ISR functionality for ARM-based platforms. You do not need to call HookInterrupt in OEMInit for ARM-based platforms.

int OEMInterruptHandler(unsigned intra);

Parameters

  • ra
    [in] Instruction counter when the interrupt occurred.

Return Values

Returns a SYSINTR_* value.

Remarks

On all Windows CE-based platforms that support a single ISR, the name of the ISR is OEMInterruptHandler. For more information about ISRs, see Interrupt Service Routines.

Before calling OEMInterruptHandler, the kernel preserves the state of the registers and places the OS in a state in which the OEM can enable nested interrupts.

The OEM must choose a nesting scheme and perform the appropriate masking of the interrupt register in OEMInterruptHandler before re-enabling interrupts. To do so, call the INTERRUPTS_ON function after the lower priority interrupts have been masked.

OEMInterruptHandler might call the INTERRUPTS_OFF function again if it requires code that is not re-entrant, but this call is not required because the kernel handles it when returning from OEMInterruptHandler.

Requirements

OS Versions: Windows CE 3.0 and later.
Header: Not applicable.
Link Library: Nk.lib.

See Also

HookInterrupt | OEMInit | INTERRUPTS_OFF | INTERRUPTS_ON | OEMInterruptHandlerFIQ | Interrupt Service Routines | ARM Microprocessor | How to Develop an OEM Adaptation Layer

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.