git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@150 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@ -502,15 +502,6 @@ IDEBusDriverBindingStart (
|
|||||||
IdeBlkIoDevicePtr->IdeBusDriverPrivateData = IdeBusDriverPrivateData;
|
IdeBlkIoDevicePtr->IdeBusDriverPrivateData = IdeBusDriverPrivateData;
|
||||||
IdeBlkIoDevicePtr->IoPort->BusMasterBaseAddr = IdeRegsBaseAddr[IdeChannel].BusMasterBaseAddr;
|
IdeBlkIoDevicePtr->IoPort->BusMasterBaseAddr = IdeRegsBaseAddr[IdeChannel].BusMasterBaseAddr;
|
||||||
|
|
||||||
//
|
|
||||||
// Report Status code: is about to detect IDE drive
|
|
||||||
//
|
|
||||||
REPORT_STATUS_CODE_WITH_DEVICE_PATH (
|
|
||||||
EFI_PROGRESS_CODE,
|
|
||||||
(EFI_IO_BUS_ATA_ATAPI | EFI_P_PC_PRESENCE_DETECT),
|
|
||||||
IdeBlkIoDevicePtr->DevicePath
|
|
||||||
);
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Discover device, now!
|
// Discover device, now!
|
||||||
//
|
//
|
||||||
|
@ -1,42 +1,42 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
-->
|
-->
|
||||||
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
||||||
<MbdHeader>
|
<MbdHeader>
|
||||||
<BaseName>DxeMain</BaseName>
|
<BaseName>DxeMain</BaseName>
|
||||||
<Guid>D6A2CB7F-6A18-4e2f-B43B-9920A733700A</Guid>
|
<Guid>D6A2CB7F-6A18-4e2f-B43B-9920A733700A</Guid>
|
||||||
<Version>0</Version>
|
<Version>0</Version>
|
||||||
<Description>FIX ME!</Description>
|
<Description>FIX ME!</Description>
|
||||||
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
||||||
<License> All rights reserved. This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which 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. </License>
|
<License> All rights reserved. This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which 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. </License>
|
||||||
<Created>2006-03-12 17:09</Created>
|
<Created>2006-03-12 17:09</Created>
|
||||||
<Modified>2006-03-19 15:18</Modified>
|
<Modified>2006-03-19 15:18</Modified>
|
||||||
</MbdHeader>
|
</MbdHeader>
|
||||||
<Libraries>
|
<Libraries>
|
||||||
<Library>BaseLib</Library>
|
<Library>BaseLib</Library>
|
||||||
<Library>BaseCacheMaintenanceLib</Library>
|
<Library>BaseCacheMaintenanceLib</Library>
|
||||||
<Library>DxeReportStatusCodeLib</Library>
|
<Library>DxeReportStatusCodeLib</Library>
|
||||||
<Library>BaseDebugLibReportStatusCode</Library>
|
<Library>BaseDebugLibReportStatusCode</Library>
|
||||||
<Library>DxeCoreUefiDecompressLibFromHob</Library>
|
<Library OverrideID="1111">DxeCoreUefiDecompressLibFromHob</Library>
|
||||||
<Library>DxeCoreTianoDecompressLibFromHob</Library>
|
<Library OverrideID="1111">DxeCoreTianoDecompressLibFromHob</Library>
|
||||||
<Library>DxeCoreCustomDecompressLibFromHob</Library>
|
<Library OverrideID="3333">DxeCoreCustomDecompressLibFromHob</Library>
|
||||||
<Library>EdkDxePeCoffLoaderFromHobLib</Library>
|
<Library OverrideID="4444">EdkDxePeCoffLoaderFromHobLib</Library>
|
||||||
<Library>DxeCoreHobLib</Library>
|
<Library>DxeCoreHobLib</Library>
|
||||||
<Library>DxeCoreEntryPoint</Library>
|
<Library>DxeCoreEntryPoint</Library>
|
||||||
<Library>BaseMemoryLib</Library>
|
<Library>BaseMemoryLib</Library>
|
||||||
<Library>UefiLib</Library>
|
<Library>UefiLib</Library>
|
||||||
<Library>BasePerformanceLibNull</Library>
|
<Library>BasePerformanceLibNull</Library>
|
||||||
</Libraries>
|
</Libraries>
|
||||||
<BuildOptions ToolChain="MSFT">
|
<BuildOptions ToolChain="MSFT">
|
||||||
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
||||||
<Option>C_PROJ_FLAGS = ${C_PROJ_FLAGS} /Ob0</Option>
|
<Option>C_PROJ_FLAGS = ${C_PROJ_FLAGS} /Ob0</Option>
|
||||||
</BuildOptions>
|
</BuildOptions>
|
||||||
</ModuleBuildDescription>
|
</ModuleBuildDescription>
|
||||||
|
@ -1,164 +1,167 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
-->
|
-->
|
||||||
<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
||||||
<MsaHeader>
|
<MsaHeader>
|
||||||
<BaseName>DxeMain</BaseName>
|
<BaseName>DxeMain</BaseName>
|
||||||
<ModuleType>DXE_CORE</ModuleType>
|
<ModuleType>DXE_CORE</ModuleType>
|
||||||
<ComponentType>BS_DRIVER</ComponentType>
|
<ComponentType>BS_DRIVER</ComponentType>
|
||||||
<Guid>D6A2CB7F-6A18-4e2f-B43B-9920A733700A</Guid>
|
<Guid>D6A2CB7F-6A18-4e2f-B43B-9920A733700A</Guid>
|
||||||
<Version>0</Version>
|
<Version>0</Version>
|
||||||
<Abstract>Component description file for DxeMain.</Abstract>
|
<Abstract>Component description file for DxeMain.</Abstract>
|
||||||
<Description>FIX ME!</Description>
|
<Description>FIX ME!</Description>
|
||||||
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
||||||
<License> All rights reserved. This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which 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. </License>
|
<License> All rights reserved. This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which 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. </License>
|
||||||
<Specification>0</Specification>
|
<Specification>0</Specification>
|
||||||
<Created>2006-03-12 17:09</Created>
|
<Created>2006-03-12 17:09</Created>
|
||||||
<Updated>2006-03-19 15:18</Updated>
|
<Updated>2006-03-19 15:18</Updated>
|
||||||
</MsaHeader>
|
</MsaHeader>
|
||||||
<LibraryClassDefinitions>
|
<LibraryClassDefinitions>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">DxeCoreEntryPoint</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">DxeCoreEntryPoint</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">DebugLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">DebugLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">UefiLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">UefiLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">BaseLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">BaseLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">HobLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">HobLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">PerformanceLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">PerformanceLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">UefiDecompressLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">UefiDecompressLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">TianoDecompressLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">TianoDecompressLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">CustomDecompressLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">CustomDecompressLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">EdkPeCoffLoaderLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">EdkPeCoffLoaderLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">CacheMaintenanceLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">CacheMaintenanceLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">BaseMemoryLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">BaseMemoryLib</LibraryClass>
|
||||||
</LibraryClassDefinitions>
|
</LibraryClassDefinitions>
|
||||||
<SourceFiles>
|
<SourceFiles>
|
||||||
<Filename>DxeMain/DxeMain.c</Filename>
|
<Filename>DxeMain/DxeMain.c</Filename>
|
||||||
<Filename>DxeMain/DxeProtocolNotify.c</Filename>
|
<Filename>DxeMain/DxeProtocolNotify.c</Filename>
|
||||||
<Filename>Dispatcher/Dispatcher.c</Filename>
|
<Filename>Dispatcher/Dispatcher.c</Filename>
|
||||||
<Filename>Dispatcher/Dependency.c</Filename>
|
<Filename>Dispatcher/Dependency.c</Filename>
|
||||||
<Filename>Event/ExecData.c</Filename>
|
<Filename>Event/ExecData.c</Filename>
|
||||||
<Filename>Event/Event.c</Filename>
|
<Filename>Event/Event.c</Filename>
|
||||||
<Filename>Event/Timer.c</Filename>
|
<Filename>Event/Timer.c</Filename>
|
||||||
<Filename>Event/Tpl.c</Filename>
|
<Filename>Event/Tpl.c</Filename>
|
||||||
<Filename>FwVol/FwVol.c</Filename>
|
<Filename>FwVol/FwVol.c</Filename>
|
||||||
<Filename>FwVol/Ffs.c</Filename>
|
<Filename>FwVol/Ffs.c</Filename>
|
||||||
<Filename>FwVol/FwVolAttrib.c</Filename>
|
<Filename>FwVol/FwVolAttrib.c</Filename>
|
||||||
<Filename>FwVol/FwVolRead.c</Filename>
|
<Filename>FwVol/FwVolRead.c</Filename>
|
||||||
<Filename>FwVol/FwVolWrite.c</Filename>
|
<Filename>FwVol/FwVolWrite.c</Filename>
|
||||||
<Filename>FwVolBlock/FwVolBlock.c</Filename>
|
<Filename>FwVolBlock/FwVolBlock.c</Filename>
|
||||||
<Filename>Mem/MemData.c</Filename>
|
<Filename>Mem/MemData.c</Filename>
|
||||||
<Filename>Mem/Page.c</Filename>
|
<Filename>Mem/Page.c</Filename>
|
||||||
<Filename>Mem/Pool.c</Filename>
|
<Filename>Mem/Pool.c</Filename>
|
||||||
<Filename>Gcd/Gcd.c</Filename>
|
<Filename>Gcd/Gcd.c</Filename>
|
||||||
<Filename>Hand/Handle.c</Filename>
|
<Filename>Hand/Handle.c</Filename>
|
||||||
<Filename>Hand/Locate.c</Filename>
|
<Filename>Hand/Locate.c</Filename>
|
||||||
<Filename>Hand/Notify.c</Filename>
|
<Filename>Hand/Notify.c</Filename>
|
||||||
<Filename>Hand/DriverSupport.c</Filename>
|
<Filename>Hand/DriverSupport.c</Filename>
|
||||||
<Filename>Library/Library.c</Filename>
|
<Filename>Library/Library.c</Filename>
|
||||||
<Filename>Misc/InstallConfigurationTable.c</Filename>
|
<Filename>Misc/InstallConfigurationTable.c</Filename>
|
||||||
<Filename>Misc/SetWatchdogTimer.c</Filename>
|
<Filename>Misc/SetWatchdogTimer.c</Filename>
|
||||||
<Filename>Misc/Stall.c</Filename>
|
<Filename>Misc/Stall.c</Filename>
|
||||||
<Filename>Misc/DebugImageInfo.c</Filename>
|
<Filename>Misc/DebugImageInfo.c</Filename>
|
||||||
<Filename>Image/Image.c</Filename>
|
<Filename>Image/Image.c</Filename>
|
||||||
<Filename>Image/ImageFile.c</Filename>
|
<Filename>Image/ImageFile.c</Filename>
|
||||||
<Filename>SectionExtraction/CoreSectionExtraction.c</Filename>
|
<Filename>SectionExtraction/CoreSectionExtraction.c</Filename>
|
||||||
<Filename>DebugImageInfo.h</Filename>
|
<Filename>DebugImageInfo.h</Filename>
|
||||||
<Filename>DebugMask.h</Filename>
|
<Filename>DebugMask.h</Filename>
|
||||||
<Filename>DxeMain.h</Filename>
|
<Filename>DxeMain.h</Filename>
|
||||||
<Filename>Exec.h</Filename>
|
<Filename>Exec.h</Filename>
|
||||||
<Filename>FwVolBlock.h</Filename>
|
<Filename>FwVolBlock.h</Filename>
|
||||||
<Filename>FwVolDriver.h</Filename>
|
<Filename>FwVolDriver.h</Filename>
|
||||||
<Filename>Gcd.h</Filename>
|
<Filename>Gcd.h</Filename>
|
||||||
<Filename>Hand.h</Filename>
|
<Filename>Hand.h</Filename>
|
||||||
<Filename>Image.h</Filename>
|
<Filename>Image.h</Filename>
|
||||||
<Filename>Imem.h</Filename>
|
<Filename>Imem.h</Filename>
|
||||||
<Filename>Library.h</Filename>
|
<Filename>Library.h</Filename>
|
||||||
</SourceFiles>
|
</SourceFiles>
|
||||||
<Includes>
|
<Includes>
|
||||||
<PackageName>MdePkg</PackageName>
|
<PackageName>MdePkg</PackageName>
|
||||||
<PackageName>EdkModulePkg</PackageName>
|
<PackageName>EdkModulePkg</PackageName>
|
||||||
</Includes>
|
</Includes>
|
||||||
<Protocols>
|
<Protocols>
|
||||||
<Protocol Usage="SOMETIMES_CONSUMED">Ebc</Protocol>
|
<Protocol Usage="SOMETIMES_CONSUMED">Ebc</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">LoadedImage</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">LoadedImage</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">DevicePath</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">DevicePath</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">Cpu</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">Cpu</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">FirmwareVolume</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">FirmwareVolume</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">FirmwareVolumeDispatch</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">FirmwareVolumeDispatch</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">FirmwareVolumeBlock</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">FirmwareVolumeBlock</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">SectionExtraction</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">SectionExtraction</Protocol>
|
||||||
<Protocol Usage="SOMETIMES_CONSUMED">DriverBinding</Protocol>
|
<Protocol Usage="SOMETIMES_CONSUMED">DriverBinding</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">PlatformDriverOverride</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">PlatformDriverOverride</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">BusSpecificDriverOverride</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">BusSpecificDriverOverride</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">Timer</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">Timer</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">Metronome</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">Metronome</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">MonotonicCounter</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">MonotonicCounter</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">VariableWrite</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">VariableWrite</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">Bds</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">Bds</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">Variable</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">Variable</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">Security</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">Security</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">WatchdogTimer</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">WatchdogTimer</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">Runtime</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">Runtime</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">RealTimeClock</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">RealTimeClock</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">Reset</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">Reset</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">LoadFile</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">LoadFile</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">SimpleFileSystem</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">SimpleFileSystem</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">LoadPeImage</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">LoadPeImage</Protocol>
|
||||||
</Protocols>
|
<Protocol Usage="ALWAYS_CONSUMED">Decompress</Protocol>
|
||||||
<Guids>
|
<Protocol Usage="ALWAYS_CONSUMED">CustomizedDecompress</Protocol>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<Protocol Usage="ALWAYS_CONSUMED">TianoDecompress</Protocol>
|
||||||
<C_Name>MemoryTypeInformation</C_Name>
|
</Protocols>
|
||||||
</GuidEntry>
|
<Guids>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>DxeServicesTable</C_Name>
|
<C_Name>MemoryTypeInformation</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>HobList</C_Name>
|
<C_Name>DxeServicesTable</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>DebugImageInfoTable</C_Name>
|
<C_Name>HobList</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>Apriori</C_Name>
|
<C_Name>DebugImageInfoTable</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>FirmwareFileSystem</C_Name>
|
<C_Name>Apriori</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>FileInfo</C_Name>
|
<C_Name>FirmwareFileSystem</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>HobMemoryAllocModule</C_Name>
|
<C_Name>FileInfo</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>PeiPeCoffLoader</C_Name>
|
<C_Name>HobMemoryAllocModule</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>LoadPeImage</C_Name>
|
<C_Name>PeiPeCoffLoader</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>EventExitBootServices</C_Name>
|
<C_Name>LoadPeImage</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>EventVirtualAddressChange</C_Name>
|
<C_Name>EventExitBootServices</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<C_Name>EventMemoryMapChange</C_Name>
|
<C_Name>EventVirtualAddressChange</C_Name>
|
||||||
</GuidEntry>
|
</GuidEntry>
|
||||||
</Guids>
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
<Externs>
|
<C_Name>EventMemoryMapChange</C_Name>
|
||||||
<Extern>
|
</GuidEntry>
|
||||||
<ModuleEntryPoint>DxeMain</ModuleEntryPoint>
|
</Guids>
|
||||||
</Extern>
|
<Externs>
|
||||||
</Externs>
|
<Extern>
|
||||||
<BuildOptions>
|
<ModuleEntryPoint>DxeMain</ModuleEntryPoint>
|
||||||
<Option>BUILD_TYPE=DXE_CORE</Option>
|
</Extern>
|
||||||
</BuildOptions>
|
</Externs>
|
||||||
</ModuleSurfaceArea>
|
<BuildOptions>
|
||||||
|
<Option>BUILD_TYPE=DXE_CORE</Option>
|
||||||
|
</BuildOptions>
|
||||||
|
</ModuleSurfaceArea>
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,63 +1,63 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
-->
|
-->
|
||||||
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
||||||
<MbdHeader>
|
<MbdHeader>
|
||||||
<BaseName>DxeIpl</BaseName>
|
<BaseName>DxeIpl</BaseName>
|
||||||
<Guid>86D70125-BAA3-4296-A62F-602BEBBB9081</Guid>
|
<Guid>86D70125-BAA3-4296-A62F-602BEBBB9081</Guid>
|
||||||
<Version>EDK_RELEASE_VERSION 0x00020000</Version>
|
<Version>EDK_RELEASE_VERSION 0x00020000</Version>
|
||||||
<Description>FIX ME!</Description>
|
<Description>FIX ME!</Description>
|
||||||
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
||||||
<License>
|
<License>
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
</License>
|
</License>
|
||||||
<Created>2006-03-12 17:09</Created>
|
<Created>2006-03-12 17:09</Created>
|
||||||
<Modified>2006-03-22 18:54</Modified>
|
<Modified>2006-03-22 18:54</Modified>
|
||||||
</MbdHeader>
|
</MbdHeader>
|
||||||
<Libraries>
|
<Libraries>
|
||||||
<Library>PeimEntryPoint</Library>
|
<Library>PeimEntryPoint</Library>
|
||||||
<Library>PeiMemoryLib</Library>
|
<Library>PeiMemoryLib</Library>
|
||||||
<Library>PeiCoreLib</Library>
|
<Library>PeiCoreLib</Library>
|
||||||
<Library>PeiServicesTablePointerLib</Library>
|
<Library OverrideID="4444">PeiServicesTablePointerLib</Library>
|
||||||
<Library>PeiHobLib</Library>
|
<Library>PeiHobLib</Library>
|
||||||
<Library>BaseCacheMaintenanceLib</Library>
|
<Library>BaseCacheMaintenanceLib</Library>
|
||||||
<Library>BaseUefiTianoDecompressLib</Library>
|
<Library>BaseUefiTianoDecompressLib</Library>
|
||||||
<Library>BaseCustomDecompressLibNull</Library>
|
<Library>BaseCustomDecompressLibNull</Library>
|
||||||
<Library>PeiReportStatusCodeLib</Library>
|
<Library>PeiReportStatusCodeLib</Library>
|
||||||
<Library>BaseDebugLibReportStatusCode</Library>
|
<Library>BaseDebugLibReportStatusCode</Library>
|
||||||
<Library>BaseLib</Library>
|
<Library>BaseLib</Library>
|
||||||
<Library>PeiMemoryAllocationLib</Library>
|
<Library>PeiMemoryAllocationLib</Library>
|
||||||
<Arch ArchType="IA32">
|
<Arch ArchType="IA32">
|
||||||
<Library OverrideID="8888">EdkPeCoffLoaderLib</Library>
|
<Library OverrideID="8888">EdkPeCoffLoaderLib</Library>
|
||||||
<Library OverrideID="8888">BasePeCoffLib</Library>
|
<Library OverrideID="8888">BasePeCoffLib</Library>
|
||||||
</Arch>
|
</Arch>
|
||||||
<Arch ArchType="X64">
|
<Arch ArchType="X64">
|
||||||
<Library>EdkPeCoffLoaderLib</Library>
|
<Library>EdkPeCoffLoaderLib</Library>
|
||||||
<Library>BasePeCoffLib</Library>
|
<Library>BasePeCoffLib</Library>
|
||||||
</Arch>
|
</Arch>
|
||||||
<Arch ArchType="IPF">
|
<Arch ArchType="IPF">
|
||||||
<Library>EdkPeCoffLoaderLib</Library>
|
<Library>EdkPeCoffLoaderLib</Library>
|
||||||
<Library>BasePeCoffLib</Library>
|
<Library>BasePeCoffLib</Library>
|
||||||
</Arch>
|
</Arch>
|
||||||
<Arch ArchType="EBC">
|
<Arch ArchType="EBC">
|
||||||
<Library>EdkPeCoffLoaderLib</Library>
|
<Library>EdkPeCoffLoaderLib</Library>
|
||||||
<Library>BasePeCoffLib</Library>
|
<Library>BasePeCoffLib</Library>
|
||||||
</Arch>
|
</Arch>
|
||||||
</Libraries>
|
</Libraries>
|
||||||
<BuildOptions ToolChain="MSFT">
|
<BuildOptions ToolChain="MSFT">
|
||||||
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
||||||
</BuildOptions>
|
</BuildOptions>
|
||||||
</ModuleBuildDescription>
|
</ModuleBuildDescription>
|
||||||
|
@ -1,49 +1,49 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
-->
|
-->
|
||||||
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
||||||
<MbdHeader>
|
<MbdHeader>
|
||||||
<BaseName>DxeIpl</BaseName>
|
<BaseName>DxeIplX64</BaseName>
|
||||||
<Guid>86D70125-BAA3-4296-A62F-602BEBBB9081</Guid>
|
<Guid>86D70125-BAA3-4296-A62F-602BEBBB9081</Guid>
|
||||||
<Version>EDK_RELEASE_VERSION 0x00020000</Version>
|
<Version>EDK_RELEASE_VERSION 0x00020000</Version>
|
||||||
<Description>FIX ME!</Description>
|
<Description>FIX ME!</Description>
|
||||||
<Copyright>Copyright 2004-2006, Intel Corporation</Copyright>
|
<Copyright>Copyright 2004-2006, Intel Corporation</Copyright>
|
||||||
<License>
|
<License>
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
</License>
|
</License>
|
||||||
<Created>2006-04-03 23:58</Created>
|
<Created>2006-04-03 23:58</Created>
|
||||||
</MbdHeader>
|
</MbdHeader>
|
||||||
<Libraries>
|
<Libraries>
|
||||||
<Library>PeimEntryPoint</Library>
|
<Library>PeimEntryPoint</Library>
|
||||||
<Library>PeiMemoryLib</Library>
|
<Library>PeiMemoryLib</Library>
|
||||||
<Library>PeiCoreLib</Library>
|
<Library>PeiCoreLib</Library>
|
||||||
<Library>PeiServicesTablePointerLib</Library>
|
<Library OverrideID="4444">PeiServicesTablePointerLib</Library>
|
||||||
<Library>PeiHobLib</Library>
|
<Library>PeiHobLib</Library>
|
||||||
<Library>BaseCacheMaintenanceLib</Library>
|
<Library>BaseCacheMaintenanceLib</Library>
|
||||||
<Library>BaseUefiTianoDecompressLib</Library>
|
<Library>BaseUefiTianoDecompressLib</Library>
|
||||||
<Library>BaseCustomDecompressLibNull</Library>
|
<Library>BaseCustomDecompressLibNull</Library>
|
||||||
<Library>PeiReportStatusCodeLib</Library>
|
<Library>BaseDebugLibReportStatusCode</Library>
|
||||||
<Library>BaseDebugLibReportStatusCode</Library>
|
<Library>BaseLib</Library>
|
||||||
<Library>BaseLib</Library>
|
<Library>PeiMemoryAllocationLib</Library>
|
||||||
<Library>PeiMemoryAllocationLib</Library>
|
<Library>PeiReportStatusCodeLib</Library>
|
||||||
<Library>PeiReportStatusCodeLib</Library>
|
<Library>EdkPeCoffLoaderX64Lib</Library>
|
||||||
<Arch ArchType="IA32" OverrideID="8888">
|
<Library>EdkPeCoffLoaderLib</Library>
|
||||||
<Library>EdkPeCoffLoaderX64Lib</Library>
|
<Library>BasePeCoffLib</Library>
|
||||||
<Library>EdkPeCoffLoaderLib</Library>
|
</Libraries>
|
||||||
<Library>BasePeCoffLib</Library>
|
<BuildOptions ToolChain="MSFT">
|
||||||
</Arch>
|
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
||||||
</Libraries>
|
</BuildOptions>
|
||||||
</ModuleBuildDescription>
|
</ModuleBuildDescription>
|
||||||
|
@ -1,85 +1,122 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
-->
|
-->
|
||||||
<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
<ModuleSurfaceArea xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
||||||
<MsaHeader>
|
<MsaHeader>
|
||||||
<BaseName>DxeIpl</BaseName>
|
<BaseName>DxeIplX64</BaseName>
|
||||||
<ModuleType>PEIM</ModuleType>
|
<ModuleType>PEIM</ModuleType>
|
||||||
<ComponentType>PE32_PEIM</ComponentType>
|
<ComponentType>PE32_PEIM</ComponentType>
|
||||||
<Guid>86D70125-BAA3-4296-A62F-602BEBBB9081</Guid>
|
<Guid>86D70125-BAA3-4296-A62F-602BEBBB9081</Guid>
|
||||||
<Version>EDK_RELEASE_VERSION 0x00020000</Version>
|
<Version>EDK_RELEASE_VERSION 0x00020000</Version>
|
||||||
<Abstract>Component description file for DxeIpl module</Abstract>
|
<Abstract>Component description file for DxeIpl module</Abstract>
|
||||||
<Description>FIX ME!</Description>
|
<Description>FIX ME!</Description>
|
||||||
<Copyright>Copyright 2004-2006, Intel Corporation</Copyright>
|
<Copyright>Copyright 2004-2006, Intel Corporation</Copyright>
|
||||||
<License>
|
<License>
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
</License>
|
</License>
|
||||||
<Specification>EFI_SPECIFICATION_VERSION 0x00000000</Specification>
|
<Specification>EFI_SPECIFICATION_VERSION 0x00000000</Specification>
|
||||||
<Created>2006-04-03 23:58</Created>
|
<Created>2006-04-03 23:58</Created>
|
||||||
</MsaHeader>
|
</MsaHeader>
|
||||||
<LibraryClassDefinitions>
|
<LibraryClassDefinitions>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">DebugLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">DebugLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">PeimEntryPoint</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">PeimEntryPoint</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">BaseLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">BaseLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">HobLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">HobLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">PerformanceLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">PerformanceLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">PeiCoreLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">PeiCoreLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">ReportStatusCodeLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">ReportStatusCodeLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">CacheMaintenanceLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">CacheMaintenanceLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">EdkPeCoffLoaderLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">EdkPeCoffLoaderLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">UefiDecompressLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">UefiDecompressLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">TianoDecompressLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">TianoDecompressLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">CustomDecompressLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">CustomDecompressLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">PeiServicesTablePointerLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">PeiServicesTablePointerLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">BaseMemoryLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">BaseMemoryLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">MemoryAllocationLib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">MemoryAllocationLib</LibraryClass>
|
||||||
<LibraryClass Usage="ALWAYS_CONSUMED">EdkPeCoffLoaderX64Lib</LibraryClass>
|
<LibraryClass Usage="ALWAYS_CONSUMED">EdkPeCoffLoaderX64Lib</LibraryClass>
|
||||||
</LibraryClassDefinitions>
|
</LibraryClassDefinitions>
|
||||||
<SourceFiles>
|
<SourceFiles>
|
||||||
<Filename>DxeIpl.dxs</Filename>
|
<Filename>DxeIpl.dxs</Filename>
|
||||||
<Filename>DxeLoadX64.c</Filename>
|
<Filename>DxeLoadX64.c</Filename>
|
||||||
<Arch ArchType="IA32">
|
<Arch ArchType="IA32">
|
||||||
<Filename>x64/ImageRead.c</Filename>
|
<Filename>x64/ImageRead.c</Filename>
|
||||||
<Filename>x64/LongMode.asm</Filename>
|
<Filename>x64/LongMode.asm</Filename>
|
||||||
<Filename>x64/DxeLoadFunc.c</Filename>
|
<Filename>x64/DxeLoadFunc.c</Filename>
|
||||||
<Filename>x64/VirtualMemory.c</Filename>
|
<Filename>x64/VirtualMemory.c</Filename>
|
||||||
</Arch>
|
</Arch>
|
||||||
</SourceFiles>
|
</SourceFiles>
|
||||||
<Includes>
|
<Includes>
|
||||||
<PackageName>MdePkg</PackageName>
|
<PackageName>MdePkg</PackageName>
|
||||||
<PackageName>EdkModulePkg</PackageName>
|
<PackageName>EdkModulePkg</PackageName>
|
||||||
</Includes>
|
</Includes>
|
||||||
<Protocols>
|
<Protocols>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">Decompress</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">Decompress</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">TianoDecompress</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">TianoDecompress</Protocol>
|
||||||
<Protocol Usage="ALWAYS_CONSUMED">CustomizedDecompress</Protocol>
|
<Protocol Usage="ALWAYS_CONSUMED">CustomizedDecompress</Protocol>
|
||||||
</Protocols>
|
</Protocols>
|
||||||
<PPIs>
|
<Hobs>
|
||||||
<Ppi Usage="ALWAYS_CONSUMED">PeiInMemory</Ppi>
|
<Hob Usage="SOMETIMES_PRODUCED" HobType="MEMORY_ALLOCATION">
|
||||||
<Ppi Usage="ALWAYS_CONSUMED">RecoveryModule</Ppi>
|
<C_Name>gEfiHobMemoryAllocBspStoreGuid</C_Name>
|
||||||
<Ppi Usage="ALWAYS_CONSUMED">SectionExtraction</Ppi>
|
<Guid>0x564b33cd, 0xc92a, 0x4593, 0x90, 0xbf, 0x24, 0x73, 0xe4, 0x3c, 0x63, 0x22</Guid>
|
||||||
<Ppi Usage="ALWAYS_CONSUMED">Security</Ppi>
|
</Hob>
|
||||||
<Ppi Usage="ALWAYS_CONSUMED">DxeIpl</Ppi>
|
<Hob Usage="SOMETIMES_PRODUCED" HobType="GUID_EXTENSION">
|
||||||
<Ppi Usage="ALWAYS_CONSUMED">S3Resume</Ppi>
|
<C_Name>gEfiDecompressProtocolGuid</C_Name>
|
||||||
<Ppi Usage="ALWAYS_CONSUMED">EndOfPeiSignal</Ppi>
|
<Guid>0xd8117cfe, 0x94a6, 0x11d4, 0x9a, 0x3a, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d</Guid>
|
||||||
<Ppi Usage="ALWAYS_CONSUMED">FvFileLoader</Ppi>
|
</Hob>
|
||||||
</PPIs>
|
<Hob Usage="SOMETIMES_PRODUCED" HobType="GUID_EXTENSION">
|
||||||
<Guids>
|
<C_Name>gEfiTianoDecompressProtocolGuid</C_Name>
|
||||||
<GuidEntry Usage="ALWAYS_CONSUMED">
|
<Guid>0xe84cf29c, 0x191f, 0x4eae, 0x96, 0xe1, 0xf4, 0x6a, 0xec, 0xea, 0xea, 0x0b</Guid>
|
||||||
<C_Name>PeiPeCoffLoader</C_Name>
|
</Hob>
|
||||||
</GuidEntry>
|
<Hob Usage="SOMETIMES_PRODUCED" HobType="GUID_EXTENSION">
|
||||||
</Guids>
|
<C_Name>gEfiCustomizedDecompressProtocolGuid</C_Name>
|
||||||
</ModuleSurfaceArea>
|
<Guid>0x9a44198e, 0xa4a2, 0x44e6, 0x8a, 0x1f, 0x39, 0xbe, 0xfd, 0xac, 0x89, 0x6f</Guid>
|
||||||
|
</Hob>
|
||||||
|
<Hob Usage="SOMETIMES_PRODUCED" HobType="GUID_EXTENSION">
|
||||||
|
<C_Name>gEfiPeiPeCoffLoaderGuid</C_Name>
|
||||||
|
<Guid>0xd8117cff, 0x94a6, 0x11d4, 0x9a, 0x3a, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d</Guid>
|
||||||
|
</Hob>
|
||||||
|
<Hob Usage="SOMETIMES_PRODUCED" HobType="MEMORY_ALLOCATION">
|
||||||
|
<C_Name>gEfiHobMemoryAllocModuleGuid</C_Name>
|
||||||
|
<Guid>0xf8e21975, 0x0899, 0x4f58, 0xa4, 0xbe, 0x55, 0x25, 0xa9, 0xc6, 0xd7, 0x7a</Guid>
|
||||||
|
</Hob>
|
||||||
|
<Hob Usage="SOMETIMES_PRODUCED" HobType="FIRMWARE_VOLUME">
|
||||||
|
<Name>DecompressedFvmain.fv</Name>
|
||||||
|
</Hob>
|
||||||
|
</Hobs>
|
||||||
|
<PPIs>
|
||||||
|
<Ppi Usage="SOMETIMES_PRODUCED">DxeIpl</Ppi>
|
||||||
|
<Ppi Usage="SOMETIMES_PRODUCED">FvFileLoader</Ppi>
|
||||||
|
<Ppi Usage="SOMETIMES_PRODUCED">EndOfPeiSignal</Ppi>
|
||||||
|
<Ppi Usage="SOMETIMES_CONSUMED">RecoveryModule</Ppi>
|
||||||
|
<Ppi Usage="SOMETIMES_CONSUMED">S3Resume</Ppi>
|
||||||
|
<Ppi Usage="SOMETIMES_CONSUMED">SectionExtraction</Ppi>
|
||||||
|
<Ppi Usage="SOMETIMES_CONSUMED">Security</Ppi>
|
||||||
|
<Ppi Usage="PRIVATE">PeiInMemory</Ppi>
|
||||||
|
</PPIs>
|
||||||
|
<Guids>
|
||||||
|
<GuidEntry Usage="ALWAYS_CONSUMED">
|
||||||
|
<C_Name>PeiPeCoffLoader</C_Name>
|
||||||
|
</GuidEntry>
|
||||||
|
</Guids>
|
||||||
|
<Externs>
|
||||||
|
<Extern>
|
||||||
|
<ModuleEntryPoint>PeimInitializeDxeIpl</ModuleEntryPoint>
|
||||||
|
</Extern>
|
||||||
|
</Externs>
|
||||||
|
<BuildOptions ToolChain="MSFT">
|
||||||
|
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
||||||
|
</BuildOptions>
|
||||||
|
</ModuleSurfaceArea>
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,47 +1,74 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?><!-- Copyright (c) 2006, Intel Corporation
|
<?xml version="1.0" encoding="UTF-8"?><!-- Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.-->
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.-->
|
||||||
<project basedir="." default="DxeIpl"><!--Apply external ANT tasks-->
|
<project basedir="." default="DxeIpl"><!--Apply external ANT tasks-->
|
||||||
<taskdef resource="GenBuild.tasks"/>
|
<taskdef resource="GenBuild.tasks"/>
|
||||||
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
|
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
|
||||||
<property environment="env"/>
|
<property environment="env"/>
|
||||||
<property name="WORKSPACE_DIR" value="${env.WORKSPACE}"/>
|
<property name="WORKSPACE_DIR" value="${env.WORKSPACE}"/>
|
||||||
<import file="${WORKSPACE_DIR}/Tools/Conf/BuildMacro.xml"/><!--MODULE_RELATIVE PATH is relative to PACKAGE_DIR-->
|
<import file="${WORKSPACE_DIR}/Tools/Conf/BuildMacro.xml"/><!--MODULE_RELATIVE PATH is relative to PACKAGE_DIR-->
|
||||||
<property name="MODULE_RELATIVE_PATH" value="Core/DxeIplPeim"/>
|
<property name="MODULE_RELATIVE_PATH" value="Core/DxeIplPeim"/>
|
||||||
<property name="MODULE_DIR" value="${PACKAGE_DIR}/${MODULE_RELATIVE_PATH}"/>
|
<property name="MODULE_DIR" value="${PACKAGE_DIR}/${MODULE_RELATIVE_PATH}"/>
|
||||||
<property name="COMMON_FILE" value="${WORKSPACE_DIR}/Tools/Conf/Common.xml"/>
|
<property name="COMMON_FILE" value="${WORKSPACE_DIR}/Tools/Conf/Common.xml"/>
|
||||||
<target name="DxeIpl">
|
<target name="DxeIplX64">
|
||||||
<GenBuild baseName="DxeIpl" mbdFilename="${MODULE_DIR}/DxeIpl.mbd" msaFilename="${MODULE_DIR}/DxeIpl.msa"/>
|
<GenBuild baseName="DxeIplX64" mbdFilename="${MODULE_DIR}/DxeIplX64.mbd" msaFilename="${MODULE_DIR}/DxeIplX64.msa"/>
|
||||||
</target>
|
</target>
|
||||||
<target depends="DxeIpl_clean" name="clean"/>
|
<target name="DxeIpl">
|
||||||
<target depends="DxeIpl_cleanall" name="cleanall"/>
|
<GenBuild baseName="DxeIpl" mbdFilename="${MODULE_DIR}/DxeIpl.mbd" msaFilename="${MODULE_DIR}/DxeIpl.msa"/>
|
||||||
<target name="DxeIpl_clean">
|
</target>
|
||||||
<OutputDirSetup baseName="DxeIpl" mbdFilename="${MODULE_DIR}/DxeIpl.mbd" msaFilename="${MODULE_DIR}/DxeIpl.msa"/>
|
<target depends="DxeIpl_clean" name="clean"/>
|
||||||
<if>
|
<target depends="DxeIpl_cleanall" name="cleanall"/>
|
||||||
<available file="${DEST_DIR_OUTPUT}/DxeIpl_build.xml"/>
|
<target name="DxeIplX64_clean">
|
||||||
<then>
|
<OutputDirSetup baseName="DxeIplX64" mbdFilename="${MODULE_DIR}/DxeIplX64.mbd" msaFilename="${MODULE_DIR}/DxeIplX64.msa"/>
|
||||||
<ant antfile="${DEST_DIR_OUTPUT}/DxeIpl_build.xml" target="clean"/>
|
<if>
|
||||||
</then>
|
<available file="${DEST_DIR_OUTPUT}/DxeIplX64_build.xml"/>
|
||||||
</if>
|
<then>
|
||||||
<delete dir="${DEST_DIR_OUTPUT}" excludes="*.xml"/>
|
<ant antfile="${DEST_DIR_OUTPUT}/DxeIplX64_build.xml" target="clean"/>
|
||||||
</target>
|
</then>
|
||||||
<target name="DxeIpl_cleanall">
|
</if>
|
||||||
<OutputDirSetup baseName="DxeIpl" mbdFilename="${MODULE_DIR}/DxeIpl.mbd" msaFilename="${MODULE_DIR}/DxeIpl.msa"/>
|
<delete dir="${DEST_DIR_OUTPUT}" excludes="*.xml"/>
|
||||||
<if>
|
</target>
|
||||||
<available file="${DEST_DIR_OUTPUT}/DxeIpl_build.xml"/>
|
<target name="DxeIpl_clean">
|
||||||
<then>
|
<OutputDirSetup baseName="DxeIpl" mbdFilename="${MODULE_DIR}/DxeIpl.mbd" msaFilename="${MODULE_DIR}/DxeIpl.msa"/>
|
||||||
<ant antfile="${DEST_DIR_OUTPUT}/DxeIpl_build.xml" target="cleanall"/>
|
<if>
|
||||||
</then>
|
<available file="${DEST_DIR_OUTPUT}/DxeIpl_build.xml"/>
|
||||||
</if>
|
<then>
|
||||||
<delete dir="${DEST_DIR_OUTPUT}"/>
|
<ant antfile="${DEST_DIR_OUTPUT}/DxeIpl_build.xml" target="clean"/>
|
||||||
<delete dir="${DEST_DIR_DEBUG}"/>
|
</then>
|
||||||
<delete>
|
</if>
|
||||||
<fileset dir="${BIN_DIR}" includes="**DxeIpl*"/>
|
<delete dir="${DEST_DIR_OUTPUT}" excludes="*.xml"/>
|
||||||
</delete>
|
</target>
|
||||||
</target>
|
<target name="DxeIplX64_cleanall">
|
||||||
|
<OutputDirSetup baseName="DxeIplX64" mbdFilename="${MODULE_DIR}/DxeIplX64.mbd" msaFilename="${MODULE_DIR}/DxeIplX64.msa"/>
|
||||||
|
<if>
|
||||||
|
<available file="${DEST_DIR_OUTPUT}/DxeIplX64_build.xml"/>
|
||||||
|
<then>
|
||||||
|
<ant antfile="${DEST_DIR_OUTPUT}/DxeIplX64_build.xml" target="cleanall"/>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
<delete dir="${DEST_DIR_OUTPUT}"/>
|
||||||
|
<delete dir="${DEST_DIR_DEBUG}"/>
|
||||||
|
<delete>
|
||||||
|
<fileset dir="${BIN_DIR}" includes="**DxeIplX64*"/>
|
||||||
|
</delete>
|
||||||
|
</target>
|
||||||
|
<target name="DxeIpl_cleanall">
|
||||||
|
<OutputDirSetup baseName="DxeIpl" mbdFilename="${MODULE_DIR}/DxeIpl.mbd" msaFilename="${MODULE_DIR}/DxeIpl.msa"/>
|
||||||
|
<if>
|
||||||
|
<available file="${DEST_DIR_OUTPUT}/DxeIpl_build.xml"/>
|
||||||
|
<then>
|
||||||
|
<ant antfile="${DEST_DIR_OUTPUT}/DxeIpl_build.xml" target="cleanall"/>
|
||||||
|
</then>
|
||||||
|
</if>
|
||||||
|
<delete dir="${DEST_DIR_OUTPUT}"/>
|
||||||
|
<delete dir="${DEST_DIR_DEBUG}"/>
|
||||||
|
<delete>
|
||||||
|
<fileset dir="${BIN_DIR}" includes="**DxeIpl*"/>
|
||||||
|
</delete>
|
||||||
|
</target>
|
||||||
</project>
|
</project>
|
File diff suppressed because it is too large
Load Diff
@ -1,237 +1,243 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
|
|
||||||
Module Name:
|
Module Name:
|
||||||
|
|
||||||
Image.c
|
Image.c
|
||||||
|
|
||||||
Abstract:
|
Abstract:
|
||||||
|
|
||||||
Pei Core Load Image Support
|
Pei Core Load Image Support
|
||||||
|
|
||||||
--*/
|
--*/
|
||||||
|
|
||||||
#include <PeiMain.h>
|
#include <PeiMain.h>
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
PeiLoadImage (
|
PeiLoadImage (
|
||||||
IN EFI_PEI_SERVICES **PeiServices,
|
IN EFI_PEI_SERVICES **PeiServices,
|
||||||
IN EFI_FFS_FILE_HEADER *PeimFileHeader,
|
IN EFI_FFS_FILE_HEADER *PeimFileHeader,
|
||||||
OUT VOID **EntryPoint
|
OUT VOID **EntryPoint
|
||||||
)
|
)
|
||||||
/*++
|
/*++
|
||||||
|
|
||||||
Routine Description:
|
Routine Description:
|
||||||
|
|
||||||
Routine for loading file image.
|
Routine for loading file image.
|
||||||
|
|
||||||
Arguments:
|
Arguments:
|
||||||
|
|
||||||
PeiServices - The PEI core services table.
|
PeiServices - The PEI core services table.
|
||||||
PeimFileHeader - Pointer to the FFS file header of the image.
|
PeimFileHeader - Pointer to the FFS file header of the image.
|
||||||
EntryPoint - Pointer to entry point of specified image file for output.
|
EntryPoint - Pointer to entry point of specified image file for output.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
|
|
||||||
Status - EFI_SUCCESS - Image is successfully loaded.
|
Status - EFI_SUCCESS - Image is successfully loaded.
|
||||||
EFI_NOT_FOUND - Fail to locate necessary PPI
|
EFI_NOT_FOUND - Fail to locate necessary PPI
|
||||||
Others - Fail to load file.
|
Others - Fail to load file.
|
||||||
|
|
||||||
--*/
|
--*/
|
||||||
{
|
{
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
VOID *Pe32Data;
|
VOID *Pe32Data;
|
||||||
EFI_PEI_FV_FILE_LOADER_PPI *FvLoadFilePpi;
|
EFI_PEI_FV_FILE_LOADER_PPI *FvLoadFilePpi;
|
||||||
//#ifdef EFI_NT_EMULATOR
|
//#ifdef EFI_NT_EMULATOR
|
||||||
// EFI_PEI_PPI_DESCRIPTOR *PpiDescriptor;
|
// EFI_PEI_PPI_DESCRIPTOR *PpiDescriptor;
|
||||||
// NT_PEI_LOAD_FILE_PPI *PeiNtService;
|
// NT_PEI_LOAD_FILE_PPI *PeiNtService;
|
||||||
//#endif
|
//#endif
|
||||||
EFI_PHYSICAL_ADDRESS ImageAddress;
|
EFI_PHYSICAL_ADDRESS ImageAddress;
|
||||||
UINT64 ImageSize;
|
UINT64 ImageSize;
|
||||||
EFI_PHYSICAL_ADDRESS ImageEntryPoint;
|
EFI_PHYSICAL_ADDRESS ImageEntryPoint;
|
||||||
EFI_TE_IMAGE_HEADER *TEImageHeader;
|
EFI_TE_IMAGE_HEADER *TEImageHeader;
|
||||||
|
|
||||||
*EntryPoint = NULL;
|
*EntryPoint = NULL;
|
||||||
TEImageHeader = NULL;
|
TEImageHeader = NULL;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Try to find a PE32 section.
|
// Try to find a PE32 section.
|
||||||
//
|
//
|
||||||
Status = PeiCoreFfsFindSectionData (
|
Status = PeiCoreFfsFindSectionData (
|
||||||
EFI_SECTION_PE32,
|
EFI_SECTION_PE32,
|
||||||
PeimFileHeader,
|
PeimFileHeader,
|
||||||
&Pe32Data
|
&Pe32Data
|
||||||
);
|
);
|
||||||
//
|
//
|
||||||
// If we didn't find a PE32 section, try to find a TE section.
|
// If we didn't find a PE32 section, try to find a TE section.
|
||||||
//
|
//
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
Status = PeiCoreFfsFindSectionData (
|
Status = PeiCoreFfsFindSectionData (
|
||||||
EFI_SECTION_TE,
|
EFI_SECTION_TE,
|
||||||
PeimFileHeader,
|
PeimFileHeader,
|
||||||
(VOID **) &TEImageHeader
|
(VOID **) &TEImageHeader
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status) || TEImageHeader == NULL) {
|
if (EFI_ERROR (Status) || TEImageHeader == NULL) {
|
||||||
//
|
//
|
||||||
// There was not a PE32 or a TE section, so assume that it's a Compressed section
|
// There was not a PE32 or a TE section, so assume that it's a Compressed section
|
||||||
// and use the LoadFile
|
// and use the LoadFile
|
||||||
//
|
//
|
||||||
Status = PeiCoreLocatePpi (
|
Status = PeiCoreLocatePpi (
|
||||||
&gEfiPeiFvFileLoaderPpiGuid,
|
&gEfiPeiFvFileLoaderPpiGuid,
|
||||||
0,
|
0,
|
||||||
NULL,
|
NULL,
|
||||||
(VOID **)&FvLoadFilePpi
|
(VOID **)&FvLoadFilePpi
|
||||||
);
|
);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return EFI_NOT_FOUND;
|
return EFI_NOT_FOUND;
|
||||||
}
|
}
|
||||||
|
|
||||||
Status = FvLoadFilePpi->FvLoadFile (
|
Status = FvLoadFilePpi->FvLoadFile (
|
||||||
FvLoadFilePpi,
|
FvLoadFilePpi,
|
||||||
PeimFileHeader,
|
PeimFileHeader,
|
||||||
&ImageAddress,
|
&ImageAddress,
|
||||||
&ImageSize,
|
&ImageSize,
|
||||||
&ImageEntryPoint
|
&ImageEntryPoint
|
||||||
);
|
);
|
||||||
|
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return EFI_NOT_FOUND;
|
return EFI_NOT_FOUND;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Retrieve the entry point from the PE/COFF image header
|
// Retrieve the entry point from the PE/COFF image header
|
||||||
//
|
//
|
||||||
Status = PeCoffLoaderGetEntryPoint ((VOID *)(UINTN)ImageAddress, EntryPoint);
|
Status = PeCoffLoaderGetEntryPoint ((VOID *)(UINTN)ImageAddress, EntryPoint);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return EFI_NOT_FOUND;
|
return EFI_NOT_FOUND;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
//
|
//
|
||||||
// Retrieve the entry point from the TE image header
|
// Retrieve the entry point from the TE image header
|
||||||
//
|
//
|
||||||
ImageAddress = (EFI_PHYSICAL_ADDRESS) (UINTN) TEImageHeader;
|
ImageAddress = (EFI_PHYSICAL_ADDRESS) (UINTN) TEImageHeader;
|
||||||
*EntryPoint = (VOID *)((UINTN) TEImageHeader + sizeof (EFI_TE_IMAGE_HEADER) +
|
*EntryPoint = (VOID *)((UINTN) TEImageHeader + sizeof (EFI_TE_IMAGE_HEADER) +
|
||||||
TEImageHeader->AddressOfEntryPoint - TEImageHeader->StrippedSize);
|
TEImageHeader->AddressOfEntryPoint - TEImageHeader->StrippedSize);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
//
|
//
|
||||||
// Retrieve the entry point from the PE/COFF image header
|
// Retrieve the entry point from the PE/COFF image header
|
||||||
//
|
//
|
||||||
ImageAddress = (EFI_PHYSICAL_ADDRESS) (UINTN) Pe32Data;
|
ImageAddress = (EFI_PHYSICAL_ADDRESS) (UINTN) Pe32Data;
|
||||||
Status = PeCoffLoaderGetEntryPoint (Pe32Data, EntryPoint);
|
Status = PeCoffLoaderGetEntryPoint (Pe32Data, EntryPoint);
|
||||||
if (EFI_ERROR (Status)) {
|
if (EFI_ERROR (Status)) {
|
||||||
return EFI_NOT_FOUND;
|
return EFI_NOT_FOUND;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Print debug message: Loading PEIM at 0x12345678 EntryPoint=0x12345688 Driver.efi
|
// Print debug message: Loading PEIM at 0x12345678 EntryPoint=0x12345688 Driver.efi
|
||||||
//
|
//
|
||||||
DEBUG ((EFI_D_INFO | EFI_D_LOAD, "Loading PEIM at 0x%08x EntryPoint=0x%08x ", Pe32Data, *EntryPoint));
|
DEBUG ((EFI_D_INFO | EFI_D_LOAD, "Loading PEIM at 0x%08x EntryPoint=0x%08x ", Pe32Data, *EntryPoint));
|
||||||
DEBUG_CODE (
|
DEBUG_CODE (
|
||||||
EFI_IMAGE_DATA_DIRECTORY * DirectoryEntry;
|
EFI_IMAGE_DATA_DIRECTORY * DirectoryEntry;
|
||||||
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY * DebugEntry;
|
EFI_IMAGE_DEBUG_DIRECTORY_ENTRY * DebugEntry;
|
||||||
UINTN DirCount;
|
UINTN DirCount;
|
||||||
UINTN Index;
|
UINTN Index;
|
||||||
UINTN Index1;
|
UINTN Index1;
|
||||||
BOOLEAN FileNameFound;
|
BOOLEAN FileNameFound;
|
||||||
CHAR8 *AsciiString;
|
CHAR8 *AsciiString;
|
||||||
CHAR8 AsciiBuffer[512];
|
CHAR8 AsciiBuffer[512];
|
||||||
VOID *CodeViewEntryPointer;
|
VOID *CodeViewEntryPointer;
|
||||||
INTN TEImageAdjust;
|
INTN TEImageAdjust;
|
||||||
EFI_IMAGE_DOS_HEADER *DosHeader;
|
EFI_IMAGE_DOS_HEADER *DosHeader;
|
||||||
EFI_IMAGE_NT_HEADERS *PeHeader;
|
EFI_IMAGE_NT_HEADERS *PeHeader;
|
||||||
|
|
||||||
DosHeader = (EFI_IMAGE_DOS_HEADER *)Pe32Data;
|
//
|
||||||
if (DosHeader->e_magic == EFI_IMAGE_DOS_SIGNATURE) {
|
// Pe32Data is NULL when load TE image
|
||||||
//
|
//
|
||||||
// DOS image header is present, so read the PE header after the DOS image header
|
PeHeader = NULL;
|
||||||
//
|
if (TEImageHeader == NULL) {
|
||||||
PeHeader = (EFI_IMAGE_NT_HEADERS *) ((UINTN) Pe32Data + (UINTN) ((DosHeader->e_lfanew) & 0x0ffff));
|
DosHeader = (EFI_IMAGE_DOS_HEADER *)Pe32Data;
|
||||||
} else {
|
if (DosHeader->e_magic == EFI_IMAGE_DOS_SIGNATURE) {
|
||||||
//
|
//
|
||||||
// DOS image header is not present, so PE header is at the image base
|
// DOS image header is present, so read the PE header after the DOS image header
|
||||||
//
|
//
|
||||||
PeHeader = (EFI_IMAGE_NT_HEADERS *) Pe32Data;
|
PeHeader = (EFI_IMAGE_NT_HEADERS *) ((UINTN) Pe32Data + (UINTN) ((DosHeader->e_lfanew) & 0x0ffff));
|
||||||
}
|
} else {
|
||||||
|
//
|
||||||
//
|
// DOS image header is not present, so PE header is at the image base
|
||||||
// Find the codeview info in the image and display the file name
|
//
|
||||||
// being loaded.
|
PeHeader = (EFI_IMAGE_NT_HEADERS *) Pe32Data;
|
||||||
//
|
}
|
||||||
// Per the PE/COFF spec, you can't assume that a given data directory
|
}
|
||||||
// is present in the image. You have to check the NumberOfRvaAndSizes in
|
|
||||||
// the optional header to verify a desired directory entry is there.
|
//
|
||||||
//
|
// Find the codeview info in the image and display the file name
|
||||||
DebugEntry = NULL;
|
// being loaded.
|
||||||
DirectoryEntry = NULL;
|
//
|
||||||
TEImageAdjust = 0;
|
// Per the PE/COFF spec, you can't assume that a given data directory
|
||||||
if (TEImageHeader == NULL) {
|
// is present in the image. You have to check the NumberOfRvaAndSizes in
|
||||||
if (PeHeader->OptionalHeader.NumberOfRvaAndSizes > EFI_IMAGE_DIRECTORY_ENTRY_DEBUG) {
|
// the optional header to verify a desired directory entry is there.
|
||||||
DirectoryEntry = (EFI_IMAGE_DATA_DIRECTORY *) &(PeHeader->OptionalHeader.DataDirectory[EFI_IMAGE_DIRECTORY_ENTRY_DEBUG]);
|
//
|
||||||
DebugEntry = (EFI_IMAGE_DEBUG_DIRECTORY_ENTRY *) ((UINTN) ImageAddress + DirectoryEntry->VirtualAddress);
|
DebugEntry = NULL;
|
||||||
}
|
DirectoryEntry = NULL;
|
||||||
} else {
|
TEImageAdjust = 0;
|
||||||
if (TEImageHeader->DataDirectory[EFI_TE_IMAGE_DIRECTORY_ENTRY_DEBUG].VirtualAddress != 0) {
|
if (TEImageHeader == NULL) {
|
||||||
DirectoryEntry = &TEImageHeader->DataDirectory[EFI_TE_IMAGE_DIRECTORY_ENTRY_DEBUG];
|
if (PeHeader->OptionalHeader.NumberOfRvaAndSizes > EFI_IMAGE_DIRECTORY_ENTRY_DEBUG) {
|
||||||
TEImageAdjust = sizeof (EFI_TE_IMAGE_HEADER) - TEImageHeader->StrippedSize;
|
DirectoryEntry = (EFI_IMAGE_DATA_DIRECTORY *) &(PeHeader->OptionalHeader.DataDirectory[EFI_IMAGE_DIRECTORY_ENTRY_DEBUG]);
|
||||||
DebugEntry = (EFI_IMAGE_DEBUG_DIRECTORY_ENTRY *)((UINTN) TEImageHeader +
|
DebugEntry = (EFI_IMAGE_DEBUG_DIRECTORY_ENTRY *) ((UINTN) ImageAddress + DirectoryEntry->VirtualAddress);
|
||||||
TEImageHeader->DataDirectory[EFI_TE_IMAGE_DIRECTORY_ENTRY_DEBUG].VirtualAddress +
|
}
|
||||||
TEImageAdjust);
|
} else {
|
||||||
}
|
if (TEImageHeader->DataDirectory[EFI_TE_IMAGE_DIRECTORY_ENTRY_DEBUG].VirtualAddress != 0) {
|
||||||
}
|
DirectoryEntry = &TEImageHeader->DataDirectory[EFI_TE_IMAGE_DIRECTORY_ENTRY_DEBUG];
|
||||||
|
TEImageAdjust = sizeof (EFI_TE_IMAGE_HEADER) - TEImageHeader->StrippedSize;
|
||||||
if (DebugEntry != NULL && DirectoryEntry != NULL) {
|
DebugEntry = (EFI_IMAGE_DEBUG_DIRECTORY_ENTRY *)((UINTN) TEImageHeader +
|
||||||
for (DirCount = 0; DirCount < DirectoryEntry->Size; DirCount++, DebugEntry++) {
|
TEImageHeader->DataDirectory[EFI_TE_IMAGE_DIRECTORY_ENTRY_DEBUG].VirtualAddress +
|
||||||
if (DebugEntry->Type == EFI_IMAGE_DEBUG_TYPE_CODEVIEW) {
|
TEImageAdjust);
|
||||||
if (DebugEntry->SizeOfData > 0) {
|
}
|
||||||
CodeViewEntryPointer = (VOID *) ((UINTN) DebugEntry->RVA + (UINTN) ImageAddress + (UINTN)TEImageAdjust);
|
}
|
||||||
switch (* (UINT32 *) CodeViewEntryPointer) {
|
|
||||||
case CODEVIEW_SIGNATURE_NB10:
|
if (DebugEntry != NULL && DirectoryEntry != NULL) {
|
||||||
AsciiString = (CHAR8 *) CodeViewEntryPointer + sizeof (EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY);
|
for (DirCount = 0; DirCount < DirectoryEntry->Size; DirCount++, DebugEntry++) {
|
||||||
break;
|
if (DebugEntry->Type == EFI_IMAGE_DEBUG_TYPE_CODEVIEW) {
|
||||||
|
if (DebugEntry->SizeOfData > 0) {
|
||||||
case CODEVIEW_SIGNATURE_RSDS:
|
CodeViewEntryPointer = (VOID *) ((UINTN) DebugEntry->RVA + (UINTN) ImageAddress + (UINTN)TEImageAdjust);
|
||||||
AsciiString = (CHAR8 *) CodeViewEntryPointer + sizeof (EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY);
|
switch (* (UINT32 *) CodeViewEntryPointer) {
|
||||||
break;
|
case CODEVIEW_SIGNATURE_NB10:
|
||||||
|
AsciiString = (CHAR8 *) CodeViewEntryPointer + sizeof (EFI_IMAGE_DEBUG_CODEVIEW_NB10_ENTRY);
|
||||||
default:
|
break;
|
||||||
AsciiString = NULL;
|
|
||||||
break;
|
case CODEVIEW_SIGNATURE_RSDS:
|
||||||
}
|
AsciiString = (CHAR8 *) CodeViewEntryPointer + sizeof (EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY);
|
||||||
if (AsciiString != NULL) {
|
break;
|
||||||
FileNameFound = FALSE;
|
|
||||||
for (Index = 0, Index1 = 0; AsciiString[Index] != 0; Index++) {
|
default:
|
||||||
if (AsciiString[Index] == '\\') {
|
AsciiString = NULL;
|
||||||
Index1 = Index;
|
break;
|
||||||
FileNameFound = TRUE;
|
}
|
||||||
}
|
if (AsciiString != NULL) {
|
||||||
}
|
FileNameFound = FALSE;
|
||||||
|
for (Index = 0, Index1 = 0; AsciiString[Index] != 0; Index++) {
|
||||||
if (FileNameFound) {
|
if (AsciiString[Index] == '\\') {
|
||||||
for (Index = Index1 + 1; AsciiString[Index] != '.'; Index++) {
|
Index1 = Index;
|
||||||
AsciiBuffer[Index - (Index1 + 1)] = AsciiString[Index];
|
FileNameFound = TRUE;
|
||||||
}
|
}
|
||||||
AsciiBuffer[Index - (Index1 + 1)] = 0;
|
}
|
||||||
DEBUG ((EFI_D_INFO | EFI_D_LOAD, "%a.efi", AsciiBuffer));
|
|
||||||
break;
|
if (FileNameFound) {
|
||||||
}
|
for (Index = Index1 + 1; AsciiString[Index] != '.'; Index++) {
|
||||||
}
|
AsciiBuffer[Index - (Index1 + 1)] = AsciiString[Index];
|
||||||
}
|
}
|
||||||
}
|
AsciiBuffer[Index - (Index1 + 1)] = 0;
|
||||||
}
|
DEBUG ((EFI_D_INFO | EFI_D_LOAD, "%a.efi", AsciiBuffer));
|
||||||
}
|
break;
|
||||||
);
|
}
|
||||||
|
}
|
||||||
DEBUG ((EFI_D_INFO | EFI_D_LOAD, "\n"));
|
}
|
||||||
|
}
|
||||||
return EFI_SUCCESS;
|
}
|
||||||
}
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
DEBUG ((EFI_D_INFO | EFI_D_LOAD, "\n"));
|
||||||
|
|
||||||
|
return EFI_SUCCESS;
|
||||||
|
}
|
||||||
|
@ -1,53 +1,53 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
-->
|
-->
|
||||||
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
||||||
<MbdHeader>
|
<MbdHeader>
|
||||||
<BaseName>PeiMain</BaseName>
|
<BaseName>PeiMain</BaseName>
|
||||||
<Guid>52C05B14-0B98-496c-BC3B-04B50211D680</Guid>
|
<Guid>52C05B14-0B98-496c-BC3B-04B50211D680</Guid>
|
||||||
<Version>0</Version>
|
<Version>0</Version>
|
||||||
<Description>FIX ME!</Description>
|
<Description>FIX ME!</Description>
|
||||||
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
||||||
<License>
|
<License>
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
</License>
|
</License>
|
||||||
<Created>2006-03-12 17:09</Created>
|
<Created>2006-03-12 17:09</Created>
|
||||||
<Modified>2006-03-19 15:18</Modified>
|
<Modified>2006-03-19 15:18</Modified>
|
||||||
</MbdHeader>
|
</MbdHeader>
|
||||||
<Libraries>
|
<Libraries>
|
||||||
<Library>PeiCoreEntryPoint</Library>
|
<Library>PeiCoreEntryPoint</Library>
|
||||||
<Library>BaseLib</Library>
|
<Library>BaseLib</Library>
|
||||||
<Library>BaseMemoryLib</Library>
|
<Library>BaseMemoryLib</Library>
|
||||||
<Library>PeiServicesTablePointerLib</Library>
|
<Library OverrideID="4444">PeiServicesTablePointerLib</Library>
|
||||||
<Library>PeiCoreLib</Library>
|
<Library>PeiCoreLib</Library>
|
||||||
<Library>PeiHobLib</Library>
|
<Library>PeiHobLib</Library>
|
||||||
<Library>PeiReportStatusCodeLib</Library>
|
<Library>PeiReportStatusCodeLib</Library>
|
||||||
<Library>BaseDebugLibReportStatusCode</Library>
|
<Library>BaseDebugLibReportStatusCode</Library>
|
||||||
<Library>BasePerformanceLibNull</Library>
|
<Library>BasePerformanceLibNull</Library>
|
||||||
<Arch ArchType="IA32">
|
<Arch ArchType="IA32">
|
||||||
<Library OverrideID="6666">BasePeCoffGetEntryPointLib</Library>
|
<Library OverrideID="6666">BasePeCoffGetEntryPointLib</Library>
|
||||||
</Arch>
|
</Arch>
|
||||||
<Arch ArchType="X64">
|
<Arch ArchType="X64">
|
||||||
<Library>BasePeCoffGetEntryPointLib</Library>
|
<Library>BasePeCoffGetEntryPointLib</Library>
|
||||||
</Arch>
|
</Arch>
|
||||||
<Arch ArchType="IPF">
|
<Arch ArchType="IPF">
|
||||||
<Library>BasePeCoffGetEntryPointLib</Library>
|
<Library>BasePeCoffGetEntryPointLib</Library>
|
||||||
</Arch>
|
</Arch>
|
||||||
<Arch ArchType="EBC">
|
<Arch ArchType="EBC">
|
||||||
<Library>BasePeCoffGetEntryPointLib</Library>
|
<Library>BasePeCoffGetEntryPointLib</Library>
|
||||||
</Arch>
|
</Arch>
|
||||||
</Libraries>
|
</Libraries>
|
||||||
</ModuleBuildDescription>
|
</ModuleBuildDescription>
|
||||||
|
@ -1,243 +1,242 @@
|
|||||||
/*++
|
/*++
|
||||||
|
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
|
|
||||||
Module Name:
|
Module Name:
|
||||||
|
|
||||||
PeiMain.c
|
PeiMain.c
|
||||||
|
|
||||||
Abstract:
|
Abstract:
|
||||||
|
|
||||||
Pei Core Main Entry Point
|
Pei Core Main Entry Point
|
||||||
|
|
||||||
Revision History
|
Revision History
|
||||||
|
|
||||||
--*/
|
--*/
|
||||||
|
|
||||||
#include <PeiMain.h>
|
#include <PeiMain.h>
|
||||||
|
|
||||||
//
|
//
|
||||||
//CAR is filled with this initial value during SEC phase
|
//CAR is filled with this initial value during SEC phase
|
||||||
//
|
//
|
||||||
#define INIT_CAR_VALUE 0x5AA55AA5
|
#define INIT_CAR_VALUE 0x5AA55AA5
|
||||||
|
|
||||||
static EFI_PEI_PPI_DESCRIPTOR mMemoryDiscoveredPpi = {
|
static EFI_PEI_PPI_DESCRIPTOR mMemoryDiscoveredPpi = {
|
||||||
(EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST),
|
(EFI_PEI_PPI_DESCRIPTOR_PPI | EFI_PEI_PPI_DESCRIPTOR_TERMINATE_LIST),
|
||||||
&gEfiPeiMemoryDiscoveredPpiGuid,
|
&gEfiPeiMemoryDiscoveredPpiGuid,
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
//
|
//
|
||||||
// Pei Core Module Variables
|
// Pei Core Module Variables
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
static EFI_PEI_SERVICES mPS = {
|
static EFI_PEI_SERVICES mPS = {
|
||||||
{
|
{
|
||||||
PEI_SERVICES_SIGNATURE,
|
PEI_SERVICES_SIGNATURE,
|
||||||
PEI_SERVICES_REVISION,
|
PEI_SERVICES_REVISION,
|
||||||
sizeof (EFI_PEI_SERVICES),
|
sizeof (EFI_PEI_SERVICES),
|
||||||
0,
|
0,
|
||||||
0
|
0
|
||||||
},
|
},
|
||||||
PeiInstallPpi,
|
PeiInstallPpi,
|
||||||
PeiReInstallPpi,
|
PeiReInstallPpi,
|
||||||
PeiLocatePpi,
|
PeiLocatePpi,
|
||||||
PeiNotifyPpi,
|
PeiNotifyPpi,
|
||||||
|
|
||||||
PeiGetBootMode,
|
PeiGetBootMode,
|
||||||
PeiSetBootMode,
|
PeiSetBootMode,
|
||||||
|
|
||||||
PeiGetHobList,
|
PeiGetHobList,
|
||||||
PeiCreateHob,
|
PeiCreateHob,
|
||||||
|
|
||||||
PeiFvFindNextVolume,
|
PeiFvFindNextVolume,
|
||||||
PeiFfsFindNextFile,
|
PeiFfsFindNextFile,
|
||||||
PeiFfsFindSectionData,
|
PeiFfsFindSectionData,
|
||||||
|
|
||||||
PeiInstallPeiMemory,
|
PeiInstallPeiMemory,
|
||||||
PeiAllocatePages,
|
PeiAllocatePages,
|
||||||
PeiAllocatePool,
|
PeiAllocatePool,
|
||||||
(EFI_PEI_COPY_MEM)CopyMem,
|
(EFI_PEI_COPY_MEM)CopyMem,
|
||||||
(EFI_PEI_SET_MEM)SetMem,
|
(EFI_PEI_SET_MEM)SetMem,
|
||||||
|
|
||||||
PeiReportStatusCode,
|
PeiReportStatusCode,
|
||||||
|
|
||||||
PeiResetSystem
|
PeiResetSystem
|
||||||
};
|
};
|
||||||
|
|
||||||
EFI_STATUS
|
EFI_STATUS
|
||||||
EFIAPI
|
EFIAPI
|
||||||
PeiCore (
|
PeiCore (
|
||||||
IN EFI_PEI_STARTUP_DESCRIPTOR *PeiStartupDescriptor,
|
IN EFI_PEI_STARTUP_DESCRIPTOR *PeiStartupDescriptor,
|
||||||
IN PEI_CORE_INSTANCE *OldCoreData
|
IN PEI_CORE_INSTANCE *OldCoreData
|
||||||
)
|
)
|
||||||
/*++
|
/*++
|
||||||
|
|
||||||
Routine Description:
|
Routine Description:
|
||||||
|
|
||||||
The entry routine to Pei Core, invoked by PeiMain during transition
|
The entry routine to Pei Core, invoked by PeiMain during transition
|
||||||
from SEC to PEI. After switching stack in the PEI core, it will restart
|
from SEC to PEI. After switching stack in the PEI core, it will restart
|
||||||
with the old core data.
|
with the old core data.
|
||||||
|
|
||||||
Arguments:
|
Arguments:
|
||||||
|
|
||||||
PeiStartupDescriptor - Information and services provided by SEC phase.
|
PeiStartupDescriptor - Information and services provided by SEC phase.
|
||||||
OldCoreData - Pointer to old core data that is used to initialize the
|
OldCoreData - Pointer to old core data that is used to initialize the
|
||||||
core's data areas.
|
core's data areas.
|
||||||
|
|
||||||
Returns:
|
Returns:
|
||||||
|
|
||||||
This function never returns
|
This function never returns
|
||||||
EFI_NOT_FOUND - Never reach
|
EFI_NOT_FOUND - Never reach
|
||||||
|
|
||||||
--*/
|
--*/
|
||||||
{
|
{
|
||||||
PEI_CORE_INSTANCE PrivateData;
|
PEI_CORE_INSTANCE PrivateData;
|
||||||
EFI_STATUS Status;
|
EFI_STATUS Status;
|
||||||
PEI_CORE_TEMP_POINTERS TempPtr;
|
PEI_CORE_TEMP_POINTERS TempPtr;
|
||||||
PEI_CORE_DISPATCH_DATA *DispatchData;
|
PEI_CORE_DISPATCH_DATA *DispatchData;
|
||||||
UINT64 mTick;
|
UINT64 mTick;
|
||||||
|
|
||||||
mTick = 0;
|
mTick = 0;
|
||||||
|
|
||||||
#ifdef EFI_PEI_PERFORMANCE
|
#ifdef EFI_PEI_PERFORMANCE
|
||||||
if (OldCoreData == NULL) {
|
if (OldCoreData == NULL) {
|
||||||
mTick = GetPerformanceCounter ();
|
mTick = GetPerformanceCounter ();
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
//
|
||||||
//
|
// For IPF in CAR mode the real memory access is uncached,in InstallPeiMemory()
|
||||||
// For IPF in CAR mode the real memory access is uncached,in InstallPeiMemory()
|
// the 63-bit of address is set to 1.
|
||||||
// the 63-bit of address is set to 1.
|
//
|
||||||
//
|
SWITCH_TO_CACHE_MODE (OldCoreData);
|
||||||
SWITCH_TO_CACHE_MODE (OldCoreData);
|
|
||||||
|
if (OldCoreData != NULL) {
|
||||||
if (OldCoreData != NULL) {
|
CopyMem (&PrivateData, OldCoreData, sizeof (PEI_CORE_INSTANCE));
|
||||||
CopyMem (&PrivateData, OldCoreData, sizeof (PEI_CORE_INSTANCE));
|
} else {
|
||||||
} else {
|
ZeroMem (&PrivateData, sizeof (PEI_CORE_INSTANCE));
|
||||||
ZeroMem (&PrivateData, sizeof (PEI_CORE_INSTANCE));
|
}
|
||||||
}
|
|
||||||
|
PrivateData.Signature = PEI_CORE_HANDLE_SIGNATURE;
|
||||||
PrivateData.Signature = PEI_CORE_HANDLE_SIGNATURE;
|
PrivateData.PS = &mPS;
|
||||||
PrivateData.PS = &mPS;
|
|
||||||
|
//
|
||||||
//
|
// Initialize libraries that the PeiCore is linked against
|
||||||
// Initialize libraries that the PeiCore is linked against
|
// BUGBUG: The FfsHeader is passed in as NULL. Do we look it up or remove it from the lib init?
|
||||||
// BUGBUG: The FfsHeader is passed in as NULL. Do we look it up or remove it from the lib init?
|
//
|
||||||
//
|
ProcessLibraryConstructorList (NULL, &PrivateData.PS);
|
||||||
ProcessLibraryConstructorList (NULL, &PrivateData.PS);
|
|
||||||
|
InitializeMemoryServices (&PrivateData.PS, PeiStartupDescriptor, OldCoreData);
|
||||||
InitializeMemoryServices (&PrivateData.PS, PeiStartupDescriptor, OldCoreData);
|
|
||||||
|
InitializePpiServices (&PrivateData.PS, OldCoreData);
|
||||||
InitializePpiServices (&PrivateData.PS, OldCoreData);
|
|
||||||
|
InitializeSecurityServices (&PrivateData.PS, OldCoreData);
|
||||||
InitializeSecurityServices (&PrivateData.PS, OldCoreData);
|
|
||||||
|
InitializeDispatcherData (&PrivateData.PS, OldCoreData, PeiStartupDescriptor);
|
||||||
InitializeDispatcherData (&PrivateData.PS, OldCoreData, PeiStartupDescriptor);
|
|
||||||
|
if (OldCoreData != NULL) {
|
||||||
if (OldCoreData != NULL) {
|
|
||||||
|
PERF_END (NULL,"PreMem", NULL, 0);
|
||||||
PERF_END (NULL,"PreMem", NULL, 0);
|
PERF_START (NULL,"PostMem", NULL, 0);
|
||||||
PERF_START (NULL,"PostMem", NULL, 0);
|
|
||||||
|
//
|
||||||
//
|
// The following code dumps out interesting cache as RAM usage information
|
||||||
// The following code dumps out interesting cache as RAM usage information
|
// so we can keep tabs on how the cache as RAM is being utilized. The
|
||||||
// so we can keep tabs on how the cache as RAM is being utilized. The
|
// DEBUG_CODE macro is used to prevent this code from being compiled
|
||||||
// DEBUG_CODE macro is used to prevent this code from being compiled
|
// on a debug build.
|
||||||
// on a debug build.
|
//
|
||||||
//
|
DEBUG_CODE (
|
||||||
DEBUG_CODE (
|
UINTN *StackPointer;
|
||||||
UINTN *StackPointer;
|
UINTN StackValue;
|
||||||
UINTN StackValue;
|
|
||||||
|
StackValue = INIT_CAR_VALUE;
|
||||||
StackValue = INIT_CAR_VALUE;
|
for (StackPointer = (UINTN *) OldCoreData->MaxTopOfCarHeap;
|
||||||
for (StackPointer = (UINTN *) OldCoreData->MaxTopOfCarHeap;
|
((UINTN) StackPointer < ((UINTN) OldCoreData->BottomOfCarHeap + OldCoreData->SizeOfCacheAsRam))
|
||||||
((UINTN) StackPointer < ((UINTN) OldCoreData->BottomOfCarHeap + OldCoreData->SizeOfCacheAsRam))
|
&& StackValue == INIT_CAR_VALUE;
|
||||||
&& StackValue == INIT_CAR_VALUE;
|
StackPointer++) {
|
||||||
StackPointer++) {
|
StackValue = *StackPointer;
|
||||||
StackValue = *StackPointer;
|
}
|
||||||
}
|
|
||||||
|
DEBUG ((EFI_D_INFO, "Total Cache as RAM: %d bytes.\n", OldCoreData->SizeOfCacheAsRam));
|
||||||
DEBUG ((EFI_D_INFO, "Total Cache as RAM: %d bytes.\n", OldCoreData->SizeOfCacheAsRam));
|
DEBUG ((EFI_D_INFO, " CAR stack ever used: %d bytes.\n",
|
||||||
DEBUG ((EFI_D_INFO, " CAR stack ever used: %d bytes.\n",
|
((UINTN) OldCoreData->TopOfCarHeap - (UINTN) StackPointer)
|
||||||
((UINTN) OldCoreData->TopOfCarHeap - (UINTN) StackPointer)
|
));
|
||||||
));
|
DEBUG ((EFI_D_INFO, " CAR heap used: %d bytes.\n",
|
||||||
DEBUG ((EFI_D_INFO, " CAR heap used: %d bytes.\n",
|
((UINTN) OldCoreData->HobList.HandoffInformationTable->EfiFreeMemoryBottom -
|
||||||
((UINTN) OldCoreData->HobList.HandoffInformationTable->EfiFreeMemoryBottom -
|
(UINTN) OldCoreData->HobList.Raw)
|
||||||
(UINTN) OldCoreData->HobList.Raw)
|
));
|
||||||
));
|
);
|
||||||
);
|
|
||||||
|
//
|
||||||
//
|
// Alert any listeners that there is permanent memory available
|
||||||
// Alert any listeners that there is permanent memory available
|
//
|
||||||
//
|
PERF_START (NULL,"DisMem", NULL, 0);
|
||||||
PERF_START (NULL,"DisMem", NULL, 0);
|
Status = PeiCoreInstallPpi (&mMemoryDiscoveredPpi);
|
||||||
Status = PeiCoreInstallPpi (&mMemoryDiscoveredPpi);
|
PERF_END (NULL,"DisMem", NULL, 0);
|
||||||
PERF_END (NULL,"DisMem", NULL, 0);
|
|
||||||
|
} else {
|
||||||
} else {
|
|
||||||
|
//
|
||||||
//
|
// Report Status Code EFI_SW_PC_INIT
|
||||||
// Report Status Code EFI_SW_PC_INIT
|
//
|
||||||
//
|
REPORT_STATUS_CODE (
|
||||||
REPORT_STATUS_CODE (
|
EFI_PROGRESS_CODE,
|
||||||
EFI_PROGRESS_CODE,
|
EFI_SOFTWARE_PEI_CORE | EFI_SW_PC_INIT
|
||||||
EFI_SOFTWARE_PEI_CORE | EFI_SW_PC_INIT
|
);
|
||||||
);
|
|
||||||
|
//
|
||||||
//
|
// If first pass, start performance measurement.
|
||||||
// If first pass, start performance measurement.
|
//
|
||||||
//
|
PERF_START (NULL,"PreMem", NULL, mTick);
|
||||||
PERF_START (NULL,"PreMem", NULL, mTick);
|
|
||||||
|
//
|
||||||
//
|
// If SEC provided any PPI services to PEI, install them.
|
||||||
// If SEC provided any PPI services to PEI, install them.
|
//
|
||||||
//
|
if (PeiStartupDescriptor->DispatchTable != NULL) {
|
||||||
if (PeiStartupDescriptor->DispatchTable != NULL) {
|
Status = PeiCoreInstallPpi (PeiStartupDescriptor->DispatchTable);
|
||||||
Status = PeiCoreInstallPpi (PeiStartupDescriptor->DispatchTable);
|
ASSERT_EFI_ERROR (Status);
|
||||||
ASSERT_EFI_ERROR (Status);
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
DispatchData = &PrivateData.DispatchData;
|
||||||
DispatchData = &PrivateData.DispatchData;
|
|
||||||
|
//
|
||||||
//
|
// Call PEIM dispatcher
|
||||||
// Call PEIM dispatcher
|
//
|
||||||
//
|
PeiDispatcher (PeiStartupDescriptor, &PrivateData, DispatchData);
|
||||||
PeiDispatcher (PeiStartupDescriptor, &PrivateData, DispatchData);
|
|
||||||
|
//
|
||||||
//
|
// Check if InstallPeiMemory service was called.
|
||||||
// Check if InstallPeiMemory service was called.
|
//
|
||||||
//
|
ASSERT(PrivateData.PeiMemoryInstalled == TRUE);
|
||||||
ASSERT(PrivateData.PeiMemoryInstalled == TRUE);
|
|
||||||
|
PERF_END (NULL, "PostMem", NULL, 0);
|
||||||
PERF_END (NULL, "PostMem", NULL, 0);
|
|
||||||
|
Status = PeiCoreLocatePpi (
|
||||||
Status = PeiCoreLocatePpi (
|
&gEfiDxeIplPpiGuid,
|
||||||
&gEfiDxeIplPpiGuid,
|
0,
|
||||||
0,
|
NULL,
|
||||||
NULL,
|
(VOID **)&TempPtr.DxeIpl
|
||||||
(VOID **)&TempPtr.DxeIpl
|
);
|
||||||
);
|
ASSERT_EFI_ERROR (Status);
|
||||||
ASSERT_EFI_ERROR (Status);
|
|
||||||
|
DEBUG ((EFI_D_INFO, "DXE IPL Entry\n"));
|
||||||
DEBUG ((EFI_D_INFO, "DXE IPL Entry\n"));
|
Status = TempPtr.DxeIpl->Entry (
|
||||||
Status = TempPtr.DxeIpl->Entry (
|
TempPtr.DxeIpl,
|
||||||
TempPtr.DxeIpl,
|
&PrivateData.PS,
|
||||||
&PrivateData.PS,
|
PrivateData.HobList
|
||||||
PrivateData.HobList
|
);
|
||||||
);
|
|
||||||
|
ASSERT_EFI_ERROR (Status);
|
||||||
ASSERT_EFI_ERROR (Status);
|
|
||||||
|
return EFI_NOT_FOUND;
|
||||||
return EFI_NOT_FOUND;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,55 +1,55 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
-->
|
-->
|
||||||
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
||||||
<MbdHeader>
|
<MbdHeader>
|
||||||
<BaseName>StatusCode</BaseName>
|
<BaseName>StatusCode</BaseName>
|
||||||
<Guid>9F455D3B-2B8A-4c06-960B-A71B9714B9CD</Guid>
|
<Guid>9F455D3B-2B8A-4c06-960B-A71B9714B9CD</Guid>
|
||||||
<Version>0</Version>
|
<Version>0</Version>
|
||||||
<Description>FIX ME!</Description>
|
<Description>FIX ME!</Description>
|
||||||
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
||||||
<License>
|
<License>
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
</License>
|
</License>
|
||||||
<Created>2006-03-12 17:09</Created>
|
<Created>2006-03-12 17:09</Created>
|
||||||
<Modified>2006-03-19 15:19</Modified>
|
<Modified>2006-03-19 15:19</Modified>
|
||||||
</MbdHeader>
|
</MbdHeader>
|
||||||
<Libraries>
|
<Libraries>
|
||||||
<Library>UefiBootServicesTableLib</Library>
|
<Library>UefiBootServicesTableLib</Library>
|
||||||
<Library>BaseLib</Library>
|
<Library>BaseLib</Library>
|
||||||
<Library>EdkDxeRuntimeDriverLib</Library>
|
<Library>EdkDxeRuntimeDriverLib</Library>
|
||||||
<Library>UefiDriverEntryPoint</Library>
|
<Library>UefiDriverEntryPoint</Library>
|
||||||
<Library>UefiLib</Library>
|
<Library>UefiLib</Library>
|
||||||
<Library>BasePrintLib</Library>
|
<Library>BasePrintLib</Library>
|
||||||
<Library>BaseDebugLibReportStatusCode</Library>
|
<Library>BaseDebugLibReportStatusCode</Library>
|
||||||
<Library>EdkRtPlatformStatusCodeLib</Library>
|
<Library>DxeIoLibCpuIo</Library>
|
||||||
<Library>DxeIoLibCpuIo</Library>
|
<Library>BaseMemoryLib</Library>
|
||||||
<Library>BaseMemoryLib</Library>
|
<Library>DxeReportStatusCodeLib</Library>
|
||||||
<Library>DxeReportStatusCodeLib</Library>
|
<Library OverrideID="1111">EdkRtPlatformStatusCodeLib</Library>
|
||||||
<Library>EdkRtMemoryStatusCodeLib</Library>
|
<Library OverrideID="1111">EdkRtMemoryStatusCodeLib</Library>
|
||||||
<Library>EdkBsDataHubStatusCodeLib</Library>
|
<Library OverrideID="1111">EdkBsDataHubStatusCodeLib</Library>
|
||||||
<Library>DxeHobLib</Library>
|
<Library>DxeHobLib</Library>
|
||||||
<Library>DxeMemoryAllocationLib</Library>
|
<Library>DxeMemoryAllocationLib</Library>
|
||||||
<Library>EdkMemoryStatusCodeLib</Library>
|
<Library>EdkMemoryStatusCodeLib</Library>
|
||||||
|
|
||||||
<Arch ArchType="IPF">
|
<Arch ArchType="IPF">
|
||||||
<Library>EdkDxeSalLib</Library>
|
<Library>EdkDxeSalLib</Library>
|
||||||
</Arch>
|
</Arch>
|
||||||
</Libraries>
|
</Libraries>
|
||||||
<BuildOptions ToolChain="MSFT">
|
<BuildOptions ToolChain="MSFT">
|
||||||
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
||||||
</BuildOptions>
|
</BuildOptions>
|
||||||
</ModuleBuildDescription>
|
</ModuleBuildDescription>
|
||||||
|
@ -1,43 +1,43 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!--
|
<!--
|
||||||
Copyright (c) 2006, Intel Corporation
|
Copyright (c) 2006, Intel Corporation
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
|
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
-->
|
-->
|
||||||
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
<ModuleBuildDescription xmlns="http://www.TianoCore.org/2006/Edk2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.TianoCore.org/2006/Edk2.0 http://www.TianoCore.org/2006/Edk2.0/SurfaceArea.xsd">
|
||||||
<MbdHeader>
|
<MbdHeader>
|
||||||
<BaseName>PeiVariable</BaseName>
|
<BaseName>PeiVariable</BaseName>
|
||||||
<Guid>34C8C28F-B61C-45a2-8F2E-89E46BECC63B</Guid>
|
<Guid>34C8C28F-B61C-45a2-8F2E-89E46BECC63B</Guid>
|
||||||
<Version>0</Version>
|
<Version>0</Version>
|
||||||
<Description>FIX ME!</Description>
|
<Description>FIX ME!</Description>
|
||||||
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
<Copyright>Copyright (c) 2004-2006, Intel Corporation</Copyright>
|
||||||
<License>
|
<License>
|
||||||
All rights reserved. This program and the accompanying materials
|
All rights reserved. This program and the accompanying materials
|
||||||
are licensed and made available under the terms and conditions of the BSD License
|
are licensed and made available under the terms and conditions of the BSD License
|
||||||
which accompanies this distribution. The full text of the license may be found at
|
which accompanies this distribution. The full text of the license may be found at
|
||||||
http://opensource.org/licenses/bsd-license.php
|
http://opensource.org/licenses/bsd-license.php
|
||||||
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
||||||
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
||||||
</License>
|
</License>
|
||||||
<Created>2006-03-12 17:09</Created>
|
<Created>2006-03-12 17:09</Created>
|
||||||
<Modified>2006-03-19 15:19</Modified>
|
<Modified>2006-03-19 15:19</Modified>
|
||||||
</MbdHeader>
|
</MbdHeader>
|
||||||
<Libraries>
|
<Libraries>
|
||||||
<Library>PeiReportStatusCodeLib</Library>
|
<Library>PeiReportStatusCodeLib</Library>
|
||||||
<Library>BaseDebugLibReportStatusCode</Library>
|
<Library>BaseDebugLibReportStatusCode</Library>
|
||||||
<Library>BaseLib</Library>
|
<Library>BaseLib</Library>
|
||||||
<Library>PeiMemoryLib</Library>
|
<Library>PeiMemoryLib</Library>
|
||||||
<Library>PeiCoreLib</Library>
|
<Library>PeiCoreLib</Library>
|
||||||
<Library>PeiServicesTablePointerLib</Library>
|
<Library OverrideID="4444">PeiServicesTablePointerLib</Library>
|
||||||
<Library>PeiHobLib</Library>
|
<Library>PeiHobLib</Library>
|
||||||
<Library>PeimEntryPoint</Library>
|
<Library>PeimEntryPoint</Library>
|
||||||
</Libraries>
|
</Libraries>
|
||||||
<BuildOptions ToolChain="MSFT">
|
<BuildOptions ToolChain="MSFT">
|
||||||
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
<ImageEntryPoint>_ModuleEntryPoint</ImageEntryPoint>
|
||||||
</BuildOptions>
|
</BuildOptions>
|
||||||
</ModuleBuildDescription>
|
</ModuleBuildDescription>
|
||||||
|
Reference in New Issue
Block a user