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
872 IN EFI_BOOT_MODE BootMode,
873 IN EFI_PHYSICAL_ADDRESS MemoryBegin,
874 IN UINT64 MemoryLength
875 );
876
889 IN CONST EFI_PEI_SERVICES **PeiServices,
890 IN EFI_HOB_GENERIC_HEADER *SecHobList
891 );
892
893//
894// FFS Fw Volume support functions
895//
896
914EFIAPI
916 IN CONST EFI_PEI_SERVICES **PeiServices,
917 IN UINT8 SearchType,
918 IN EFI_PEI_FV_HANDLE FvHandle,
919 IN OUT EFI_PEI_FILE_HANDLE *FileHandle
920 );
921
943 IN CONST EFI_PEI_SERVICES **PeiServices,
944 IN EFI_SECTION_TYPE SectionType,
945 IN OUT UINTN *SectionInstance,
947 IN UINTN SectionSize,
948 OUT VOID **OutputBuffer,
949 OUT UINT32 *AuthenticationStatus,
950 IN BOOLEAN IsFfs3Fv
951 );
952
967EFIAPI
969 IN CONST EFI_PEI_SERVICES **PeiServices,
970 IN EFI_SECTION_TYPE SectionType,
971 IN EFI_PEI_FILE_HANDLE FileHandle,
972 OUT VOID **SectionData
973 );
974
990EFIAPI
992 IN CONST EFI_PEI_SERVICES **PeiServices,
993 IN EFI_SECTION_TYPE SectionType,
994 IN UINTN SectionInstance,
995 IN EFI_PEI_FILE_HANDLE FileHandle,
996 OUT VOID **SectionData,
997 OUT UINT32 *AuthenticationStatus
998 );
999
1014EFIAPI
1016 IN CONST EFI_PEI_SERVICES **PeiServices,
1017 IN UINTN Instance,
1018 IN OUT EFI_PEI_FV_HANDLE *VolumeHandle
1019 );
1020
1021//
1022// Memory support functions
1023//
1024
1036VOID
1038 IN PEI_CORE_INSTANCE *PrivateData,
1039 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData,
1040 IN PEI_CORE_INSTANCE *OldCoreData
1041 );
1042
1056EFIAPI
1058 IN CONST EFI_PEI_SERVICES **PeiServices,
1059 IN EFI_PHYSICAL_ADDRESS MemoryBegin,
1060 IN UINT64 MemoryLength
1061 );
1062
1071VOID
1073 IN PEI_CORE_INSTANCE *Private,
1074 IN BOOLEAN TemporaryRamMigrated
1075 );
1076
1086VOID
1088 IN PEI_CORE_INSTANCE *PrivateData,
1089 IN UINTN OrgFvHandle,
1090 IN UINTN FvHandle
1091 );
1092
1100VOID
1102 IN PEI_CORE_INSTANCE *PrivateData
1103 );
1104
1128EFIAPI
1130 IN CONST EFI_PEI_SERVICES **PeiServices,
1131 IN EFI_MEMORY_TYPE MemoryType,
1132 IN UINTN Pages,
1134 );
1135
1150EFIAPI
1152 IN CONST EFI_PEI_SERVICES **PeiServices,
1153 IN EFI_PHYSICAL_ADDRESS Memory,
1154 IN UINTN Pages
1155 );
1156
1172EFIAPI
1174 IN CONST EFI_PEI_SERVICES **PeiServices,
1175 IN UINTN Size,
1176 OUT VOID **Buffer
1177 );
1178
1197 IN CONST EFI_PEI_SERVICES **PeiServices,
1198 IN EFI_PEI_FILE_HANDLE FileHandle,
1199 IN UINT8 PeimState,
1200 OUT EFI_PHYSICAL_ADDRESS *EntryPoint,
1201 OUT UINT32 *AuthenticationState
1202 );
1203
1221EFIAPI
1223 IN CONST EFI_PEI_SERVICES **PeiServices,
1224 IN EFI_STATUS_CODE_TYPE CodeType,
1226 IN UINT32 Instance,
1227 IN CONST EFI_GUID *CallerId,
1228 IN CONST EFI_STATUS_CODE_DATA *Data OPTIONAL
1229 );
1230
1244EFIAPI
1246 IN CONST EFI_PEI_SERVICES **PeiServices
1247 );
1248
1262VOID
1263EFIAPI
1265 IN EFI_RESET_TYPE ResetType,
1266 IN EFI_STATUS ResetStatus,
1267 IN UINTN DataSize,
1268 IN VOID *ResetData OPTIONAL
1269 );
1270
1280VOID
1282 IN PEI_CORE_INSTANCE *PrivateData,
1283 IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData
1284 );
1285
1297EFIAPI
1299 IN EFI_PEI_SERVICES **PeiServices,
1300 IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor,
1301 IN VOID *Ppi
1302 );
1303
1318EFIAPI
1320 IN CONST EFI_GUID *FileName,
1321 IN EFI_PEI_FV_HANDLE VolumeHandle,
1322 OUT EFI_PEI_FILE_HANDLE *FileHandle
1323 );
1324
1337EFIAPI
1339 IN EFI_PEI_FILE_HANDLE FileHandle,
1341 );
1342
1355EFIAPI
1357 IN EFI_PEI_FILE_HANDLE FileHandle,
1359 );
1360
1372EFIAPI
1374 IN EFI_PEI_FV_HANDLE VolumeHandle,
1375 OUT EFI_FV_INFO *VolumeInfo
1376 );
1377
1390EFIAPI
1392 IN EFI_PEI_FILE_HANDLE FileHandle
1393 );
1394
1405VOID
1407 IN PEI_CORE_INSTANCE *PrivateData,
1408 IN PEI_CORE_INSTANCE *OldCoreData
1409 );
1410
1423 IN VOID *Pe32Data,
1424 IN VOID *ImageAddress
1425 );
1426
1439 IN EFI_PEI_FILE_HANDLE FileHandle,
1440 OUT VOID **Pe32Data
1441 );
1442
1457EFIAPI
1460 IN EFI_PEI_FILE_HANDLE FileHandle,
1461 OUT EFI_PHYSICAL_ADDRESS *ImageAddressArg OPTIONAL,
1462 OUT UINT64 *ImageSizeArg OPTIONAL,
1463 OUT EFI_PHYSICAL_ADDRESS *EntryPoint,
1464 OUT UINT32 *AuthenticationState
1465 );
1466
1479EFIAPI
1481 IN EFI_PEI_SERVICES **PeiServices,
1482 IN EFI_PEI_NOTIFY_DESCRIPTOR *NotifyDescriptor,
1483 IN VOID *Ppi
1484 );
1485
1502 IN PEI_CORE_INSTANCE *PrivateData,
1503 IN PEI_CORE_FV_HANDLE *ParentFvCoreHandle,
1504 IN EFI_PEI_FILE_HANDLE ParentFvFileHandle
1505 );
1506
1520 IN PEI_CORE_INSTANCE *Private,
1521 IN UINTN Instance
1522 );
1523
1524//
1525// Default EFI_PEI_CPU_IO_PPI support for EFI_PEI_SERVICES table when PeiCore initialization.
1526//
1527
1548EFIAPI
1550 IN CONST EFI_PEI_SERVICES **PeiServices,
1553 IN UINT64 Address,
1554 IN UINTN Count,
1555 IN OUT VOID *Buffer
1556 );
1557
1578EFIAPI
1580 IN CONST EFI_PEI_SERVICES **PeiServices,
1583 IN UINT64 Address,
1584 IN UINTN Count,
1585 IN OUT VOID *Buffer
1586 );
1587
1607EFIAPI
1609 IN CONST EFI_PEI_SERVICES **PeiServices,
1612 IN UINT64 Address,
1613 IN UINTN Count,
1614 IN OUT VOID *Buffer
1615 );
1616
1636EFIAPI
1638 IN CONST EFI_PEI_SERVICES **PeiServices,
1641 IN UINT64 Address,
1642 IN UINTN Count,
1643 IN OUT VOID *Buffer
1644 );
1645
1658UINT8
1659EFIAPI
1661 IN CONST EFI_PEI_SERVICES **PeiServices,
1663 IN UINT64 Address
1664 );
1665
1678UINT16
1679EFIAPI
1681 IN CONST EFI_PEI_SERVICES **PeiServices,
1683 IN UINT64 Address
1684 );
1685
1698UINT32
1699EFIAPI
1701 IN CONST EFI_PEI_SERVICES **PeiServices,
1703 IN UINT64 Address
1704 );
1705
1718UINT64
1719EFIAPI
1721 IN CONST EFI_PEI_SERVICES **PeiServices,
1723 IN UINT64 Address
1724 );
1725
1734VOID
1735EFIAPI
1737 IN CONST EFI_PEI_SERVICES **PeiServices,
1739 IN UINT64 Address,
1740 IN UINT8 Data
1741 );
1742
1751VOID
1752EFIAPI
1754 IN CONST EFI_PEI_SERVICES **PeiServices,
1756 IN UINT64 Address,
1757 IN UINT16 Data
1758 );
1759
1768VOID
1769EFIAPI
1771 IN CONST EFI_PEI_SERVICES **PeiServices,
1773 IN UINT64 Address,
1774 IN UINT32 Data
1775 );
1776
1785VOID
1786EFIAPI
1788 IN CONST EFI_PEI_SERVICES **PeiServices,
1790 IN UINT64 Address,
1791 IN UINT64 Data
1792 );
1793
1807UINT8
1808EFIAPI
1810 IN CONST EFI_PEI_SERVICES **PeiServices,
1812 IN UINT64 Address
1813 );
1814
1828UINT16
1829EFIAPI
1831 IN CONST EFI_PEI_SERVICES **PeiServices,
1833 IN UINT64 Address
1834 );
1835
1849UINT32
1850EFIAPI
1852 IN CONST EFI_PEI_SERVICES **PeiServices,
1854 IN UINT64 Address
1855 );
1856
1870UINT64
1871EFIAPI
1873 IN CONST EFI_PEI_SERVICES **PeiServices,
1875 IN UINT64 Address
1876 );
1877
1887VOID
1888EFIAPI
1890 IN CONST EFI_PEI_SERVICES **PeiServices,
1892 IN UINT64 Address,
1893 IN UINT8 Data
1894 );
1895
1905VOID
1906EFIAPI
1908 IN CONST EFI_PEI_SERVICES **PeiServices,
1910 IN UINT64 Address,
1911 IN UINT16 Data
1912 );
1913
1923VOID
1924EFIAPI
1926 IN CONST EFI_PEI_SERVICES **PeiServices,
1928 IN UINT64 Address,
1929 IN UINT32 Data
1930 );
1931
1941VOID
1942EFIAPI
1944 IN CONST EFI_PEI_SERVICES **PeiServices,
1946 IN UINT64 Address,
1947 IN UINT64 Data
1948 );
1949
1951
1952//
1953// Default EFI_PEI_PCI_CFG2_PPI support for EFI_PEI_SERVICES table when PeiCore initialization.
1954//
1955
1976EFIAPI
1978 IN CONST EFI_PEI_SERVICES **PeiServices,
1981 IN UINT64 Address,
1982 IN OUT VOID *Buffer
1983 );
1984
2004EFIAPI
2006 IN CONST EFI_PEI_SERVICES **PeiServices,
2009 IN UINT64 Address,
2010 IN OUT VOID *Buffer
2011 );
2012
2033EFIAPI
2035 IN CONST EFI_PEI_SERVICES **PeiServices,
2038 IN UINT64 Address,
2039 IN VOID *SetBits,
2040 IN VOID *ClearBits
2041 );
2042
2044
2053VOID
2055 IN PEI_CORE_INSTANCE *PrivateData
2056 );
2057
2073EFIAPI
2077 IN UINT64 Context,
2078 IN EFI_GUID *DelayedGroupId OPTIONAL,
2079 IN UINT32 Delay
2080 );
2081
2095EFIAPI
2098 IN EFI_GUID DelayedGroupId
2099 );
2100
2101#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 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:662
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:1080
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:1307
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:1188
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:963
VOID InitializeDispatcherData(IN PEI_CORE_INSTANCE *PrivateData, IN PEI_CORE_INSTANCE *OldCoreData, IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData)
Definition: Dispatcher.c:2132
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:1371
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:960
PEI_CORE_FV_HANDLE * FindNextCoreFvHandle(IN PEI_CORE_INSTANCE *Private, IN UINTN Instance)
Definition: FwVol.c:2143
VOID PeiReinitializeFv(IN PEI_CORE_INSTANCE *PrivateData)
Definition: FwVol.c:2164
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:1067
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:563
VOID ProcessDispatchNotifyList(IN PEI_CORE_INSTANCE *PrivateData)
Definition: Ppi.c:890
EFI_STATUS EFIAPI PeiFfsGetFileInfo(IN EFI_PEI_FILE_HANDLE FileHandle, OUT EFI_FV_FILE_INFO *FileInfo)
Definition: FwVol.c:1221
VOID PeiDispatcher(IN CONST EFI_SEC_PEI_HAND_OFF *SecCoreData, IN PEI_CORE_INSTANCE *PrivateData)
Definition: Dispatcher.c:1777
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:590
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:885
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:1256
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:553
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:465
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
EFI_STATUS EFIAPI PeiFfsFindNextVolume(IN CONST EFI_PEI_SERVICES **PeiServices, IN UINTN Instance, IN OUT EFI_PEI_FV_HANDLE *VolumeHandle)
Definition: FwVol.c:1147
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:132
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:1034
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:2162
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:307
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:1114
VOID ProcessPpiListFromSec(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_PPI_DESCRIPTOR *PpiList)
Definition: Ppi.c:1021
EFI_STATUS EFIAPI PeiNotifyPpi(IN CONST EFI_PEI_SERVICES **PeiServices, IN CONST EFI_PEI_NOTIFY_DESCRIPTOR *NotifyList)
Definition: Ppi.c:874
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:782
EFI_STATUS EFIAPI PeiCreateHob(IN CONST EFI_PEI_SERVICES **PeiServices, IN UINT16 Type, IN UINT16 Length, IN OUT VOID **Hob)
Definition: Hob.c:66
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:2223
EFI_STATUS ProcessFvFile(IN PEI_CORE_INSTANCE *PrivateData, IN PEI_CORE_FV_HANDLE *ParentFvCoreHandle, IN EFI_PEI_FILE_HANDLE ParentFvFileHandle)
Definition: FwVol.c:1406
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:1537
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 PeiCoreBuildHobHandoffInfoTable(IN EFI_BOOT_MODE BootMode, IN EFI_PHYSICAL_ADDRESS MemoryBegin, IN UINT64 MemoryLength)
Definition: Hob.c:208
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:789
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:67
UINT32 EFI_STATUS_CODE_TYPE
Definition: PiStatusCode.h:24
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