1. Update fdf and dsc to use SerialDxe in MdeModulePkg. 2. Separate the code that gets SerialRegBase and SerialRegAccessType by CbParseLib from CorebootPayloadPkg/Library/SerialPortLib to PlatformHookLib, and then leverage BaseSerialPortLib16550 in MdeModulePkg. 3. Remove CorebootPayloadPkg/SerialDxe and CorebootPayloadPkg/Library/SerialPortLib. Cc: Michael D Kinney <michael.d.kinney@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Maurice Ma <maurice.ma@intel.com> Cc: Prince Agyeman <prince.agyeman@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Maurice Ma <maurice.ma@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18968 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			279 lines
		
	
	
		
			9.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			279 lines
		
	
	
		
			9.5 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| ## @file
 | |
| # Coreboot Payload Package
 | |
| #
 | |
| # Provides drivers and definitions to create uefi payload for coreboot. 
 | |
| #
 | |
| # Copyright (c) 2014 - 2015, Intel Corporation. All rights reserved.<BR>
 | |
| # This program and the accompanying materials are licensed and made available under 
 | |
| # the terms and conditions of the BSD License that accompanies this distribution.  
 | |
| # The full text of the license may be found at
 | |
| # http://opensource.org/licenses/bsd-license.php.                                                                          
 | |
| # 
 | |
| # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,                     
 | |
| # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.  
 | |
| #
 | |
| ##
 | |
| 
 | |
| ################################################################################
 | |
| [FD.UefiPayload]
 | |
| BaseAddress   = 0x800000|gUefiCorebootModulePkgTokenSpaceGuid.PcdPayloadFdMemBase
 | |
| Size          = 0x410000|gUefiCorebootModulePkgTokenSpaceGuid.PcdPayloadFdMemSize
 | |
| ErasePolarity = 1
 | |
| BlockSize     = 0x1000
 | |
| NumBlocks     = 0x410
 | |
| 
 | |
| 0x00000000|0x030000
 | |
| FV = PEIFV
 | |
| 
 | |
| 0x00030000|0x3E0000
 | |
| FV = DXEFV
 | |
| 
 | |
| ################################################################################
 | |
| [FV.PEIFV]
 | |
| BlockSize          = 0x1000
 | |
| FvAlignment        = 16
 | |
| ERASE_POLARITY     = 1
 | |
| MEMORY_MAPPED      = TRUE
 | |
| STICKY_WRITE       = TRUE
 | |
| LOCK_CAP           = TRUE
 | |
| LOCK_STATUS        = TRUE
 | |
| WRITE_DISABLED_CAP = TRUE
 | |
| WRITE_ENABLED_CAP  = TRUE
 | |
| WRITE_STATUS       = TRUE
 | |
| WRITE_LOCK_CAP     = TRUE
 | |
| WRITE_LOCK_STATUS  = TRUE
 | |
| READ_DISABLED_CAP  = TRUE
 | |
| READ_ENABLED_CAP   = TRUE
 | |
| READ_STATUS        = TRUE
 | |
| READ_LOCK_CAP      = TRUE
 | |
| READ_LOCK_STATUS   = TRUE
 | |
| 
 | |
| INF CorebootModulePkg/SecCore/SecCore.inf
 | |
| 
 | |
| INF MdeModulePkg/Core/Pei/PeiMain.inf
 | |
| INF MdeModulePkg/Universal/PCD/Pei/Pcd.inf
 | |
| INF IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
 | |
| INF CorebootModulePkg/CbSupportPei/CbSupportPei.inf
 | |
| INF MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf
 | |
| 
 | |
| ################################################################################
 | |
| 
 | |
| [FV.DXEFV]
 | |
| BlockSize          = 0x1000
 | |
| FvAlignment        = 16
 | |
| ERASE_POLARITY     = 1
 | |
| MEMORY_MAPPED      = TRUE
 | |
| STICKY_WRITE       = TRUE
 | |
| LOCK_CAP           = TRUE
 | |
| LOCK_STATUS        = TRUE
 | |
| WRITE_DISABLED_CAP = TRUE
 | |
| WRITE_ENABLED_CAP  = TRUE
 | |
| WRITE_STATUS       = TRUE
 | |
| WRITE_LOCK_CAP     = TRUE
 | |
| WRITE_LOCK_STATUS  = TRUE
 | |
| READ_DISABLED_CAP  = TRUE
 | |
| READ_ENABLED_CAP   = TRUE
 | |
| READ_STATUS        = TRUE
 | |
| READ_LOCK_CAP      = TRUE
 | |
| READ_LOCK_STATUS   = TRUE
 | |
| 
 | |
| #
 | |
| # DXE Phase modules
 | |
| #
 | |
| INF MdeModulePkg/Core/Dxe/DxeMain.inf
 | |
| INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
 | |
| INF IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
 | |
| 
 | |
| INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
 | |
| INF UefiCpuPkg/CpuDxe/CpuDxe.inf
 | |
| INF IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf
 | |
| INF PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
 | |
| INF MdeModulePkg/Universal/Metronome/Metronome.inf
 | |
| INF MdeModulePkg/Universal/WatchdogTimerDxe/WatchdogTimer.inf
 | |
| INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
 | |
| INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
 | |
| INF MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
 | |
| INF MdeModulePkg/Universal/ResetSystemRuntimeDxe/ResetSystemRuntimeDxe.inf  
 | |
| INF PcAtChipsetPkg/PcatRealTimeClockRuntimeDxe/PcatRealTimeClockRuntimeDxe.inf 
 | |
| INF MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
 | |
| 
 | |
| INF UefiCpuPkg/CpuIo2Dxe/CpuIo2Dxe.inf
 | |
| INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
 | |
| INF MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
 | |
| INF PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf 
 | |
| INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
 | |
| INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf 
 | |
| INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
 | |
| INF CorebootModulePkg/CbSupportDxe/CbSupportDxe.inf 
 | |
| 
 | |
| INF MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
 | |
| #
 | |
| # PCI Support
 | |
| #
 | |
| INF DuetPkg/PciRootBridgeNoEnumerationDxe/PciRootBridgeNoEnumeration.inf
 | |
| INF DuetPkg/PciBusNoEnumerationDxe/PciBusNoEnumeration.inf 
 | |
| 
 | |
| #
 | |
| # ISA Support
 | |
| #
 | |
| INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf
 | |
| 
 | |
| #
 | |
| # Console Support
 | |
| #
 | |
| INF MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
 | |
| INF MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
 | |
| INF MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
 | |
| INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
 | |
| 
 | |
| #
 | |
| # SCSI/ATA/IDE/DISK Support
 | |
| #
 | |
| INF MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
 | |
| INF MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
 | |
| INF MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
 | |
| INF DuetPkg/SataControllerDxe/SataControllerDxe.inf  
 | |
| INF MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
 | |
| INF MdeModulePkg/Bus/Ata/AtaAtapiPassThru/AtaAtapiPassThru.inf
 | |
| INF MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
 | |
| INF MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
 | |
| 
 | |
| !if $(ARCH) == IA32
 | |
| INF RuleOverride = BINARY USE = IA32 FatBinPkg/EnhancedFatDxe/Fat.inf
 | |
| !else
 | |
| INF RuleOverride = BINARY USE = X64 FatBinPkg/EnhancedFatDxe/Fat.inf
 | |
| !endif
 | |
| 
 | |
| #
 | |
| # Usb Support
 | |
| #
 | |
| INF MdeModulePkg/Bus/Pci/UhciDxe/UhciDxe.inf
 | |
| INF MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
 | |
| INF MdeModulePkg/Bus/Pci/XhciDxe/XhciDxe.inf
 | |
| INF MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
 | |
| INF MdeModulePkg/Bus/Usb/UsbKbDxe/UsbKbDxe.inf
 | |
| INF MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
 | |
| 
 | |
| #
 | |
| # Shell
 | |
| #
 | |
| #!if $(ARCH) == IA32
 | |
| #INF  RuleOverride = BINARY USE = IA32 ShellBinPkg/UefiShell/UefiShell.inf
 | |
| #!else
 | |
| #INF  RuleOverride = BINARY USE = X64 ShellBinPkg/UefiShell/UefiShell.inf
 | |
| #!endif
 | |
| #
 | |
| !if $(ARCH) == IA32
 | |
| INF  RuleOverride = BINARY USE = IA32 EdkShellBinPkg/FullShell/FullShell.inf
 | |
| !else
 | |
| INF  RuleOverride = BINARY USE = X64 EdkShellBinPkg/FullShell/FullShell.inf
 | |
| !endif
 | |
| 
 | |
| FILE FREEFORM    = PCD(gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdLogoFile) {
 | |
|   SECTION RAW = MdeModulePkg/Logo/Logo.bmp
 | |
| }
 | |
| 
 | |
| #
 | |
| # Framebuffer Gop 
 | |
| #
 | |
| INF CorebootPayloadPkg/FbGop/FbGop.inf
 | |
| 
 | |
| ################################################################################
 | |
| #
 | |
| # Rules are use with the [FV] section's module INF type to define
 | |
| # how an FFS file is created for a given INF file. The following Rule are the default
 | |
| # rules for the different module type. User can add the customized rules to define the
 | |
| # content of the FFS file.
 | |
| #
 | |
| ################################################################################
 | |
| 
 | |
| [Rule.Common.SEC]
 | |
|   FILE SEC = $(NAMED_GUID) {
 | |
|     PE32     PE32   Align=32    $(INF_OUTPUT)/$(MODULE_NAME).efi
 | |
|   }
 | |
| 
 | |
| [Rule.Common.PEI_CORE]
 | |
|   FILE PEI_CORE = $(NAMED_GUID) {
 | |
|     PE32     PE32   Align=32    $(INF_OUTPUT)/$(MODULE_NAME).efi
 | |
|     UI       STRING ="$(MODULE_NAME)" Optional
 | |
|     VERSION  STRING ="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
 | |
|   }
 | |
| 
 | |
| [Rule.Common.PEIM]
 | |
|   FILE PEIM = $(NAMED_GUID) {
 | |
|      PEI_DEPEX PEI_DEPEX Optional        $(INF_OUTPUT)/$(MODULE_NAME).depex
 | |
|      PE32      PE32   Align=32           $(INF_OUTPUT)/$(MODULE_NAME).efi
 | |
|      UI       STRING="$(MODULE_NAME)" Optional
 | |
|      VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
 | |
|   }
 | |
| 
 | |
| [Rule.Common.DXE_CORE]
 | |
|   FILE DXE_CORE = $(NAMED_GUID) {
 | |
|     PE32     PE32           $(INF_OUTPUT)/$(MODULE_NAME).efi
 | |
|     UI       STRING="$(MODULE_NAME)" Optional
 | |
|     VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
 | |
|   }
 | |
| 
 | |
| [Rule.Common.DXE_DRIVER]
 | |
|   FILE DRIVER = $(NAMED_GUID) {
 | |
|     DXE_DEPEX    DXE_DEPEX Optional      $(INF_OUTPUT)/$(MODULE_NAME).depex
 | |
|     PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi
 | |
|     UI       STRING="$(MODULE_NAME)" Optional
 | |
|     VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
 | |
|   }
 | |
| 
 | |
| [Rule.Common.DXE_RUNTIME_DRIVER]
 | |
|   FILE DRIVER = $(NAMED_GUID) {
 | |
|     DXE_DEPEX    DXE_DEPEX Optional      $(INF_OUTPUT)/$(MODULE_NAME).depex
 | |
|     PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi
 | |
|     UI       STRING="$(MODULE_NAME)" Optional
 | |
|     VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
 | |
|   }
 | |
| 
 | |
| [Rule.Common.UEFI_DRIVER]
 | |
|   FILE DRIVER = $(NAMED_GUID) {
 | |
|     DXE_DEPEX    DXE_DEPEX Optional      $(INF_OUTPUT)/$(MODULE_NAME).depex
 | |
|     PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi
 | |
|     UI       STRING="$(MODULE_NAME)" Optional
 | |
|     VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
 | |
|   }
 | |
| 
 | |
| [Rule.Common.UEFI_DRIVER.BINARY]
 | |
|   FILE DRIVER = $(NAMED_GUID) {
 | |
|     DXE_DEPEX DXE_DEPEX Optional      |.depex
 | |
|     PE32      PE32                    |.efi
 | |
|     UI        STRING="$(MODULE_NAME)" Optional
 | |
|     VERSION   STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
 | |
|   }
 | |
| 
 | |
| [Rule.Common.UEFI_APPLICATION]
 | |
|   FILE APPLICATION = $(NAMED_GUID) {
 | |
|     PE32     PE32                    $(INF_OUTPUT)/$(MODULE_NAME).efi
 | |
|     UI       STRING="$(MODULE_NAME)" Optional
 | |
|     VERSION  STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
 | |
|   }
 | |
| 
 | |
| [Rule.Common.UEFI_APPLICATION.BINARY]
 | |
|   FILE APPLICATION = $(NAMED_GUID) {
 | |
|     PE32      PE32                    |.efi
 | |
|     UI        STRING="$(MODULE_NAME)" Optional
 | |
|     VERSION   STRING="$(INF_VERSION)" Optional BUILD_NUM=$(BUILD_NUMBER)
 | |
|   }
 | |
| 
 | |
| [Rule.Common.USER_DEFINED.ACPITABLE]
 | |
|   FILE FREEFORM = $(NAMED_GUID) {
 | |
|     RAW ACPI               |.acpi
 | |
|     RAW ASL                |.aml
 | |
|   }
 | |
| 
 | |
| [Rule.Common.USER_DEFINED.CSM]
 | |
|   FILE FREEFORM = $(NAMED_GUID) {
 | |
|     RAW BIN                |.bin
 | |
|   }
 | |
| 
 | |
| [Rule.Common.SEC.RESET_VECTOR]
 | |
|   FILE RAW = $(NAMED_GUID) {
 | |
|     RAW RAW                |.raw
 | |
|   }
 | |
| 
 |