OEMInitDebugSerial (Compact 2013)


This function initializes the debug serial port on the target device.

void OEMInitDebugSerial (void); 


The kernel calls this function before the OEMInit function and before the kernel data section is fully initialized.

OEMInitDebugSerial can use global variables; however, these variables might not be initialized and might subsequently be cleared when the kernel data section is initialized.

If the device stops responding after enabling MMU in KernelStart, it is important to determine whether the problem occurs before OEMInitDebugSerial is called. If it occurs before this API is called, the problem typically is caused by an error in g_oalAddressTable or the cache. First determine whether KernelStart has actually been called by using LED or serial debug output in the startup code. The system can stop responding if an exception occurs in the kernel initialization code. You can use the same debug output in OEMInitDebugSerial to determine whether the system stops responding during MMU initialization. If you can isolate the problem to MMU initialization, the address table or the cache are typically at fault. The LED or serial debug code must handle the different address space that is used before MMU is enabled.




OEMMain.lib or OEMMain_StaticKITL.lib