2 Include file for definitions in the Intel Platform Innovation Framework for EFI
3 Driver Execution Environment Core Interface Specification (DXE CIS) Version 0.91.
5 Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>
6 SPDX-License-Identifier: BSD-2-Clause-Patent
13 #include <Protocol/StatusCode.h>
16 Functions of this type are used with the Framework MP Services Protocol and
17 the SMM Services Table to execute a procedure on enabled APs. The context
18 the AP should use durng execution is specified by Buffer.
20 @param[in] Buffer The pointer to the procedure's argument.
25 (EFIAPI
*FRAMEWORK_EFI_AP_PROCEDURE
)(
30 /// The Framework EFI Runtime Services Table as an extension to the EFI 1.10 Runtime Services Table.
34 // Table header for the Framework EFI Runtime Services Table
42 EFI_GET_WAKEUP_TIME GetWakeupTime
;
43 EFI_SET_WAKEUP_TIME SetWakeupTime
;
45 // Virtual memory services
47 EFI_SET_VIRTUAL_ADDRESS_MAP SetVirtualAddressMap
;
48 EFI_CONVERT_POINTER ConvertPointer
;
52 EFI_GET_VARIABLE GetVariable
;
53 EFI_GET_NEXT_VARIABLE_NAME GetNextVariableName
;
54 EFI_SET_VARIABLE SetVariable
;
58 EFI_GET_NEXT_HIGH_MONO_COUNT GetNextHighMonotonicCount
;
59 EFI_RESET_SYSTEM ResetSystem
;
61 /// A Framework extension to the EFI 1.10 runtime table.
62 /// It was moved to a protocol to avoid conflict with UEFI 2.0.
64 EFI_REPORT_STATUS_CODE ReportStatusCode
;
65 } FRAMEWORK_EFI_RUNTIME_SERVICES
;
68 /// The Framework EFI Boot Services Table. Complies with the DxeCis specification.
72 /// The table header for the EFI Boot Services Table.
77 // Task Priority Services
79 EFI_RAISE_TPL RaiseTPL
;
80 EFI_RESTORE_TPL RestoreTPL
;
85 EFI_ALLOCATE_PAGES AllocatePages
;
86 EFI_FREE_PAGES FreePages
;
87 EFI_GET_MEMORY_MAP GetMemoryMap
;
88 EFI_ALLOCATE_POOL AllocatePool
;
89 EFI_FREE_POOL FreePool
;
92 // Event & Timer Services
94 EFI_CREATE_EVENT CreateEvent
;
95 EFI_SET_TIMER SetTimer
;
96 EFI_WAIT_FOR_EVENT WaitForEvent
;
97 EFI_SIGNAL_EVENT SignalEvent
;
98 EFI_CLOSE_EVENT CloseEvent
;
99 EFI_CHECK_EVENT CheckEvent
;
102 // Protocol Handler Services
104 EFI_INSTALL_PROTOCOL_INTERFACE InstallProtocolInterface
;
105 EFI_REINSTALL_PROTOCOL_INTERFACE ReinstallProtocolInterface
;
106 EFI_UNINSTALL_PROTOCOL_INTERFACE UninstallProtocolInterface
;
107 EFI_HANDLE_PROTOCOL HandleProtocol
;
108 EFI_HANDLE_PROTOCOL PcHandleProtocol
;
109 EFI_REGISTER_PROTOCOL_NOTIFY RegisterProtocolNotify
;
110 EFI_LOCATE_HANDLE LocateHandle
;
111 EFI_LOCATE_DEVICE_PATH LocateDevicePath
;
112 EFI_INSTALL_CONFIGURATION_TABLE InstallConfigurationTable
;
117 EFI_IMAGE_LOAD LoadImage
;
118 EFI_IMAGE_START StartImage
;
120 EFI_IMAGE_UNLOAD UnloadImage
;
121 EFI_EXIT_BOOT_SERVICES ExitBootServices
;
124 // Miscellaneous Services
126 EFI_GET_NEXT_MONOTONIC_COUNT GetNextMonotonicCount
;
128 EFI_SET_WATCHDOG_TIMER SetWatchdogTimer
;
131 // DriverSupport Services
133 EFI_CONNECT_CONTROLLER ConnectController
;
134 EFI_DISCONNECT_CONTROLLER DisconnectController
;
137 // Open and Close Protocol Services
139 EFI_OPEN_PROTOCOL OpenProtocol
;
140 EFI_CLOSE_PROTOCOL CloseProtocol
;
141 EFI_OPEN_PROTOCOL_INFORMATION OpenProtocolInformation
;
146 EFI_PROTOCOLS_PER_HANDLE ProtocolsPerHandle
;
147 EFI_LOCATE_HANDLE_BUFFER LocateHandleBuffer
;
148 EFI_LOCATE_PROTOCOL LocateProtocol
;
149 EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES InstallMultipleProtocolInterfaces
;
150 EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES UninstallMultipleProtocolInterfaces
;
153 // 32-bit CRC Services
155 EFI_CALCULATE_CRC32 CalculateCrc32
;
158 // Miscellaneous Services
160 EFI_COPY_MEM CopyMem
;
162 } FRAMEWORK_EFI_BOOT_SERVICES
;
164 #define EFI_EVENT_RUNTIME_CONTEXT 0x20000000
165 #define EFI_EVENT_NOTIFY_SIGNAL_ALL 0x00000400
166 #define EFI_EVENT_SIGNAL_READY_TO_BOOT 0x00000203
167 #define EFI_EVENT_SIGNAL_LEGACY_BOOT 0x00000204