Required OAL Functions

The following table shows the required OAL functions with a description of the purpose of each. These functions are present in the OAL and are required by the kernel library Nk.lib.

Note   This is not an all-inclusive OAL function list. OEMs can implement more functions to enhance platform support.

Programming element Description
CacheErrorHandler This function handles cache errors that occur on a MIPS platform.
FlushDCache This function is deprecated and should never be used. Instead, use the OEMCacheRangeFlush function.
FlushICache This function is deprecated and should never be used. Instead, use the OEMCacheRangeFlush function.
InitClock This function is a required OAL function that initializes the CPU clock and set the system tick interval frequency.
OEMARMCacheMode This function sets the cache mode used to build the ARM CPU page tables.
OEMCacheRangeFlush This function is used by the kernel to flush or invalidate a certain range of the cache or translation look-aside buffer (TLB).
OEMClearDebugCommError This function clears and initializes the serial communications port.
OEMDataAbortHandler This function is specific to ARM processors, excluding StrongARM and XScale, and is called from the kernel when a data abort occurs.
OEMFlushCache This function is called by the kernel in response to a CacheSync function request.
OEMGetExtensionDRAM This function gets information about extension dynamic RAM (DRAM), if present on the device.
OEMGetRealTime This function is called by the kernel to retrieve the time from the real-time clock.
OEMIdle This function is called by the kernel to place the CPU in the idle state when there are no threads ready to run.
OEMInit This function is implemented by the OEM to initialize all hardware interfaces for the target device.
OEMInterruptDisable This function disables the specified hardware interrupt.
OEMInterruptDone This function signals completion of interrupt processing.
OEMInterruptEnable This function performs any hardware operations necessary to enable the specified hardware interrupt.
OEMInterruptHandler This function is called by the kernel when an interrupt occurs.
OEMInterruptHandlerFIQ This function is implemented by the OEM to provide fast interrupt request (FIQ) support for the ARM microprocessor.
OEMIoControl This function provides a generic I/O control code (IOCTL) for OEM-supplied information.
OEMNMI This function is implemented by the OEM to support a nonmaskable interrupt.
OEMNMIHandler This function enables a nonmaskable interrupt (NMI) to be captured by an OEM.
OEMPowerOff This function is invoked when the OFF button is pressed or the Graphics, Windowing, and Events Subsystem (GWES) times out on its power-off timer.
OEMSetAlarmTime This function is called by the kernel to set the real-time clock alarm.
OEMSetRealTime This function is called by the kernel to set the real-time clock.
SC_GetTickCount This function is called from the OAL and retrieves the number of milliseconds that have elapsed since Windows CE was started.
TLBClear This function is deprecated and should never be used. Instead, use the OEMCacheRangeFlush function.

For information about the CPU dependencies for the required OAL functions, see CPU Dependencies for OAL Functions.

See Also

OAL Functions

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.