| OEMInit | Initializes the hardware interfaces for the platform. |
| OEMGetExtensionDRAM | Provides information about additional RAM, if available. |
| OEMGetRealTime | Retrieves time from RTC. |
| OEMSetAlarmTime | Sets the RTC alarm. |
| OEMSetRealTime | Set the time in the RTC. |
| OEMIdle | Puts CPU in idle state when no threads are running. |
| OEMInterruptDisable | Disables particular hardware interrupt. |
| OEMInterruptEnable | Enables particular hardware interrupt. |
| OEMInterruptDone | Signals completion of interrupt processing. |
| OEMInterruptHandler | Handles interrupts (is different for SHx processors). |
| OEMInterruptHandler | Handles FIQ (specific for ARM processors). |
| OEMIoControl | IO control code for OEM information. |
| OEMNMI | Supports a non maskable interrupt (specific to SHx processor). |
| OEMNMIHandler | Handler for non maskable interrupt (specific to SHx processor). |
| OEMPowerOff | Puts CPU in suspend state and takes care of final power down operations. |
Kernel Independent Transport Layer
The OEMInit function is the main OAL routine that initializes board-specific peripherals, sets up the kernel variables, and starts KITL by passing a KITL IOCTL to the kernel. If you added and enabled KITL in the run-time image, the kernel starts KITL for debugging over different transport layers, as discussed in Chapter 4, 'Debugging and Testing the System.'
Table 5-6 lists the functions that the OAL must include to enable KITL support on a new platform.
Table 5-6 KITL support functions
| Function | Description |
|---|---|
| OEMKitlInit | Initializes KITL. |
| OEMKitlGetSecs | Returns the current time in seconds. |
| TransportDecode | Decodes recevied frames. |
| TransportEnableInt | Enables or disables KITL interrupt if it is interrupt based. |
| TransportEncode | Encodes data accroding the transport's required frame structure. |
