|
@@ -11,6 +11,8 @@
|
|
|
#include <Library/CacheMaintenanceLib.h>
|
|
|
#include <Library/DebugAgentLib.h>
|
|
|
#include <Library/ArmLib.h>
|
|
|
+#include <Library/PrintLib.h>
|
|
|
+#include <Library/SerialPortLib.h>
|
|
|
|
|
|
#include "PrePeiCore.h"
|
|
|
|
|
@@ -52,6 +54,31 @@ CreatePpiList (
|
|
|
*PpiListSize = sizeof (gCommonPpiTable) + PlatformPpiListSize;
|
|
|
}
|
|
|
|
|
|
+/**
|
|
|
+
|
|
|
+ Prints firmware version and build time to serial console.
|
|
|
+
|
|
|
+**/
|
|
|
+STATIC
|
|
|
+VOID
|
|
|
+PrintFirmwareVersion (
|
|
|
+ VOID
|
|
|
+ )
|
|
|
+{
|
|
|
+ CHAR8 Buffer[100];
|
|
|
+ UINTN CharCount;
|
|
|
+
|
|
|
+ CharCount = AsciiSPrint (
|
|
|
+ Buffer,
|
|
|
+ sizeof (Buffer),
|
|
|
+ "UEFI firmware (version %s built at %a on %a)\n\r",
|
|
|
+ (CHAR16 *)PcdGetPtr (PcdFirmwareVersionString),
|
|
|
+ __TIME__,
|
|
|
+ __DATE__
|
|
|
+ );
|
|
|
+ SerialPortWrite ((UINT8 *)Buffer, CharCount);
|
|
|
+}
|
|
|
+
|
|
|
VOID
|
|
|
CEntryPoint (
|
|
|
IN UINTN MpId,
|
|
@@ -96,6 +123,8 @@ CEntryPoint (
|
|
|
// called.
|
|
|
ProcessLibraryConstructorList ();
|
|
|
|
|
|
+ PrintFirmwareVersion ();
|
|
|
+
|
|
|
// Initialize the Debug Agent for Source Level Debugging
|
|
|
InitializeDebugAgent (DEBUG_AGENT_INIT_POSTMEM_SEC, NULL, NULL);
|
|
|
SaveAndSetDebugTimerInterrupt (TRUE);
|