24851580 |
1 | #/** @file |
2 | # Last PEIM executed in PEI phase to load DXE Core from a Firmware Volume. |
3 | # |
4 | # This module produces a special PPI named the DXE Initial Program Load (IPL) |
5 | # PPI to discover and dispatch the DXE Foundation and components that are |
6 | # needed to run the DXE Foundation. |
7 | # |
8 | # Copyright (c) 2006 - 2009, Intel Corporation. <BR> |
9 | # All rights reserved. This program and the accompanying materials |
10 | # are licensed and made available under the terms and conditions of the BSD License |
11 | # which accompanies this distribution. The full text of the license may be found at |
12 | # http://opensource.org/licenses/bsd-license.php |
13 | # |
14 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, |
15 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. |
16 | # |
17 | #**/ |
18 | |
19 | [Defines] |
20 | INF_VERSION = 0x00010005 |
21 | BASE_NAME = DxeIpl |
22 | FILE_GUID = 86D70125-BAA3-4296-A62F-602BEBBB9081 |
23 | MODULE_TYPE = PEIM |
24 | VERSION_STRING = 1.0 |
25 | |
26 | ENTRY_POINT = PeimInitializeDxeIpl |
27 | |
28 | # |
29 | # The following information is for reference only and not required by the build tools. |
30 | # |
31 | # VALID_ARCHITECTURES = IA32 X64 IPF EBC (EBC is for build only) |
32 | # |
33 | |
34 | [Sources.common] |
35 | DxeIpl.h |
36 | DxeLoad.c |
37 | |
38 | [Sources.Ia32] |
39 | Ia32/VirtualMemory.h ||||PcdDxeIplSwitchToLongMode |
40 | Ia32/VirtualMemory.c ||||PcdDxeIplSwitchToLongMode |
41 | Ia32/DxeLoadFunc.c |
42 | Ia32/IdtVectorAsm.asm||||PcdDxeIplSwitchToLongMode |
43 | Ia32/IdtVectorAsm.S ||||PcdDxeIplSwitchToLongMode |
44 | |
45 | [Sources.X64] |
46 | X64/VirtualMemory.h |
47 | X64/VirtualMemory.c |
48 | X64/DxeLoadFunc.c |
49 | |
50 | [Sources.IPF] |
51 | Ipf/DxeLoadFunc.c |
52 | |
53 | [Sources.EBC] |
54 | Ebc/DxeLoadFunc.c |
55 | |
56 | [Sources.ARM] |
57 | Arm/DxeLoadFunc.c |
58 | |
59 | [Packages] |
60 | MdePkg/MdePkg.dec |
61 | MdeModulePkg/MdeModulePkg.dec |
62 | |
63 | [LibraryClasses] |
64 | PcdLib |
65 | MemoryAllocationLib |
66 | BaseMemoryLib |
67 | ExtractGuidedSectionLib |
68 | UefiDecompressLib |
69 | ReportStatusCodeLib |
70 | PeiServicesLib |
71 | HobLib |
72 | BaseLib |
73 | PeimEntryPoint |
74 | DebugLib |
75 | |
76 | [Ppis] |
77 | gEfiDxeIplPpiGuid ## PRODUCES |
78 | gEfiEndOfPeiSignalPpiGuid ## SOMETIMES_PRODUCES(Not produced on S3 boot path) |
79 | gEfiPeiDecompressPpiGuid ## SOMETIMES_PRODUCES |
80 | gEfiPeiReadOnlyVariable2PpiGuid ## SOMETIMES_CONSUMES |
81 | gEfiPeiLoadFilePpiGuid ## CONSUMES |
82 | gEfiPeiS3ResumePpiGuid ## SOMETIMES_CONSUMES(Consumed on S3 boot path) |
83 | gEfiPeiRecoveryModulePpiGuid ## SOMETIMES_CONSUMES(Consumed on recovery boot path) |
84 | |
85 | [Guids] |
86 | gEfiMemoryTypeInformationGuid ## SOMETIMES_CONSUMES ## Variable:L"MemoryTypeInformation" |
87 | gEfiMemoryTypeInformationGuid ## SOMETIMES_PRODUCES ## HOB |
88 | |
89 | [FeaturePcd.IA32] |
90 | gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode |
91 | |
92 | [FeaturePcd.common] |
93 | gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSupportUefiDecompress |
94 | |
95 | [FixedPcd.common] |
96 | gEfiMdePkgTokenSpaceGuid.PcdStatusCodeValuePeiHandoffToDxe |
97 | |
98 | [Depex] |
99 | gEfiPeiMemoryDiscoveredPpiGuid AND gEfiPeiLoadFilePpiGuid |
100 | |
101 | # |
102 | # [BootMode] |
103 | # S3_RESUME ## SOMETIMES_CONSUMES |
104 | # RECOVERY ## SOMETIMES_CONSUMES |
105 | # |
106 | # |
107 | # [Hob] |
108 | # ## |
109 | # # New Stack HoB |
110 | # MEMORY_ALLOCATION ## PRODUCES |
111 | # ## |
112 | # # Old Stack HOB |
113 | # MEMORY_ALLOCATION ## CONSUMES |
114 | # |
115 | # [Hob.IPF] |
116 | # ## |
117 | # # BSP Stack HOB for IPF |
118 | # MEMORY_ALLOCATION ## PRODUCES |
119 | # |
120 | # |