Share via


Interrupts (OAL) (Compact 7)

3/12/2014

Windows Embedded Compact uses interrupts to respond to events. These events may be internal, such as a timer tick, or external, such as requests by I/O peripherals. The header file that defines the OAL interrupt module interface is Platform\Common\Src\Inc\oal_intr.h. The interrupt functions are linked into oal.lib.

The following are examples of interrupt code locations:

  • Platform\Common\Src\Common\Intr
  • Platform\Common\Src\SOC\<SOC Name>\OAL\Intr
  • Platform\Common\Src\<CPU Family>\Common\Intr
  • Platform\<BSP Name>\Src\OAL\Oallib

The following table shows the main interrupt functions. For more information, see Interrupt Reference and OAL Functions. You may need to adapt the interrupt code to your hardware platform.

Note that in some cases, the OAL and BSP functions have similar names (for example, OALIntrDisableIrqs and BSPIntrDisableIrq). The name similarity comes about because the BSPIntr* functions are called by the OALIntr* functions if your implementation uses hardware platform callbacks.

Purpose Function name Typical file name

Enables interrupts

OALIntrEnableIrqs, BSPIntrEnableIrq

intr.c

Disables interrupts

OALIntrDisableIrqs, BSPIntrDisableIrq

intr.c

Initializes interrupts

OALIntrInit, BSPIntrInit, OALIntrMapInit

intr.c

Handles interrupt requests

OALIntrRequestIrqs, BSPIntrRequestIrqs

intr.c

Releases interrupts

OALIntrReleaseSysIntr

map.c

Handles interrupt translation and mapping

OALIntrStaticTranslate, OALIntrTranslateIrq

map.c

See Also

Concepts

OAL Code Overview