TianoCore EDK2 master
Loading...
Searching...
No Matches
PeiMain.h
Go to the documentation of this file.
1
9#ifndef _PEI_MAIN_H_
10#define _PEI_MAIN_H_
11
12#include <PiPei.h>
13#include <Ppi/DxeIpl.h>
14#include <Ppi/DelayedDispatch.h>
15#include <Ppi/EndOfPeiPhase.h>
17#include <Ppi/StatusCode.h>
18#include <Ppi/Reset.h>
19#include <Ppi/Reset2.h>
20#include <Ppi/FirmwareVolume.h>
23#include <Ppi/Decompress.h>
25#include <Ppi/LoadFile.h>
26#include <Ppi/Security2.h>
29#include <Ppi/SecHobData.h>
31#include <Ppi/MigrateTempRam.h>
32#include <Library/DebugLib.h>
34#include <Library/BaseLib.h>
35#include <Library/HobLib.h>
39#include <Library/PeCoffLib.h>
43#include <Library/PcdLib.h>
47#include <Library/TimerLib.h>
48#include <Library/SafeIntLib.h>
52#include <Guid/MigratedFvInfo.h>
54
59#define PEI_CORE_INTERNAL_FFS_FILE_DISPATCH_TYPE 0xff
60
64typedef union {
67 VOID *Raw;
69
73#define PPI_GROWTH_STEP 64
74#define CALLBACK_NOTIFY_GROWTH_STEP 32
75#define DISPATCH_NOTIFY_GROWTH_STEP 8
76
77typedef struct {
78 UINTN CurrentCount;
79 UINTN MaxCount;
80 UINTN LastDispatchedCount;
86
87typedef struct {
88 UINTN CurrentCount;
89 UINTN MaxCount;
95
96typedef struct {
97 UINTN CurrentCount;
98 UINTN MaxCount;
99 UINTN LastDispatchedCount;
105
110typedef struct {
124
125//
126// PEI_CORE_FV_HANDLE.PeimState
127// Do not change these values as there is code doing math to change states.
128// Look for Private->Fv[FvCount].PeimState[PeimCount]++;
129//
130#define PEIM_STATE_NOT_DISPATCHED 0x00
131#define PEIM_STATE_DISPATCHED 0x01
132#define PEIM_STATE_REGISTER_FOR_SHADOW 0x02
133#define PEIM_STATE_DONE 0x03
134
135//
136// Number of FV instances to grow by each time we run out of room
137//
138#define FV_GROWTH_STEP 8
139
140typedef struct {
143 EFI_PEI_FV_HANDLE FvHandle;
144 UINTN PeimCount;
145 //
146 // Pointer to the buffer with the PeimCount number of Entries.
147 //
148 UINT8 *PeimState;
149 //
150 // Pointer to the buffer with the PeimCount number of Entries.
151 //
152 EFI_PEI_FILE_HANDLE *FvFileHandles;
153 BOOLEAN ScanFv;
154 UINT32 AuthenticationStatus;
156
157typedef struct {
158 EFI_GUID FvFormat;
159 VOID *FvInfo;
160 UINT32 FvInfoSize;
161 UINT32 AuthenticationStatus;
162 EFI_PEI_NOTIFY_DESCRIPTOR NotifyDescriptor;
164
165#define CACHE_SETION_MAX_NUMBER 0x10
166typedef struct {
167 EFI_COMMON_SECTION_HEADER *Section[CACHE_SETION_MAX_NUMBER];
168 VOID *SectionData[CACHE_SETION_MAX_NUMBER];
169 UINTN SectionSize[CACHE_SETION_MAX_NUMBER];
170 UINT32 AuthenticationStatus[CACHE_SETION_MAX_NUMBER];
171 UINTN AllSectionCount;
172 UINTN SectionIndex;
174
175#define HOLE_MAX_NUMBER 0x3
176typedef struct {
178 UINTN Size;
179 UINTN Offset;
180 BOOLEAN OffsetPositive;
182
187
201typedef
204 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
206 IN PEI_CORE_INSTANCE *OldCoreData
207 );
208
209//
210// Number of files to grow by each time we run out of room
211//
212#define TEMP_FILE_GROWTH_STEP 32
213
214#define PEI_CORE_HANDLE_SIGNATURE SIGNATURE_32('P','e','i','C')
215
216//
217// Converts elapsed ticks of performance counter to time in microseconds.
218// This macro converts the elapsed ticks of running performance counter to
219// time value in unit of microseconds.
220//
221// NOTE: To support Delayed Dispatch functionality, the timer ticks are required
222// to be:
223// 1. A 64bit register;
224// 2. Guaranteed to be monotonically increasing from 0;
225// 3. Not wrapped throughout the duration of a boot;
226//
227// The requirement above is set to avoid the timer overflow issue to keep the
228// Delayed Dispatch meet the PI specification with minimal change (instead of
229// implementing a control-yielding multi-threaded PEI core).
230//
231#define GET_TIME_IN_US() ((UINT32)DivU64x32(GetTimeInNanoSecond(GetPerformanceCounter ()), 1000))
232
237 UINTN Signature;
238
243 PEI_PPI_DATABASE PpiData;
244
249
254
260
266 UINTN MaxUnknownFvInfoCount;
267 UINTN UnknownFvInfoCount;
268
273 UINTN AprioriCount;
274 UINTN CurrentPeimFvCount;
275 UINTN CurrentPeimCount;
276 EFI_PEI_FILE_HANDLE CurrentFileHandle;
277 BOOLEAN PeimNeedingDispatch;
278 BOOLEAN PeimDispatchOnThisPass;
279 BOOLEAN PeimDispatcherReenter;
280 EFI_PEI_HOB_POINTERS HobList;
281 BOOLEAN SwitchStackSignal;
282 BOOLEAN PeiMemoryInstalled;
283 VOID *CpuIo;
284 EFI_PEI_SECURITY2_PPI *PrivateSecurityPpi;
285 EFI_PEI_SERVICES ServiceTableShadow;
286 EFI_PEI_PPI_DESCRIPTOR *XipLoadFile;
287 EFI_PHYSICAL_ADDRESS PhysicalMemoryBegin;
288 UINT64 PhysicalMemoryLength;
289 EFI_PHYSICAL_ADDRESS FreePhysicalMemoryTop;
290 UINTN HeapOffset;
291 BOOLEAN HeapOffsetPositive;
292 UINTN StackOffset;
293 BOOLEAN StackOffsetPositive;
294 //
295 // Information for migrating memory pages allocated in pre-memory phase.
296 //
297 HOLE_MEMORY_DATA MemoryPages;
298 PEICORE_FUNCTION_POINTER ShadowedPeiCore;
299 CACHE_SECTION_DATA CacheSection;
300 //
301 // For Loading modules at fixed address feature to cache the top address below which the
302 // Runtime code, boot time code and PEI memory will be placed. Please note that the offset between this field
303 // and Ps should not be changed since maybe user could get this top address by using the offset to Ps.
304 //
305 EFI_PHYSICAL_ADDRESS LoadModuleAtFixAddressTopAddress;
306 //
307 // The field is define for Loading modules at fixed address feature to tracker the PEI code
308 // memory range usage. It is a bit mapped array in which every bit indicates the corresponding memory page
309 // available or not.
310 //
311 UINT64 *PeiCodeMemoryRangeUsageBitMap;
312 //
313 // This field points to the shadowed image read function
314 //
315 PE_COFF_LOADER_READ_FILE ShadowedImageRead;
316
317 UINTN TempPeimCount;
318
319 //
320 // Pointer to the temp buffer with the TempPeimCount number of entries.
321 //
322 EFI_PEI_FILE_HANDLE *TempFileHandles;
323 //
324 // Pointer to the temp buffer with the TempPeimCount number of entries.
325 //
326 EFI_GUID *TempFileGuid;
327
328 //
329 // Temp Memory Range is not covered by PeiTempMem and Stack.
330 // Those Memory Range will be migrated into physical memory.
331 //
332 HOLE_MEMORY_DATA HoleData[HOLE_MAX_NUMBER];
333
334 //
335 // Table of delayed dispatch requests
336 //
337 DELAYED_DISPATCH_TABLE *DelayedDispatchTable;
338};
339
343#define PEI_CORE_INSTANCE_FROM_PS_THIS(a) \
344 CR(a, PEI_CORE_INSTANCE, Ps, PEI_CORE_HANDLE_SIGNATURE)
345
349typedef union {
352 EFI_PEIM_NOTIFY_ENTRY_POINT PeimNotifyEntry;
353 EFI_DXE_IPL_PPI *DxeIpl;
354 EFI_PEI_PPI_DESCRIPTOR *PpiDescriptor;
355 EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor;
356 VOID *Raw;
358
359typedef struct {
360 CONST EFI_SEC_PEI_HAND_OFF *SecCoreData;
361 EFI_PEI_PPI_DESCRIPTOR *PpiList;
362 VOID *Data;
364
365//
366// PeiCore function
367//
368
388VOID
389EFIAPI
390PeiCore (
391 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
393 IN VOID *Data
394 );
395
396//
397// Dispatcher support functions
398//
399
420BOOLEAN
422 IN EFI_PEI_SERVICES **PeiServices,
423 IN VOID *DependencyExpression
424 );
425
436EFIAPI
438 IN EFI_PEI_FILE_HANDLE FileHandle,
439 IN EFI_PEI_FILE_HANDLE MigratedFileHandle
440 );
441
455EFIAPI
457 IN PEI_CORE_INSTANCE *Private,
458 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData
459 );
460
468VOID
470 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
471 IN PEI_CORE_INSTANCE *PrivateData
472 );
473
484VOID
486 IN PEI_CORE_INSTANCE *PrivateData,
487 IN PEI_CORE_INSTANCE *OldCoreData,
488 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData
489 );
490
504BOOLEAN
506 IN PEI_CORE_INSTANCE *Private,
507 IN EFI_PEI_FILE_HANDLE FileHandle,
508 IN UINTN PeimCount
509 );
510
511//
512// PPI support functions
513//
514
524VOID
526 IN PEI_CORE_INSTANCE *PrivateData,
527 IN PEI_CORE_INSTANCE *OldCoreData
528 );
529
539VOID
541 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
542 IN PEI_CORE_INSTANCE *PrivateData
543 );
544
555VOID
557 IN PEI_CORE_INSTANCE *PrivateData,
558 IN UINTN OrgFvHandle,
559 IN UINTN FvHandle,
560 IN UINTN FvSize
561 );
562
571VOID
573 IN PEI_CORE_INSTANCE *PrivateData,
574 IN PEI_CORE_FV_HANDLE *CoreFvHandle
575 );
576
584VOID
586 IN PEI_CORE_INSTANCE *PrivateData
587 );
588
603EFIAPI
605 IN CONST EFI_PEI_SERVICES **PeiServices,
607 );
608
624EFIAPI
626 IN CONST EFI_PEI_SERVICES **PeiServices,
629 );
630
648EFIAPI
650 IN CONST EFI_PEI_SERVICES **PeiServices,
651 IN CONST EFI_GUID *Guid,
652 IN UINTN Instance,
653 IN OUT EFI_PEI_PPI_DESCRIPTOR **PpiDescriptor,
654 IN OUT VOID **Ppi
655 );
656
671EFIAPI
673 IN CONST EFI_PEI_SERVICES **PeiServices,
675 );
676
684VOID
686 IN PEI_CORE_INSTANCE *PrivateData
687 );
688
701VOID
703 IN PEI_CORE_INSTANCE *PrivateData,
704 IN UINTN NotifyType,
705 IN INTN InstallStartIndex,
706 IN INTN InstallStopIndex,
707 IN INTN NotifyStartIndex,
708 IN INTN NotifyStopIndex
709 );
710
719VOID
721 IN CONST EFI_PEI_SERVICES **PeiServices,
723 );
724
725//
726// Boot mode support functions
727//
728
740EFIAPI
742 IN CONST EFI_PEI_SERVICES **PeiServices,
743 IN OUT EFI_BOOT_MODE *BootMode
744 );
745
757EFIAPI
759 IN CONST EFI_PEI_SERVICES **PeiServices,
760 IN EFI_BOOT_MODE BootMode
761 );
762
763//
764// Security support functions
765//
766
776VOID
778 IN EFI_PEI_SERVICES **PeiServices,
779 IN PEI_CORE_INSTANCE *OldCoreData
780 );
781
792VerifyFv (
793 IN EFI_FIRMWARE_VOLUME_HEADER *CurrentFvAddress
794 );
795
810 IN PEI_CORE_INSTANCE *PrivateData,
811 IN EFI_PEI_FV_HANDLE VolumeHandle,
812 IN EFI_PEI_FILE_HANDLE FileHandle,
813 IN UINT32 AuthenticationStatus
814 );
815
830EFIAPI
832 IN CONST EFI_PEI_SERVICES **PeiServices,
833 IN OUT VOID **HobList
834 );
835
851EFIAPI
853 IN CONST EFI_PEI_SERVICES **PeiServices,
854 IN UINT16 Type,
855 IN UINT16 Length,
856 IN OUT VOID **Hob
857 );
858
868VOID
870 IN EFI_BOOT_MODE BootMode,
871 IN EFI_PHYSICAL_ADDRESS MemoryBegin,
872 IN UINT64 MemoryLength
873 );
874
887 IN CONST EFI_PEI_SERVICES **PeiServices,
888 IN EFI_HOB_GENERIC_HEADER *SecHobList
889 );
890
891//
892// FFS Fw Volume support functions
893//
894
912EFIAPI
914 IN CONST EFI_PEI_SERVICES **PeiServices,
915 IN UINT8 SearchType,
916 IN EFI_PEI_FV_HANDLE FvHandle,
917 IN OUT EFI_PEI_FILE_HANDLE *FileHandle
918 );
919
941 IN CONST EFI_PEI_SERVICES **PeiServices,
942 IN EFI_SECTION_TYPE SectionType,
943 IN OUT UINTN *SectionInstance,
945 IN UINTN SectionSize,
946 OUT VOID **OutputBuffer,
947 OUT UINT32 *AuthenticationStatus,
948 IN BOOLEAN IsFfs3Fv
949 );
950
965EFIAPI
967 IN CONST EFI_PEI_SERVICES **PeiServices,
968 IN EFI_SECTION_TYPE SectionType,
969 IN EFI_PEI_FILE_HANDLE FileHandle,
970 OUT VOID **SectionData
971 );
972
988EFIAPI
990 IN CONST EFI_PEI_SERVICES **PeiServices,
991 IN EFI_SECTION_TYPE SectionType,
992 IN UINTN SectionInstance,
993 IN EFI_PEI_FILE_HANDLE FileHandle,
994 OUT VOID **SectionData,
995 OUT UINT32 *AuthenticationStatus
996 );
997
1012EFIAPI
1014 IN CONST EFI_PEI_SERVICES **PeiServices,
1015 IN UINTN Instance,
1016 IN OUT EFI_PEI_FV_HANDLE *VolumeHandle
1017 );
1018
1019//
1020// Memory support functions
1021//
1022
1034VOID
1036 IN PEI_CORE_INSTANCE *PrivateData,
1037 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
1038 IN PEI_CORE_INSTANCE *OldCoreData
1039 );
1040
1054EFIAPI
1056 IN CONST EFI_PEI_SERVICES **PeiServices,
1057 IN EFI_PHYSICAL_ADDRESS MemoryBegin,
1058 IN UINT64 MemoryLength
1059 );
1060
1069VOID
1071 IN PEI_CORE_INSTANCE *Private,
1072 IN BOOLEAN TemporaryRamMigrated
1073 );
1074
1084VOID
1086 IN PEI_CORE_INSTANCE *PrivateData,
1087 IN UINTN OrgFvHandle,
1088 IN UINTN FvHandle
1089 );
1090
1098VOID
1100 IN PEI_CORE_INSTANCE *PrivateData
1101 );
1102
1126EFIAPI
1128 IN CONST EFI_PEI_SERVICES **PeiServices,
1129 IN EFI_MEMORY_TYPE MemoryType,
1130 IN UINTN Pages,
1132 );
1133
1148EFIAPI
1150 IN CONST EFI_PEI_SERVICES **PeiServices,
1151 IN EFI_PHYSICAL_ADDRESS Memory,
1152 IN UINTN Pages
1153 );
1154
1170EFIAPI
1172 IN CONST EFI_PEI_SERVICES **PeiServices,
1173 IN UINTN Size,
1174 OUT VOID **Buffer
1175 );
1176
1195 IN CONST EFI_PEI_SERVICES **PeiServices,
1196 IN EFI_PEI_FILE_HANDLE FileHandle,
1197 IN UINT8 PeimState,
1198 OUT EFI_PHYSICAL_ADDRESS *EntryPoint,
1199 OUT UINT32 *AuthenticationState
1200 );
1201
1219EFIAPI
1221 IN CONST EFI_PEI_SERVICES **PeiServices,
1222 IN EFI_STATUS_CODE_TYPE CodeType,
1224 IN UINT32 Instance,
1225 IN CONST EFI_GUID *CallerId,
1226 IN CONST EFI_STATUS_CODE_DATA *Data OPTIONAL
1227 );
1228
1242EFIAPI
1244 IN CONST EFI_PEI_SERVICES **PeiServices
1245 );
1246
1260VOID
1261EFIAPI
1263 IN EFI_RESET_TYPE ResetType,
1264 IN EFI_STATUS ResetStatus,
1265 IN UINTN DataSize,
1266 IN VOID *ResetData OPTIONAL
1267 );
1268
1278VOID
1280 IN PEI_CORE_INSTANCE *PrivateData,
1281 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData
1282 );
1283
1295EFIAPI
1297 IN EFI_PEI_SERVICES **PeiServices,
1298 IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor,
1299 IN VOID *Ppi
1300 );
1301
1316EFIAPI
1318 IN CONST EFI_GUID *FileName,
1319 IN EFI_PEI_FV_HANDLE VolumeHandle,
1320 OUT EFI_PEI_FILE_HANDLE *FileHandle
1321 );
1322
1335EFIAPI
1337 IN EFI_PEI_FILE_HANDLE FileHandle,
1339 );
1340
1353EFIAPI
1355 IN EFI_PEI_FILE_HANDLE FileHandle,
1357 );
1358
1370EFIAPI
1372 IN EFI_PEI_FV_HANDLE VolumeHandle,
1373 OUT EFI_FV_INFO *VolumeInfo
1374 );
1375
1388EFIAPI
1390 IN EFI_PEI_FILE_HANDLE FileHandle
1391 );
1392
1403VOID
1405 IN PEI_CORE_INSTANCE *PrivateData,
1406 IN PEI_CORE_INSTANCE *OldCoreData
1407 );
1408
1421 IN VOID *Pe32Data,
1422 IN VOID *ImageAddress
1423 );
1424
1437 IN EFI_PEI_FILE_HANDLE FileHandle,
1438 OUT VOID **Pe32Data
1439 );
1440
1455EFIAPI
1458 IN EFI_PEI_FILE_HANDLE FileHandle,
1459 OUT EFI_PHYSICAL_ADDRESS *ImageAddressArg OPTIONAL,
1460 OUT UINT64 *ImageSizeArg OPTIONAL,
1461 OUT EFI_PHYSICAL_ADDRESS *EntryPoint,
1462 OUT UINT32 *AuthenticationState
1463 );
1464
1477EFIAPI
1479 IN EFI_PEI_SERVICES **PeiServices,
1480 IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor,
1481 IN VOID *Ppi
1482 );
1483
1500 IN PEI_CORE_INSTANCE *PrivateData,
1501 IN PEI_CORE_FV_HANDLE *ParentFvCoreHandle,
1502 IN EFI_PEI_FILE_HANDLE ParentFvFileHandle
1503 );
1504
1518 IN PEI_CORE_INSTANCE *Private,
1519 IN UINTN Instance
1520 );
1521
1522//
1523// Default EFI_PEI_CPU_IO_PPI support for EFI_PEI_SERVICES table when PeiCore initialization.
1524//
1525
1546EFIAPI
1548 IN CONST EFI_PEI_SERVICES **PeiServices,
1551 IN UINT64 Address,
1552 IN UINTN Count,
1553 IN OUT VOID *Buffer
1554 );
1555
1576EFIAPI
1578 IN CONST EFI_PEI_SERVICES **PeiServices,
1581 IN UINT64 Address,
1582 IN UINTN Count,
1583 IN OUT VOID *Buffer
1584 );
1585
1605EFIAPI
1607 IN CONST EFI_PEI_SERVICES **PeiServices,
1610 IN UINT64 Address,
1611 IN UINTN Count,
1612 IN OUT VOID *Buffer
1613 );
1614
1634EFIAPI
1636 IN CONST EFI_PEI_SERVICES **PeiServices,
1639 IN UINT64 Address,
1640 IN UINTN Count,
1641 IN OUT VOID *Buffer
1642 );
1643
1656UINT8
1657EFIAPI
1659 IN CONST EFI_PEI_SERVICES **PeiServices,
1661 IN UINT64 Address
1662 );
1663
1676UINT16
1677EFIAPI
1679 IN CONST EFI_PEI_SERVICES **PeiServices,
1681 IN UINT64 Address
1682 );
1683
1696UINT32
1697EFIAPI
1699 IN CONST EFI_PEI_SERVICES **PeiServices,
1701 IN UINT64 Address
1702 );
1703
1716UINT64
1717EFIAPI
1719 IN CONST EFI_PEI_SERVICES **PeiServices,
1721 IN UINT64 Address
1722 );
1723
1732VOID
1733EFIAPI
1735 IN CONST EFI_PEI_SERVICES **PeiServices,
1737 IN UINT64 Address,
1738 IN UINT8 Data
1739 );
1740
1749VOID
1750EFIAPI
1752 IN CONST EFI_PEI_SERVICES **PeiServices,
1754 IN UINT64 Address,
1755 IN UINT16 Data
1756 );
1757
1766VOID
1767EFIAPI
1769 IN CONST EFI_PEI_SERVICES **PeiServices,
1771 IN UINT64 Address,
1772 IN UINT32 Data
1773 );
1774
1783VOID
1784EFIAPI
1786 IN CONST EFI_PEI_SERVICES **PeiServices,
1788 IN UINT64 Address,
1789 IN UINT64 Data
1790 );
1791
1805UINT8
1806EFIAPI
1808 IN CONST EFI_PEI_SERVICES **PeiServices,
1810 IN UINT64 Address
1811 );
1812
1826UINT16
1827EFIAPI
1829 IN CONST EFI_PEI_SERVICES **PeiServices,
1831 IN UINT64 Address
1832 );
1833
1847UINT32
1848EFIAPI
1850 IN CONST EFI_PEI_SERVICES **PeiServices,
1852 IN UINT64 Address
1853 );
1854
1868UINT64
1869EFIAPI
1871 IN CONST EFI_PEI_SERVICES **PeiServices,
1873 IN UINT64 Address
1874 );
1875
1885VOID
1886EFIAPI
1888 IN CONST EFI_PEI_SERVICES **PeiServices,
1890 IN UINT64 Address,
1891 IN UINT8 Data
1892 );
1893
1903VOID
1904EFIAPI
1906 IN CONST EFI_PEI_SERVICES **PeiServices,
1908 IN UINT64 Address,
1909 IN UINT16 Data
1910 );
1911
1921VOID
1922EFIAPI
1924 IN CONST EFI_PEI_SERVICES **PeiServices,
1926 IN UINT64 Address,
1927 IN UINT32 Data
1928 );
1929
1939VOID
1940EFIAPI
1942 IN CONST EFI_PEI_SERVICES **PeiServices,
1944 IN UINT64 Address,
1945 IN UINT64 Data
1946 );
1947
1949
1950//
1951// Default EFI_PEI_PCI_CFG2_PPI support for EFI_PEI_SERVICES table when PeiCore initialization.
1952//
1953
1974EFIAPI
1976 IN CONST EFI_PEI_SERVICES **PeiServices,
1979 IN UINT64 Address,
1980 IN OUT VOID *Buffer
1981 );
1982
2002EFIAPI
2004 IN CONST EFI_PEI_SERVICES **PeiServices,
2007 IN UINT64 Address,
2008 IN OUT VOID *Buffer
2009 );
2010
2031EFIAPI
2033 IN CONST EFI_PEI_SERVICES **PeiServices,
2036 IN UINT64 Address,
2037 IN VOID *SetBits,
2039 );
2040
2042
2051VOID
2053 IN PEI_CORE_INSTANCE *PrivateData
2054 );
2055
2071EFIAPI
2075 IN UINT64 Context,
2076 IN EFI_GUID *DelayedGroupId OPTIONAL,
2077 IN UINT32 Delay
2078 );
2079
2093EFIAPI
2096 IN EFI_GUID DelayedGroupId
2097 );
2098
2099#endif
UINT64 UINTN
INT64 INTN
EFI_PEI_CPU_IO_PPI_WIDTH
Definition: CpuIo.h:24
STATIC VOID ClearBits(IN EFI_PHYSICAL_ADDRESS Address, IN UINTN BitNumber, IN UINT64 *BitMap)
Definition: HeapGuard.c:113
STATIC VOID SetBits(IN EFI_PHYSICAL_ADDRESS Address, IN UINTN BitNumber, IN UINT64 *BitMap)
Definition: HeapGuard.c:57
#define CONST
Definition: Base.h:259
#define VOID
Definition: Base.h:269
#define IN
Definition: Base.h:279
#define OUT
Definition: Base.h:284
VOID(EFIAPI * EFI_DELAYED_DISPATCH_FUNCTION)(IN OUT UINT64 *Context, OUT UINT32 *NewDelay)
EFI_PEI_PCI_CFG_PPI_WIDTH
Definition: PciCfg2.h:35
RETURN_STATUS(EFIAPI * PE_COFF_LOADER_READ_FILE)(IN VOID *FileHandle, IN UINTN FileOffset, IN OUT UINTN *ReadSize, OUT VOID *Buffer)
Definition: PeCoffLib.h:65
EFI_PEI_PCI_CFG2_PPI gPeiDefaultPciCfg2Ppi
Definition: PciCfg2.c:20
UINT64 EFIAPI PeiDefaultIoRead64(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
Definition: CpuIo.c:260
EFI_STATUS EFIAPI PeiLocatePpi(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_GUID *Guid, IN UINTN Instance, IN OUT EFI_PEI_PPI_DESCRIPTOR **PpiDescriptor, IN OUT VOID **Ppi)
Definition: Ppi.c:666
EFI_STATUS EFIAPI PeiInstallPeiMemory(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PHYSICAL_ADDRESS MemoryBegin, IN UINT64 MemoryLength)
VOID ConvertPeiCorePpiPointers(IN PEI_CORE_INSTANCE *PrivateData, IN PEI_CORE_FV_HANDLE *CoreFvHandle)
Definition: Ppi.c:1092
VOID EFIAPI PeiResetSystem2(IN EFI_RESET_TYPE ResetType, IN EFI_STATUS ResetStatus, IN UINTN DataSize, IN VOID *ResetData OPTIONAL)
Definition: Reset.c:80
EFI_STATUS EFIAPI PeiFfsGetVolumeInfo(IN EFI_PEI_FV_HANDLE VolumeHandle, OUT EFI_FV_INFO *VolumeInfo)
Definition: FwVol.c:1332
VOID ConvertMemoryAllocationHobs(IN PEI_CORE_INSTANCE *PrivateData)
EFI_STATUS EFIAPI PeiFfsFindFileByName(IN CONST EFI_GUID *FileName, IN EFI_PEI_FV_HANDLE VolumeHandle, OUT EFI_PEI_FILE_HANDLE *FileHandle)
Definition: FwVol.c:1213
EFI_STATUS EFIAPI PeiDelayedDispatchRegister(IN EFI_DELAYED_DISPATCH_PPI *This, IN EFI_DELAYED_DISPATCH_FUNCTION Function, IN UINT64 Context, IN EFI_GUID *DelayedGroupId OPTIONAL, IN UINT32 Delay)
Definition: Dispatcher.c:109
VOID InitializeImageServices(IN PEI_CORE_INSTANCE *PrivateData, IN PEI_CORE_INSTANCE *OldCoreData)
Definition: Image.c:959
VOID InitializeDispatcherData(IN PEI_CORE_INSTANCE *PrivateData, IN PEI_CORE_INSTANCE *OldCoreData, IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData)
Definition: Dispatcher.c:2149
EFI_STATUS(EFIAPI * PEICORE_FUNCTION_POINTER)(IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData, IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList, IN PEI_CORE_INSTANCE *OldCoreData)
Definition: PeiMain.h:203
VOID ConvertFvHob(IN PEI_CORE_INSTANCE *PrivateData, IN UINTN OrgFvHandle, IN UINTN FvHandle)
VOID MigrateMemoryPages(IN PEI_CORE_INSTANCE *Private, IN BOOLEAN TemporaryRamMigrated)
EFI_STATUS EFIAPI MigratePeim(IN EFI_PEI_FILE_HANDLE FileHandle, IN EFI_PEI_FILE_HANDLE MigratedFileHandle)
Definition: Dispatcher.c:1385
EFI_STATUS EFIAPI PeiDefaultPciCfg2Read(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_PCI_CFG2_PPI *This, IN EFI_PEI_PCI_CFG_PPI_WIDTH Width, IN UINT64 Address, IN OUT VOID *Buffer)
Definition: PciCfg2.c:47
VOID EFIAPI PeiDefaultMemWrite8(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT8 Data)
Definition: CpuIo.c:462
VOID ProcessNotify(IN PEI_CORE_INSTANCE *PrivateData, IN UINTN NotifyType, IN INTN InstallStartIndex, IN INTN InstallStopIndex, IN INTN NotifyStartIndex, IN INTN NotifyStopIndex)
Definition: Ppi.c:972
PEI_CORE_FV_HANDLE * FindNextCoreFvHandle(IN PEI_CORE_INSTANCE *Private, IN UINTN Instance)
Definition: FwVol.c:2168
VOID PeiReinitializeFv(IN PEI_CORE_INSTANCE *PrivateData)
Definition: FwVol.c:2189
EFI_STATUS EFIAPI PeiDefaultPciCfg2Modify(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_PCI_CFG2_PPI *This, IN EFI_PEI_PCI_CFG_PPI_WIDTH Width, IN UINT64 Address, IN VOID *SetBits, IN VOID *ClearBits)
Definition: PciCfg2.c:112
VOID InitializeSecurityServices(IN EFI_PEI_SERVICES **PeiServices, IN PEI_CORE_INSTANCE *OldCoreData)
Definition: Security.c:26
EFI_STATUS EFIAPI PeiFfsFindSectionData3(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_SECTION_TYPE SectionType, IN UINTN SectionInstance, IN EFI_PEI_FILE_HANDLE FileHandle, OUT VOID **SectionData, OUT UINT32 *AuthenticationStatus)
Definition: FwVol.c:1092
EFI_STATUS EFIAPI PeiGetHobList(IN CONST EFI_PEI_SERVICES **PeiServices, IN OUT VOID **HobList)
Definition: Hob.c:25
EFI_STATUS EFIAPI PeiInstallPpi(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList)
Definition: Ppi.c:567
VOID ProcessDispatchNotifyList(IN PEI_CORE_INSTANCE *PrivateData)
Definition: Ppi.c:902
EFI_STATUS EFIAPI PeiFfsGetFileInfo(IN EFI_PEI_FILE_HANDLE FileHandle, OUT EFI_FV_FILE_INFO *FileInfo)
Definition: FwVol.c:1246
VOID PeiDispatcher(IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData, IN PEI_CORE_INSTANCE *PrivateData)
Definition: Dispatcher.c:1791
EFI_STATUS EFIAPI PeiDefaultMemWrite(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN EFI_PEI_CPU_IO_PPI_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer)
Definition: CpuIo.c:101
EFI_STATUS EFIAPI PeiReInstallPpi(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_PPI_DESCRIPTOR *OldPpi, IN CONST EFI_PEI_PPI_DESCRIPTOR *NewPpi)
Definition: Ppi.c:594
EFI_STATUS VerifyFv(IN EFI_FIRMWARE_VOLUME_HEADER *CurrentFvAddress)
Definition: Security.c:137
BOOLEAN PeimDispatchReadiness(IN EFI_PEI_SERVICES **PeiServices, IN VOID *DependencyExpression)
Definition: Dependency.c:92
EFI_STATUS PeiLoadImage(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_FILE_HANDLE FileHandle, IN UINT8 PeimState, OUT EFI_PHYSICAL_ADDRESS *EntryPoint, OUT UINT32 *AuthenticationState)
Definition: Image.c:881
EFI_STATUS EFIAPI PeiDefaultPciCfg2Write(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_PCI_CFG2_PPI *This, IN EFI_PEI_PCI_CFG_PPI_WIDTH Width, IN UINT64 Address, IN OUT VOID *Buffer)
Definition: PciCfg2.c:78
VOID EFIAPI PeiDefaultMemWrite16(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT16 Data)
Definition: CpuIo.c:484
VOID EFIAPI PeiDefaultMemWrite64(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT64 Data)
Definition: CpuIo.c:528
EFI_STATUS EFIAPI PeiResetSystem(IN CONST EFI_PEI_SERVICES **PeiServices)
Definition: Reset.c:25
EFI_STATUS EFIAPI PeiFreePages(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_PHYSICAL_ADDRESS Memory, IN UINTN Pages)
EFI_STATUS EFIAPI PeiFfsGetFileInfo2(IN EFI_PEI_FILE_HANDLE FileHandle, OUT EFI_FV_FILE_INFO2 *FileInfo)
Definition: FwVol.c:1281
UINT16 EFIAPI PeiDefaultMemRead16(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
Definition: CpuIo.c:392
EFI_STATUS VerifyPeim(IN PEI_CORE_INSTANCE *PrivateData, IN EFI_PEI_FV_HANDLE VolumeHandle, IN EFI_PEI_FILE_HANDLE FileHandle, IN UINT32 AuthenticationStatus)
Definition: Security.c:88
EFI_STATUS EFIAPI FirmwareVolumeInfoPpiNotifyCallback(IN EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor, IN VOID *Ppi)
Definition: FwVol.c:577
EFI_STATUS LoadAndRelocatePeCoffImageInPlace(IN VOID *Pe32Data, IN VOID *ImageAddress)
Definition: Image.c:482
UINT32 EFIAPI PeiDefaultIoRead32(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
Definition: CpuIo.c:237
EFI_STATUS EFIAPI PeiDefaultMemRead(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN EFI_PEI_CPU_IO_PPI_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer)
Definition: CpuIo.c:68
VOID PeiInitializeFv(IN PEI_CORE_INSTANCE *PrivateData, IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData)
Definition: FwVol.c:488
UINT8 EFIAPI PeiDefaultIoRead8(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
Definition: CpuIo.c:191
EFI_STATUS EFIAPI PeiAllocatePages(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_MEMORY_TYPE MemoryType, IN UINTN Pages, OUT EFI_PHYSICAL_ADDRESS *Memory)
UINT32 EFIAPI PeiDefaultMemRead32(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
Definition: CpuIo.c:416
VOID PeiCoreBuildHobHandoffInfoTable(IN EFI_BOOT_MODE BootMode, IN EFI_PHYSICAL_ADDRESS MemoryBegin, IN UINT64 MemoryLength)
Definition: Hob.c:202
EFI_STATUS EFIAPI PeiFfsFindNextVolume(IN CONST EFI_PEI_SERVICES **PeiServices, IN UINTN Instance, IN OUT EFI_PEI_FV_HANDLE *VolumeHandle)
Definition: FwVol.c:1172
EFI_PEI_CPU_IO_PPI gPeiDefaultCpuIoPpi
Definition: CpuIo.c:20
VOID EFIAPI PeiCore(IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData, IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList, IN VOID *Data)
Definition: PeiMain.c:169
EFI_STATUS PeiInstallSecHobData(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_HOB_GENERIC_HEADER *SecHobList)
Definition: Hob.c:128
EFI_STATUS EFIAPI PeiFfsFindSectionData(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_SECTION_TYPE SectionType, IN EFI_PEI_FILE_HANDLE FileHandle, OUT VOID **SectionData)
Definition: FwVol.c:1059
VOID DumpPpiList(IN PEI_CORE_INSTANCE *PrivateData)
Definition: Ppi.c:365
VOID ConvertPpiPointersFv(IN PEI_CORE_INSTANCE *PrivateData, IN UINTN OrgFvHandle, IN UINTN FvHandle, IN UINTN FvSize)
Definition: Ppi.c:213
BOOLEAN DepexSatisfied(IN PEI_CORE_INSTANCE *Private, IN EFI_PEI_FILE_HANDLE FileHandle, IN UINTN PeimCount)
Definition: Dispatcher.c:2179
VOID EFIAPI PeiDefaultIoWrite16(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT16 Data)
Definition: CpuIo.c:302
EFI_STATUS EFIAPI PeiDelayedDispatchWaitOnEvent(IN EFI_DELAYED_DISPATCH_PPI *This, IN EFI_GUID DelayedGroupId)
Definition: Dispatcher.c:313
VOID ConvertPpiPointers(IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData, IN PEI_CORE_INSTANCE *PrivateData)
Definition: Ppi.c:161
EFI_STATUS EFIAPI PeiDefaultIoWrite(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN EFI_PEI_CPU_IO_PPI_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer)
Definition: CpuIo.c:165
UINT8 EFIAPI PeiDefaultMemRead8(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
Definition: CpuIo.c:368
EFI_STATUS EFIAPI PeiFfsFindNextFile(IN CONST EFI_PEI_SERVICES **PeiServices, IN UINT8 SearchType, IN EFI_PEI_FV_HANDLE FvHandle, IN OUT EFI_PEI_FILE_HANDLE *FileHandle)
Definition: FwVol.c:1139
VOID ProcessPpiListFromSec(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList)
Definition: Ppi.c:1033
EFI_STATUS EFIAPI PeiNotifyPpi(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_NOTIFY_DESCRIPTOR *NotifyList)
Definition: Ppi.c:886
EFI_STATUS EFIAPI PeiGetBootMode(IN CONST EFI_PEI_SERVICES **PeiServices, IN OUT EFI_BOOT_MODE *BootMode)
Definition: BootMode.c:27
VOID InitializePpiServices(IN PEI_CORE_INSTANCE *PrivateData, IN PEI_CORE_INSTANCE *OldCoreData)
VOID InitializeMemoryServices(IN PEI_CORE_INSTANCE *PrivateData, IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData, IN PEI_CORE_INSTANCE *OldCoreData)
EFI_STATUS ProcessSection(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_SECTION_TYPE SectionType, IN OUT UINTN *SectionInstance, IN EFI_COMMON_SECTION_HEADER *Section, IN UINTN SectionSize, OUT VOID **OutputBuffer, OUT UINT32 *AuthenticationStatus, IN BOOLEAN IsFfs3Fv)
Definition: FwVol.c:807
EFI_STATUS EFIAPI PeiCreateHob(IN CONST EFI_PEI_SERVICES **PeiServices, IN UINT16 Type, IN UINT16 Length, IN OUT VOID **Hob)
Definition: Hob.c:62
UINT64 EFIAPI PeiDefaultMemRead64(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
Definition: CpuIo.c:440
EFI_STATUS EFIAPI PeiAllocatePool(IN CONST EFI_PEI_SERVICES **PeiServices, IN UINTN Size, OUT VOID **Buffer)
UINT16 EFIAPI PeiDefaultIoRead16(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address)
Definition: CpuIo.c:214
EFI_STATUS PeiGetPe32Data(IN EFI_PEI_FILE_HANDLE FileHandle, OUT VOID **Pe32Data)
Definition: Image.c:541
VOID EFIAPI PeiDefaultMemWrite32(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT32 Data)
Definition: CpuIo.c:506
VOID EFIAPI PeiDefaultIoWrite8(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT8 Data)
Definition: CpuIo.c:281
VOID EFIAPI PeiDefaultIoWrite32(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT32 Data)
Definition: CpuIo.c:323
EFI_STATUS EFIAPI PeiRegisterForShadow(IN EFI_PEI_FILE_HANDLE FileHandle)
Definition: Dispatcher.c:2240
EFI_STATUS ProcessFvFile(IN PEI_CORE_INSTANCE *PrivateData, IN PEI_CORE_FV_HANDLE *ParentFvCoreHandle, IN EFI_PEI_FILE_HANDLE ParentFvFileHandle)
Definition: FwVol.c:1431
VOID EFIAPI PeiDefaultIoWrite64(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN UINT64 Address, IN UINT64 Data)
Definition: CpuIo.c:344
EFI_STATUS EFIAPI EvacuateTempRam(IN PEI_CORE_INSTANCE *Private, IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData)
Definition: Dispatcher.c:1551
EFI_STATUS EFIAPI PeiReportStatusCode(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_STATUS_CODE_TYPE CodeType, IN EFI_STATUS_CODE_VALUE Value, IN UINT32 Instance, IN CONST EFI_GUID *CallerId, IN CONST EFI_STATUS_CODE_DATA *Data OPTIONAL)
Definition: StatusCode.c:29
EFI_STATUS EFIAPI PeiDefaultIoRead(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_CPU_IO_PPI *This, IN EFI_PEI_CPU_IO_PPI_WIDTH Width, IN UINT64 Address, IN UINTN Count, IN OUT VOID *Buffer)
Definition: CpuIo.c:133
EFI_STATUS EFIAPI SecurityPpiNotifyCallback(IN EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor, IN VOID *Ppi)
Definition: Security.c:52
EFI_STATUS EFIAPI PeiSetBootMode(IN CONST EFI_PEI_SERVICES **PeiServices, IN EFI_BOOT_MODE BootMode)
Definition: BootMode.c:60
EFI_STATUS EFIAPI PeiLoadImageLoadImageWrapper(IN CONST EFI_PEI_LOAD_FILE_PPI *This, IN EFI_PEI_FILE_HANDLE FileHandle, OUT EFI_PHYSICAL_ADDRESS *ImageAddressArg OPTIONAL, OUT UINT64 *ImageSizeArg OPTIONAL, OUT EFI_PHYSICAL_ADDRESS *EntryPoint, OUT UINT32 *AuthenticationState)
Definition: Image.c:785
EFI_STATUS EFIAPI PeimEntry(IN EFI_PEI_FILE_HANDLE FileHandle, IN CONST EFI_PEI_SERVICES **PeiServices)
UINT32 EFI_BOOT_MODE
Definition: PiBootMode.h:18
EFI_STATUS(EFIAPI * EFI_PEIM_ENTRY_POINT2)(IN EFI_PEI_FILE_HANDLE FileHandle, IN CONST EFI_PEI_SERVICES **PeiServices)
Definition: PiPeiCis.h:54
VOID * EFI_PEI_FILE_HANDLE
Definition: PiPeiCis.h:26
EFI_STATUS(EFIAPI * EFI_PEIM_NOTIFY_ENTRY_POINT)(IN EFI_PEI_SERVICES **PeiServices, IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor, IN VOID *Ppi)
Definition: PiPeiCis.h:71
VOID * EFI_PEI_FV_HANDLE
Definition: PiPeiCis.h:21
UINT32 EFI_STATUS_CODE_VALUE
Definition: PiStatusCode.h:68
UINT32 EFI_STATUS_CODE_TYPE
Definition: PiStatusCode.h:25
EFI_FILE_INFO * FileInfo(IN EFI_FILE_HANDLE FHand)
UINT64 EFI_PHYSICAL_ADDRESS
Definition: UefiBaseType.h:50
RETURN_STATUS EFI_STATUS
Definition: UefiBaseType.h:29
EFI_MEMORY_TYPE
EFI_RESET_TYPE
EFI_PEI_SERVICES * Ps
Definition: PeiMain.h:242
PEI_CORE_UNKNOW_FORMAT_FV_INFO * UnknownFvInfo
Definition: PeiMain.h:265
EFI_PEI_FILE_HANDLE * CurrentFvFileHandles
Definition: PeiMain.h:272
PEI_CORE_FV_HANDLE * Fv
Definition: PeiMain.h:259
Definition: Base.h:213
PEI_PPI_LIST_POINTERS * NotifyPtrs
Definition: PeiMain.h:93
PEI_PPI_LIST_POINTERS * NotifyPtrs
Definition: PeiMain.h:103
PEI_CALLBACK_NOTIFY_LIST CallbackNotifyList
Definition: PeiMain.h:118
PEI_DISPATCH_NOTIFY_LIST DispatchNotifyList
Definition: PeiMain.h:122
PEI_PPI_LIST PpiList
Definition: PeiMain.h:114
PEI_PPI_LIST_POINTERS * PpiPtrs
Definition: PeiMain.h:84