7#ifndef FIRMWARE_KIT_EFI_H
8#define FIRMWARE_KIT_EFI_H
21#define EFI_API __attribute__((ms_abi))
25#define EFIAPI __attribute__((ms_abi))
32#define EFI_STATUS EfiStatusType
34#define EFI_FINAL final
242#define EFI_ACPI_TABLE_PROTOCOL_GUID \
243 {0xffe06bdd, 0x6107, 0x46a6, {0x7b, 0xb2, 0x5a, 0x9c, 0x7e, 0xc5, 0x27, 0x5c}}
245#define EFI_LOAD_FILE_PROTOCOL_GUID \
246 {0x56EC3091, 0x954C, 0x11d2, {0x8e, 0x3f, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b}}
248#define EFI_LOAD_FILE2_PROTOCOL_GUID \
249 {0x4006c0c1, 0xfcb3, 0x403e, {0x99, 0x6d, 0x4a, 0x6c, 0x87, 0x24, 0xe0, 0x6d}}
251#define EFI_LOADED_IMAGE_PROTOCOL_GUID \
252 {0x5B1B31A1, 0x9562, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B}}
254#define EFI_GRAPHICS_OUTPUT_PROTOCOL_GUID \
255 {0x9042a9de, 0x23dc, 0x4a38, {0x96, 0xfb, 0x7a, 0xde, 0xd0, 0x80, 0x51, 0x6a}}
257#define EFI_SIMPLE_NETWORK_PROTOCOL_GUID \
258 {0xA19832B9, 0xAC25, 0x11D3, {0x9A, 0x2D, 0x00, 0x90, 0x27, 0x3f, 0xc1, 0x4d}}
260#define EFI_SIMPLE_NETWORK_PROTOCOL_REVISION 0x00010000
262#define EFI_IP4_PROTOCOL_GUID \
263 {0x41d94cd2, 0x35b6, 0x455a, {0x82, 0x58, 0xd4, 0xe5, 0x13, 0x34, 0xaa, 0xdd}}
265#define EFI_LOADED_IMAGE_PROTOCOL_REVISION 0x1000
267#define EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_GUID \
268 {0x0964e5b22, 0x6459, 0x11d2, {0x8e, 0x39, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b}}
270#define EFI_LOADED_IMAGE_DEVICE_PATH_PROTOCOL_GUID \
271 {0xbc62157e, 0x3e33, 0x4fec, {0x99, 0x20, 0x2d, 0x3b, 0x36, 0xd7, 0x50, 0xdf}}
273#define EFI_DEVICE_PATH_PROTOCOL_GUID \
274 {0x9576e91, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b}}
276#define EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_GUID \
277 {0x0964e5b22, 0x6459, 0x11d2, {0x8e, 0x39, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b}}
306#define MAX_MCAST_FILTER_CNT 16
487#define EFI_SIMPLE_TEXT_INPUT_PROTOCOL_GUID \
488 {0x387477c1, 0x69c7, 0x11d2, {0x8e, 0x39, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b}}
491#define EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL 0x00000001
492#define EFI_OPEN_PROTOCOL_GET_PROTOCOL 0x00000002
493#define EFI_OPEN_PROTOCOL_TEST_PROTOCOL 0x00000004
494#define EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER 0x00000008
495#define EFI_OPEN_PROTOCOL_BY_DRIVER 0x00000010
496#define EFI_OPEN_PROTOCOL_EXCLUSIVE 0x00000020
561#define kEntireDevPath 0xFF
562#define kThisInstancePath 0x01
649#define kBufferTooSmall 5
651#define EFI_EXTERN_C extern "C"
664#define kEFIYellow (0x01 | 0x02 | 0x04 | 0x08)
667#define __EFI_x86_64__ 1
680#define END_DEVICE_PATH_TYPE 0x7f
681#define END_ENTIRE_DEVICE_PATH_SUBTYPE 0xFF
682#define END_INSTANCE_DEVICE_PATH_SUBTYPE 0x01
684#define kEfiOffsetOf(T, F) __builtin_offsetof(T, F)
688#define kEFIFileRead 0x0000000000000001
689#define kEFIFileWrite 0x0000000000000002
690#define kEFIFileCreate 0x0000000000000000
692#define kEFIReadOnly 0x01
693#define kEFIHidden 0x02
694#define kEFISystem 0x04
695#define kEFIReserved 0x08
696#define kEFIDirectory 0x10
697#define kEFIArchive 0x20
699#define EFI_FILE_PROTOCOL_REVISION 0x00010000
700#define EFI_FILE_PROTOCOL_REVISION2 0x00020000
701#define EFI_FILE_PROTOCOL_LATEST_REVISION EFI_FILE_PROTOCOL_REVISION2
703#define EFI_EXTRA_DESCRIPTOR_SIZE 8
705#define EFI_MP_SERVICES_PROTOCOL_GUID \
706 {0x3fdda605, 0xa76e, 0x4f46, {0xad, 0x29, 0x12, 0xf4, 0x53, 0x1b, 0x3d, 0x08}}
708#define PROCESSOR_AS_BSP_BIT 0x00000001
709#define PROCESSOR_ENABLED_BIT 0x00000002
710#define PROCESSOR_HEALTH_STATUS_BIT 0x00000004
712#define END_OF_CPU_LIST 0xffffffff
802#define EFI_FILE_INFO_GUID \
803 {0x09576e92, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x00, 0xa0, 0xc9, 0x69, 0x72, 0x3b}}
EfiStatusType EFI_API(* EfiMpServicesStartupThisAP)(IN struct _EfiMpServicesProtocol *Self, IN EFI_AP_PROCEDURE Procedure, IN UInt32 ProcessorNumber, IN VoidPtr WaitEvent OPTIONAL, IN UInt32 TimeoutInMicroseconds, IN Void *ProcedureArgument OPTIONAL, OUT Boolean *Finished OPTIONAL)
Definition EFI.h:865
WideChar EfiCharType
Definition EFI.h:63
EfiStatusType(EFI_API * EfiWaitForEvent)(IN UInt32 NumberOfEvents, IN VoidPtr Event, OUT UInt32 *Index)
Definition EFI.h:591
UInt64(EFI_API * EfiOpenProtocol)(EfiHandlePtr Handle, EFI_GUID *Guid, VoidPtr *Interface, EfiHandlePtr AgentHandle, EfiHandlePtr ControllerHandle, UInt32 Attributes)
Definition EFI.h:501
UInt64(EFI_API * EfiGetMemoryMap)(UInt32 *MapSize, EfiMemoryDescriptor *DescPtr, UInt32 *MapKey, UInt32 *DescSize, UInt32 *DescVersion)
Definition EFI.h:470
EfiStatusType EFI_API(* EfiMpServicesWhoAmI)(IN struct _EfiMpServicesProtocol *Self, OUT UInt32 *ProcessorNumber)
Definition EFI.h:875
UInt64 EfiStatusType
Definition EFI.h:53
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_RESET)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN Boolean ExtendedVerification)
Definition EFI.h:299
#define EFI_FINAL
Definition EFI.h:34
UInt64(EFI_API * EfiTextClear)(struct EfiSimpleTextOutputProtocol *Self)
Definition EFI.h:79
UInt64(EFI_API * EfiOpenVolume)(struct EfiSimpleFilesystemProtocol *, struct EfiFileProtocol **)
@biref Open Volume procedure ptr.
Definition EFI.h:601
UInt64(EFI_API * EfiLoadFile)(EfiLoadFileProtocol *Self, EfiFileDevicePathProtocol *FilePath, Boolean BootPolicy, UInt32 *BufferSize, VoidPtr Buffer)
Definition EFI.h:81
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_SHUTDOWN)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This)
Definition EFI.h:302
UInt64(EFI_API * EfiCopyMem)(VoidPtr DstBuf, VoidPtr SrcBuf, SizeT Length)
Definition EFI.h:84
EfiStatusType(EFI_API * EfiInputReadKey)(IN EfiSimpleTextInputProtocol *This, OUT EfiInputKey *Key)
Definition EFI.h:585
UInt64 EfiPhysicalAddress
Definition EFI.h:65
UInt64(EFI_API * EfiGraphicsOutputProtocolBlt)(EfiGraphicsOutputProtocol *Self, EfiGraphicsOutputBltPixel *BltBuffer, EfiGraphicsOutputProtocolBltOperation BltOperation, UInt32 SourceX, UInt32 SourceY, UInt32 DestinationX, UInt32 DestinationY, UInt32 Width, UInt32 Height, UInt32 Delta)
Definition EFI.h:401
EfiStatusType EFI_API(* EfiMpServicesSwitchBSP)(IN struct _EfiMpServicesProtocol *Self, IN UInt32 ProcessorNumber, IN Boolean EnableOldBSP)
Definition EFI.h:861
struct _EfiCPUPhyiscalLocation EfiCPUPhyiscalLocation
UInt64(EFI_API * EfiSetMem)(VoidPtr DstBuf, Char Byte, SizeT Length)
Definition EFI.h:86
UInt8 EfiMacAddress[32]
Definition EFI.h:304
UInt64(EFI_API * EfiLocateDevicePath)(EFI_GUID *Protocol, EfiDevicePathProtocol **DevicePath, EfiHandlePtr Device)
Definition EFI.h:90
UInt64(EFI_API * EfiFreePages)(EfiPhysicalAddress *Memory, UInt32 Pages)
Definition EFI.h:468
EfiMemoryType
EFI pool helpers, taken from iPXE.
Definition EFI.h:101
@ EfiUnusableMemory
Definition EFI.h:142
@ EfiBootServicesData
Definition EFI.h:124
@ EfiMaxMemoryType
Definition EFI.h:181
@ EfiPersistentMemory
Definition EFI.h:171
@ EfiReservedMemoryType
Definition EFI.h:105
@ EfiBootServicesCode
Definition EFI.h:119
@ EfiConventionalMemory
Definition EFI.h:138
@ EfiLoaderData
Definition EFI.h:115
@ EfiACPIMemoryNVS
Definition EFI.h:150
@ EfiMemoryMappedIOPortSpace
Definition EFI.h:161
@ EfiACPIReclaimMemory
Definition EFI.h:146
@ EfiLoaderCode
Definition EFI.h:110
@ EfiMemoryMappedIO
Definition EFI.h:156
@ EfiUnacceptedMemoryType
Definition EFI.h:176
@ EfiPalCode
Definition EFI.h:166
@ EfiRuntimeServicesCode
Definition EFI.h:128
@ EfiRuntimeServicesData
Definition EFI.h:134
struct _EfiMpServicesProtocol EfiMpServicesProtocol
struct EFI_GUID EFI_FINAL EFI_GUID
GUID type, something you can also find in CFKit.
EfiGraphicsOutputProtocolBltOperation
Definition EFI.h:377
@ EfiBltVideoToBltBuffer
Definition EFI.h:379
@ EfiBltBufferToVideo
Definition EFI.h:380
@ EfiGraphicsOutputBltOperationMax
Definition EFI.h:382
@ EfiBltVideoFill
Definition EFI.h:378
@ EfiBltVideoToVideo
Definition EFI.h:381
EfiAllocateType
Definition EFI.h:184
@ AllocateMaxAddress
Definition EFI.h:187
@ AllocateAddress
Definition EFI.h:191
@ AllocateAnyPages
Anything that satisfy the request.
Definition EFI.h:186
@ MaxAllocateType
Definition EFI.h:195
UInt64(EFI_API * EfiCalculateCrc32)(VoidPtr Data, UInt32 DataSize, UInt32 *CrcOut)
Definition EFI.h:229
UIntPtr EfiVirtualAddress
Definition EFI.h:66
UInt64 EfiImageUnload(EfiHandlePtr ImageHandle)
Definition EFI.h:279
UInt64(EFI_API * EfiEnableCursor)(EfiSimpleTextOutputProtocol *Self, Boolean Visible)
Definition EFI.h:505
EFI_STATUS(EFI_API * EFI_SIMPLE_NETWORK_START)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This)
Definition EFI.h:291
EfiStatusType EFI_API(* EfiMpServicesStartupAllAPS)(IN struct _EfiMpServicesProtocol *Self, IN EFI_AP_PROCEDURE Procedure, IN Boolean SingleThread, IN VoidPtr WaitEvent OPTIONAL, IN UInt32 TimeoutInMicroSeconds, IN Void *ProcedureArgument OPTIONAL, OUT UInt32 **FailedCpuList OPTIONAL)
Definition EFI.h:855
struct EfiFileProtocol * EfiFileProtocolPtr
UInt64(EFI_API * EfiLocateProtocol)(EFI_GUID *Protocol, VoidPtr Registration, VoidPtr *Interface)
Definition EFI.h:498
EfiStatusType(EFI_API * EfiInputReset)(IN EfiSimpleTextInputProtocol *This, IN Boolean ExtendedChk)
Definition EFI.h:588
#define MAX_MCAST_FILTER_CNT
Definition EFI.h:306
UInt64 EfiCursorType
Definition EFI.h:786
UInt64(EFI_API * EfiGraphicsOutputProtocolQueryMode)(EfiGraphicsOutputProtocol *Self, UInt32 ModeNumber, UInt32 *SizeOfInfo, EfiGraphicsOutputProtocolModeInformation **Info)
Definition EFI.h:394
@ kEFIBiosBootPath
Definition EFI.h:675
@ kEFIAcpiDevicePath
Definition EFI.h:672
@ kEFIEndOfPath
Definition EFI.h:676
@ kEFIMediaDevicePath
Definition EFI.h:674
@ kEFICount
Definition EFI.h:677
@ kEFIHwDevicePath
Definition EFI.h:671
@ kEFIMessaingDevicePath
Definition EFI.h:673
UInt64(EFI_API * EfiStartImage)(EfiHandlePtr Handle, VoidPtr ArgsSize, VoidPtr ArgsPtr)
Definition EFI.h:93
Char16 EfiChar16Type
Definition EFI.h:55
@ kPixelRedGreenBlueReserved8BitPerColor
Definition EFI.h:282
@ kPixelFormatMax
Definition EFI.h:286
@ kPixelBlueGreenRedReserved8BitPerColor
Definition EFI.h:283
@ kPixelBltOnly
Definition EFI.h:285
@ kPixelBitMask
Definition EFI.h:284
struct _EfiProcessorInformation EfiProcessorInformation
#define EFIAPI
Definition EFI.h:25
UInt64(EFI_API * EfiLoadImage)(Boolean BootPolicy, EfiHandlePtr ParentHandle, EfiFileDevicePathProtocol *DeviceFile, VoidPtr buffer, SizeT size, EfiHandlePtr *ppHandle)
Definition EFI.h:95
union _EfiExtendedProcessorInformation EfiExtendedProcessorInformation
UInt64(EFI_API * EfiTextAttrib)(struct EfiSimpleTextOutputProtocol *Self, const WideChar Attribute)
Definition EFI.h:76
struct EfiHandle * EfiHandlePtr
Core Handle Kind Self is like NT's Win32 HANDLE type.
EFI_STATUS(EFI_API * EFI_SIMPLE_NETWORK_STOP)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This)
Definition EFI.h:293
#define EFI_STATUS
Definition EFI.h:32
EfiStatusType EFI_API(* EfiMpServicesDisableThisAP)(IN struct _EfiMpServicesProtocol *Self, IN UInt32 ProcessorNumber, IN Boolean EnableAP, IN UInt32 *HealthFlag OPTIONAL)
Definition EFI.h:870
EfiStatusType EFI_API(* EfiMpServicesGetProcessorInfo)(IN struct _EfiMpServicesProtocol *Self, IN UInt32 *ProcessorNumber, OUT struct _EfiProcessorInformation *NumberOfEnabledProcessors)
Definition EFI.h:849
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_TRANSMIT)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN UInt32 HeaderSize, IN UInt32 BufferSize, IN Void *Buffer, IN EfiMacAddress *SrcAddr OPTIONAL, IN EfiMacAddress *DestAddr OPTIONAL, IN UInt16 *Protocol OPTIONAL)
Definition EFI.h:330
#define IN
Definition EFI.h:28
UInt64(EFI_API * EfiExitBootServices)(VoidPtr ImageHandle, UInt32 MapKey)
Definition EFI.h:463
UInt64(EFI_API * EfiGraphicsOutputProtocolSetMode)(EfiGraphicsOutputProtocol *Self, UInt32 ModeNumber)
Definition EFI.h:398
UInt64(EFI_API * EfiFreePool)(VoidPtr Buffer)
Definition EFI.h:227
UInt64(EFI_API * EfiHandleProtocol)(EfiHandlePtr Handle, EFI_GUID *Guid, VoidPtr *Device)
Definition EFI.h:88
UInt64(EFI_API * EfiAllocatePages)(EfiAllocateType AllocType, EfiMemoryType MemType, UInt32 Count, EfiPhysicalAddress *Memory)
Definition EFI.h:465
void EFI_API(* EFI_AP_PROCEDURE)(IN VoidPtr ProcedureArgument)
Definition EFI.h:853
UInt64(EFI_API * EfiTextString)(struct EfiSimpleTextOutputProtocol *Self, const WideChar *OutputString)
Definition EFI.h:73
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_RECEIVE)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, OUT UInt32 *HeaderSize OPTIONAL, IN OUT UInt32 *BufferSize, OUT Void *Buffer, OUT EfiMacAddress *SrcAddr OPTIONAL, OUT EfiMacAddress *DestAddr OPTIONAL, OUT UInt16 *Protocol OPTIONAL)
Definition EFI.h:337
#define EFI_API
Definition EFI.h:21
EfiStatusType EFI_API(* EfiMpServicesGetNumberOfProcessors)(IN struct _EfiMpServicesProtocol *Self, OUT UInt32 *NumberOfProcessors, OUT UInt32 *NumberOfEnabledProcessors)
Definition EFI.h:845
#define OUT
Definition EFI.h:29
UInt64(EFI_API * EfiAllocatePool)(EfiMemoryType PoolType, UInt32 Size, VoidPtr *Buffer)
Definition EFI.h:225
EFI_STATUS(EFI_API * EFI_SIMPLE_NETWORK_INITIALIZE)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN UInt32 ExtraRxBufferSize OPTIONAL, IN UInt32 ExtraTxBufferSize OPTIONAL)
Definition EFI.h:295
#define OPTIONAL
Definition EFI.h:30
Device type.
Definition Device.h:14
UPS inline definitions.
Definition Device.h:12
char Char
Definition Config.h:51
void Void
Definition Config.h:87
__SIZE_TYPE__ Size
Definition Config.h:59
__UINT16_TYPE__ UInt16
Definition Config.h:40
__SIZE_TYPE__ SizeT
Definition Config.h:60
__UINT8_TYPE__ UInt8
Definition Config.h:55
__UINT32_TYPE__ UInt32
Definition Config.h:44
void * VoidPtr
Definition Config.h:33
char16_t Char16
Definition Config.h:92
__INT16_TYPE__ Int16
Definition Config.h:42
bool Boolean
Definition Config.h:49
__UINTPTR_TYPE__ UIntPtr
Definition Config.h:62
@ Count
Definition DMA.h:21
__UINT64_TYPE__ UInt64
Definition Config.h:48
wchar_t WideChar
Definition Config.h:77
UInt32 Core
Definition EFI.h:830
UInt32 Thread
Definition EFI.h:831
UInt32 Package
Definition EFI.h:829
EfiMpServicesStartupThisAP StartupThisAP
Definition EFI.h:882
EfiMpServicesGetNumberOfProcessors GetNumberOfProcessors
Definition EFI.h:879
EfiMpServicesDisableThisAP EnableDisableAP
Definition EFI.h:884
EfiMpServicesWhoAmI WhoAmI
Definition EFI.h:885
EfiMpServicesGetProcessorInfo GetProcessorInfo
Definition EFI.h:880
EfiMpServicesStartupAllAPS StartupAllAPs
Definition EFI.h:881
EfiMpServicesSwitchBSP SwitchBSP
Definition EFI.h:883
GUID type, something you can also find in CFKit.
Definition EFI.h:476
UInt64 FileSize
File size.
Definition EFI.h:809
UInt32 Data1
Definition EFI.h:477
UInt16 Data2
Definition EFI.h:478
UInt8 Data4[8]
Definition EFI.h:480
UInt64 Attribute
Attributes.
Definition EFI.h:819
EfiTime EditTime
Edit time.
Definition EFI.h:817
UInt16 Data3
Definition EFI.h:479
UInt64 Size
Structure size.
Definition EFI.h:807
UInt64 PhysicalSize
Physical size on disk.
Definition EFI.h:811
WideChar FileName[1]
VLA file name.
Definition EFI.h:821
EfiTime LastAccessTime
Last access time.
Definition EFI.h:815
EfiTime CreateTime
Create time.
Definition EFI.h:813
EfiMacAddress CurrentAddress
Definition EFI.h:320
EfiMacAddress MCastFilter[MAX_MCAST_FILTER_CNT]
Definition EFI.h:319
EfiMacAddress PermanentAddress
Definition EFI.h:322
UInt32 MediaHeaderSize
Definition EFI.h:311
UInt32 ReceiveFilterMask
Definition EFI.h:315
UInt8 IfType
Definition EFI.h:323
UInt32 State
Definition EFI.h:309
EfiMacAddress BroadcastAddress
Definition EFI.h:321
BOOL MacAddressChangeable
Definition EFI.h:324
UInt32 ReceiveFilterSetting
Definition EFI.h:316
UInt32 NvRamAccessSize
Definition EFI.h:314
UInt32 NvRamSize
Definition EFI.h:313
UInt32 MaxPacketSize
Definition EFI.h:312
BOOL MultipleTxSupported
Definition EFI.h:325
UInt32 HwAddressSize
Definition EFI.h:310
UInt32 MaxMCastFilterCount
Definition EFI.h:317
BOOL MediaPresent
Definition EFI.h:327
UInt32 MCastFilterCount
Definition EFI.h:318
BOOL MediaPresentSupported
Definition EFI.h:326
VoidPtr WaitForPacket
Definition EFI.h:359
EFI_SIMPLE_NETWORK_TRANSMIT Transmit
Definition EFI.h:357
VoidPtr MCastIpToMac
Definition EFI.h:354
EFI_SIMPLE_NETWORK_INITIALIZE Initialize
Definition EFI.h:348
VoidPtr ReceiveFilters
Definition EFI.h:351
EFI_SIMPLE_NETWORK_START Start
Definition EFI.h:346
EFI_SIMPLE_NETWORK_SHUTDOWN Shutdown
Definition EFI.h:350
EFI_SIMPLE_NETWORK_MODE * Mode
Definition EFI.h:360
EFI_SIMPLE_NETWORK_RESET Reset
Definition EFI.h:349
VoidPtr NvData
Definition EFI.h:355
EFI_SIMPLE_NETWORK_RECEIVE Receive
Definition EFI.h:358
UInt64 Revision
Definition EFI.h:345
VoidPtr StationAddress
Definition EFI.h:352
VoidPtr Statistics
Definition EFI.h:353
EFI_SIMPLE_NETWORK_STOP Stop
Definition EFI.h:347
VoidPtr GetStatus
Definition EFI.h:356
UInt32 ReservedMask
Definition EFI.h:367
UInt32 GreenMask
Definition EFI.h:365
UInt32 RedMask
Definition EFI.h:364
UInt32 BlueMask
Definition EFI.h:366
UInt64 WatchdogCode
Definition EFI.h:543
VoidPtr OpenProtocolInformation
Definition EFI.h:549
VoidPtr RegisterProtocolNotify
Definition EFI.h:532
EfiAllocatePool AllocatePool
Definition EFI.h:519
EfiLocateDevicePath LocateDevicePath
Definition EFI.h:534
EfiCalculateCrc32 CalculateCrc32
Definition EFI.h:555
VoidPtr CloseEvent
Definition EFI.h:525
VoidPtr UnloadImage
Definition EFI.h:539
VoidPtr CloseProtocol
Definition EFI.h:548
EfiLoadImage LoadImage
Definition EFI.h:536
VoidPtr GetNextMonotonicCount
Definition EFI.h:541
VoidPtr LocateHandle
Definition EFI.h:533
VoidPtr UninstallProtocolInterface
Definition EFI.h:529
EfiExitBootServices ExitBootServices
Definition EFI.h:540
EfiFreePool FreePool
Definition EFI.h:520
VoidPtr ReinstallProtocolInterface
Definition EFI.h:528
VoidPtr InstallMultipleProtocolInterfaces
Definition EFI.h:553
VoidPtr CreateEventEx
Definition EFI.h:558
VoidPtr Stall
Definition EFI.h:542
EfiAllocatePages AllocatePages
Definition EFI.h:516
EfiSetMem SetMem
Definition EFI.h:557
VoidPtr InstallConfigurationTable
Definition EFI.h:535
VoidPtr RestoreTPL
Definition EFI.h:515
VoidPtr SignalEvent
Definition EFI.h:524
UInt64 UInt32 EfiCharType * Data
Definition EFI.h:544
VoidPtr UninstallMultipleProtocolInterfaces
Definition EFI.h:554
VoidPtr RaiseTPL
Definition EFI.h:514
VoidPtr InstallProtocolInterface
Definition EFI.h:527
EfiCopyMem CopyMem
Definition EFI.h:556
VoidPtr DriveonnectController
Definition EFI.h:546
VoidPtr Exit
Definition EFI.h:538
EfiTableHeader SystemTable
Definition EFI.h:513
VoidPtr Reserved
Definition EFI.h:531
EfiLocateProtocol LocateProtocol
Definition EFI.h:552
EfiStartImage StartImage
Definition EFI.h:537
EfiGetMemoryMap GetMemoryMap
Definition EFI.h:518
VoidPtr CreateEvent
Definition EFI.h:521
EfiOpenProtocol OpenProtocol
Definition EFI.h:547
VoidPtr SetTimer
Definition EFI.h:522
EfiHandleProtocol HandleProtocol
Definition EFI.h:530
EfiFreePages FreePages
Definition EFI.h:517
VoidPtr ProtocolsPerHandle
Definition EFI.h:550
VoidPtr ConnectController
Definition EFI.h:545
VoidPtr CheckEvent
Definition EFI.h:526
VoidPtr LocateHandleBuffer
Definition EFI.h:551
UInt64 UInt32 DataSize
Definition EFI.h:543
VoidPtr WaitForEvent
Definition EFI.h:523
UInt8 Length[2]
Definition EFI.h:451
UInt8 Kind
Definition EFI.h:449
UInt8 SubType
Definition EFI.h:450
WideChar Path[kPathLen]
Definition EFI.h:460
EfiDevicePathProtocol Proto
Definition EFI.h:455
struct EFI_GUID UInt32 void struct EFI_GUID UInt32 void * EfiStatusType(EFI_API *Flush)(EfiFileProtocol *)
EfiStatusType(EFI_API *Open)(struct EfiFileProtocol *Self
struct EFI_GUID UInt32 void * EfiStatusType(EFI_API *SetInfo)(struct EfiFileProtocol *
struct EfiFileProtocol EfiCharType UInt64 OpenMode
Definition EFI.h:755
EfiStatusType(EFI_API *SetPosition)(EfiFileProtocol *Self
EfiFileProtocol EfiCharType UInt64 Mode
Definition EFI.h:776
struct EfiFileProtocol EfiCharType * CharType
Definition EFI.h:755
EfiStatusType(EFI_API *OpenEx)(EfiFileProtocol *Self
EfiFileProtocol EfiCharType UInt64 UInt64 struct EfiIOToken * Token
Definition EFI.h:777
EfiStatusType(EFI_API *GetPosition)(EfiFileProtocol *Self
EfiStatusType(EFI_API *Delete)(struct EfiFileProtocol *Self)
UInt64 Revision
Definition EFI.h:752
struct EfiFileProtocol ** Out
Definition EFI.h:754
EfiFileProtocol EfiCharType * Path
Definition EFI.h:776
EfiStatusType(EFI_API *Close)(struct EfiFileProtocol *Self)
EfiStatusType(EFI_API *ReadEx)(EfiFileProtocol *Self
UInt64 * BufSize
Definition EFI.h:761
EfiStatusType(EFI_API *FlushEx)(EfiFileProtocol *Self
struct EfiFileProtocol EfiCharType UInt64 UInt64 Attrib
Definition EFI.h:755
EfiFileProtocol ** OutHandle
Definition EFI.h:775
EfiStatusType(EFI_API *Write)(struct EfiFileProtocol *Self
EfiStatusType(EFI_API *GetInfo)(struct EfiFileProtocol *
UInt64 * Position
Definition EFI.h:765
UInt64 VoidPtr BufOut
Definition EFI.h:761
EfiStatusType(EFI_API *WriteEx)(EfiFileProtocol *Self
UInt8 Red
Definition EFI.h:373
UInt8 Blue
Definition EFI.h:371
UInt8 Reserved
Definition EFI.h:374
UInt8 Green
Definition EFI.h:372
EfiGraphicsOutputProtocolBlt Blt
Definition EFI.h:418
EfiGraphicsOutputProtocolSetMode SetMode
Definition EFI.h:417
EfiGraphicsOutputProtocolMode * Mode
Definition EFI.h:419
EfiGraphicsOutputProtocolQueryMode QueryMode
Definition EFI.h:416
UInt32 SizeOfInfo
Definition EFI.h:410
UIntPtr FrameBufferBase
Definition EFI.h:411
UInt32 MaxMode
Definition EFI.h:407
UInt32 FrameBufferSize
Definition EFI.h:412
UInt32 Mode
Definition EFI.h:408
EfiGraphicsOutputProtocolModeInformation * Info
Definition EFI.h:409
Core Handle Kind Self is like NT's Win32 HANDLE type.
Definition EFI.h:59
Void * Buffer
Definition EFI.h:748
UInt64 Status
Definition EFI.h:728
UInt64 Event
Definition EFI.h:723
UInt32 BufferSize
Definition EFI.h:740
UInt8 Addr[4]
Definition EFI.h:654
UInt8 Addr[16]
Definition EFI.h:661
EfiLoadFile LoadFile
Definition EFI.h:445
EfiDevicePathProtocol * FilePath
Definition EFI.h:429
UInt32 LoadOptionsSize
Definition EFI.h:433
Void * ImageBase
Definition EFI.h:437
EfiMemoryType ImageCodeType
Definition EFI.h:439
EfiImageUnload Unload
Definition EFI.h:441
EfiHandlePtr DeviceHandle
Definition EFI.h:428
UInt32 Revision
Definition EFI.h:423
EfiMemoryType ImageDataType
Definition EFI.h:440
EfiHandlePtr ParentHandle
Definition EFI.h:424
EfiSystemTable * SystemTable
Definition EFI.h:425
Void * LoadOptions
Definition EFI.h:434
Void * Reserved
Definition EFI.h:430
UInt64 ImageSize
Definition EFI.h:438
UInt64 Attribute
Definition EFI.h:222
EfiPhysicalAddress PhysicalStart
Physical address of the first byte in the memory region. PhysicalStart.
Definition EFI.h:203
UInt64 NumberOfPages
Definition EFI.h:216
EfiVirtualAddress VirtualStart
Definition EFI.h:209
UInt32 Kind
Kind of the memory region.
Definition EFI.h:200
EFI_GUID UInt32 UInt32 * DataSize
Definition EFI.h:613
EfiTableHeader SystemTable
Definition EFI.h:610
VoidPtr QueryCapsuleCapabilites
Definition EFI.h:620
VoidPtr GetTime
Definition EFI.h:611
VoidPtr SetTime
Definition EFI.h:611
VoidPtr ResetSystem
Definition EFI.h:618
VoidPtr UpdateCapsule
Definition EFI.h:619
VoidPtr ConvertPointer
Definition EFI.h:611
VoidPtr SetVirtualAddressMap
Definition EFI.h:611
VoidPtr GetNextVariable
Definition EFI.h:614
UInt64(EFI_API *SetVariable)(const WideChar *Name
VoidPtr SetWakeupTime
Definition EFI.h:611
EFI_GUID UInt32 UInt32 VoidPtr Data
Definition EFI.h:613
VoidPtr QueryVariableInfo
Definition EFI.h:621
VoidPtr GetNextHighMonotonicCount
Definition EFI.h:617
VoidPtr GetWakeupTime
Definition EFI.h:611
EFI_GUID UInt32 * Attributes
Definition EFI.h:612
EFI_GUID VendorGUID
Definition EFI.h:612
UInt64 Revision
Definition EFI.h:605
EfiOpenVolume OpenVolume
Definition EFI.h:606
EfiInputReset Reset
Definition EFI.h:595
EfiWaitForEvent WaitForKey
Definition EFI.h:597
EfiInputReadKey ReadKeyStroke
Definition EFI.h:596
PrintF like protocol.
Definition EFI.h:567
EfiTextString OutputString
Definition EFI.h:569
VoidPtr Mode
Definition EFI.h:577
EfiTextAttrib SetAttribute
Definition EFI.h:573
VoidPtr Reset
Definition EFI.h:568
EfiEnableCursor EnableCursor
Definition EFI.h:576
VoidPtr SetMode
Definition EFI.h:572
VoidPtr TestString
Definition EFI.h:570
VoidPtr QueryMode
Definition EFI.h:571
VoidPtr SetCursorPosition
Definition EFI.h:575
EfiTextClear ClearScreen
Definition EFI.h:574
The Structure that they give you when booting.
Definition EFI.h:627
EFI_GUID VendorGUID
Definition EFI.h:642
EfiHandlePtr ConsoleInHandle
Definition EFI.h:631
EfiRuntimeServices * RuntimeServices
Definition EFI.h:637
VoidPtr VendorTable
Definition EFI.h:643
UInt64 NumberOfTableEntries
Definition EFI.h:639
struct EfiSystemTable::@055310371001216205017347353353135265114230242055 * ConfigurationTable
The configuration table (contains the RSD PTR entry.).
WideChar * FirmwareVendor
Definition EFI.h:629
EfiSimpleTextOutputProtocol * ConOut
Definition EFI.h:634
EfiHandlePtr StandardErrorHandle
Definition EFI.h:635
EfiHandlePtr ConsoleOutHandle
Definition EFI.h:633
EfiBootServices * BootServices
Definition EFI.h:638
EfiSimpleTextInputProtocol * ConIn
Definition EFI.h:632
VoidPtr StdErr
Definition EFI.h:636
EfiTableHeader SystemHeader
Definition EFI.h:628
UInt32 FirmwareRevision
Definition EFI.h:630
UInt8 Hour
Definition EFI.h:792
UInt8 Second
Definition EFI.h:794
UInt8 Month
Definition EFI.h:790
Int16 TimeZone
Definition EFI.h:797
UInt8 Minute
Definition EFI.h:793
UInt8 Daylight
Definition EFI.h:798
UInt8 Pad2
Definition EFI.h:799
UInt8 Pad1
Definition EFI.h:795
UInt16 Year
Definition EFI.h:789
UInt32 Nanosecond
Definition EFI.h:796
UInt8 Day
Definition EFI.h:791