UefiPayloadPkg: Enhance UEFI payload for coreboot and Slim Bootloader
authorDong, Guo <guo.dong@intel.com>
Thu, 11 Apr 2019 15:51:22 +0000 (08:51 -0700)
committerMaurice Ma <maurice.ma@intel.com>
Mon, 15 Apr 2019 19:30:05 +0000 (12:30 -0700)
commit04af8bf262f1917b74745f8ffd3aa8fb465352df
tree14023c61c67dd62b37e64995d8410ee5b10ef709
parent87fcc6e8634efadb535ea0d7e9869e72e772fccf
UefiPayloadPkg: Enhance UEFI payload for coreboot and Slim Bootloader

CorebootModulePkg and CorebootPayloadPkg originally supports coreboot only.
In order to support other bootloaders, such as Slim Bootloader, they need
be updated to be more generic.
UEFI Payload (UefiPayloadPkg) a converged package from CorebootModulePkg
and CorebootPayloadPkg with following updates:
a. Support both coreboot and Slim Bootloader
b. Removed SataControllerDxe and BaseSerialPortLib16550 to use EDK2 modules
c. Support passing bootloader parameter to UEFI payload, e.g. coreboot
   table from coreboot or HOB list from Slim Bootloader
d. Using GraphicsOutputDxe from EDK2 with minor change instead of FbGop
e. Remove the dependency to IntelFrameworkPkg and IntelFrameworkModulePkg
   and QuarkSocPkg
f. Use BaseDebugLibSerialPort library as DebugLib
g. Use HPET timer, drop legacy 8254 timer support
h. Use BaseXApicX2ApicLib instead of BaseXApicLib
i. Remove HOB gUefiFrameBufferInfoGuid to use EDK2 graphics HOBs.
j. Other clean ups

On how UefiPayloadPkg could work with coreboot/Slim Bootloader, please
refer UefiPayloadPkg/BuildAndIntegrationInstructions.txt

Once UefiPayloadPkg is checked-in, CorebootModulePkg and CorebootPayloadPkg
could be retired.

Signed-off-by: Guo Dong <guo.dong@intel.com>
Reviewed-by: Maurice Ma <maurice.ma@intel.com>
50 files changed:
UefiPayloadPkg/BlSupportDxe/BlSupportDxe.c [new file with mode: 0644]
UefiPayloadPkg/BlSupportDxe/BlSupportDxe.h [new file with mode: 0644]
UefiPayloadPkg/BlSupportDxe/BlSupportDxe.inf [new file with mode: 0644]
UefiPayloadPkg/BlSupportPei/BlSupportPei.c [new file with mode: 0644]
UefiPayloadPkg/BlSupportPei/BlSupportPei.h [new file with mode: 0644]
UefiPayloadPkg/BlSupportPei/BlSupportPei.inf [new file with mode: 0644]
UefiPayloadPkg/BuildAndIntegrationInstructions.txt [new file with mode: 0644]
UefiPayloadPkg/GraphicsOutputDxe/ComponentName.c [new file with mode: 0644]
UefiPayloadPkg/GraphicsOutputDxe/GraphicsOutput.c [new file with mode: 0644]
UefiPayloadPkg/GraphicsOutputDxe/GraphicsOutput.h [new file with mode: 0644]
UefiPayloadPkg/GraphicsOutputDxe/GraphicsOutputDxe.inf [new file with mode: 0644]
UefiPayloadPkg/Include/Coreboot.h [new file with mode: 0644]
UefiPayloadPkg/Include/Guid/AcpiBoardInfoGuid.h [new file with mode: 0644]
UefiPayloadPkg/Include/Guid/MemoryMapInfoGuid.h [new file with mode: 0644]
UefiPayloadPkg/Include/Guid/SerialPortInfoGuid.h [new file with mode: 0644]
UefiPayloadPkg/Include/Guid/SystemTableInfoGuid.h [new file with mode: 0644]
UefiPayloadPkg/Include/Library/BlParseLib.h [new file with mode: 0644]
UefiPayloadPkg/Include/Library/PlatformSupportLib.h [new file with mode: 0644]
UefiPayloadPkg/Library/AcpiTimerLib/AcpiTimerLib.c [new file with mode: 0644]
UefiPayloadPkg/Library/AcpiTimerLib/AcpiTimerLib.inf [new file with mode: 0644]
UefiPayloadPkg/Library/CbParseLib/CbParseLib.c [new file with mode: 0644]
UefiPayloadPkg/Library/CbParseLib/CbParseLib.inf [new file with mode: 0644]
UefiPayloadPkg/Library/PciHostBridgeLib/PciHostBridge.h [new file with mode: 0644]
UefiPayloadPkg/Library/PciHostBridgeLib/PciHostBridgeLib.c [new file with mode: 0644]
UefiPayloadPkg/Library/PciHostBridgeLib/PciHostBridgeLib.inf [new file with mode: 0644]
UefiPayloadPkg/Library/PciHostBridgeLib/PciHostBridgeSupport.c [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.c [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManager.h [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformConsole.c [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformConsole.h [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformBootManagerLib/PlatformData.c [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformHookLib/PlatformHookLib.c [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformHookLib/PlatformHookLib.inf [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformSupportLibNull/PlatformSupportLibNull.c [new file with mode: 0644]
UefiPayloadPkg/Library/PlatformSupportLibNull/PlatformSupportLibNull.inf [new file with mode: 0644]
UefiPayloadPkg/Library/ResetSystemLib/ResetSystemLib.c [new file with mode: 0644]
UefiPayloadPkg/Library/ResetSystemLib/ResetSystemLib.inf [new file with mode: 0644]
UefiPayloadPkg/Library/SblParseLib/SblParseLib.c [new file with mode: 0644]
UefiPayloadPkg/Library/SblParseLib/SblParseLib.inf [new file with mode: 0644]
UefiPayloadPkg/SecCore/FindPeiCore.c [new file with mode: 0644]
UefiPayloadPkg/SecCore/Ia32/SecEntry.nasm [new file with mode: 0644]
UefiPayloadPkg/SecCore/Ia32/Stack.nasm [new file with mode: 0644]
UefiPayloadPkg/SecCore/SecCore.inf [new file with mode: 0644]
UefiPayloadPkg/SecCore/SecMain.c [new file with mode: 0644]
UefiPayloadPkg/SecCore/SecMain.h [new file with mode: 0644]
UefiPayloadPkg/UefiPayloadPkg.dec [new file with mode: 0644]
UefiPayloadPkg/UefiPayloadPkg.fdf [new file with mode: 0644]
UefiPayloadPkg/UefiPayloadPkgIa32.dsc [new file with mode: 0644]
UefiPayloadPkg/UefiPayloadPkgIa32X64.dsc [new file with mode: 0644]