1 /******************************************************************************
3 * Name: acefiex.h - Extra OS specific defines, etc. for EFI
5 *****************************************************************************/
8 * Copyright (C) 2000 - 2016, Intel Corp.
11 * Redistribution and use in source and binary forms, with or without
12 * modification, are permitted provided that the following conditions
14 * 1. Redistributions of source code must retain the above copyright
15 * notice, this list of conditions, and the following disclaimer,
16 * without modification.
17 * 2. Redistributions in binary form must reproduce at minimum a disclaimer
18 * substantially similar to the "NO WARRANTY" disclaimer below
19 * ("Disclaimer") and any redistribution must be conditioned upon
20 * including a substantially similar Disclaimer requirement for further
21 * binary redistribution.
22 * 3. Neither the names of the above-listed copyright holders nor the names
23 * of any contributors may be used to endorse or promote products derived
24 * from this software without specific prior written permission.
26 * Alternatively, this software may be distributed under the terms of the
27 * GNU General Public License ("GPL") version 2 as published by the Free
28 * Software Foundation.
31 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
32 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
34 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
35 * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
36 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
37 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
38 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
39 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
40 * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
41 * POSSIBILITY OF SUCH DAMAGES.
48 #define EFI_ERROR(a) (((INTN) a) < 0)
50 #define EFI_LOAD_ERROR EFIERR(1)
51 #define EFI_INVALID_PARAMETER EFIERR(2)
52 #define EFI_UNSUPPORTED EFIERR(3)
53 #define EFI_BAD_BUFFER_SIZE EFIERR(4)
54 #define EFI_BUFFER_TOO_SMALL EFIERR(5)
55 #define EFI_NOT_READY EFIERR(6)
56 #define EFI_DEVICE_ERROR EFIERR(7)
57 #define EFI_WRITE_PROTECTED EFIERR(8)
58 #define EFI_OUT_OF_RESOURCES EFIERR(9)
59 #define EFI_VOLUME_CORRUPTED EFIERR(10)
60 #define EFI_VOLUME_FULL EFIERR(11)
61 #define EFI_NO_MEDIA EFIERR(12)
62 #define EFI_MEDIA_CHANGED EFIERR(13)
63 #define EFI_NOT_FOUND EFIERR(14)
64 #define EFI_ACCESS_DENIED EFIERR(15)
65 #define EFI_NO_RESPONSE EFIERR(16)
66 #define EFI_NO_MAPPING EFIERR(17)
67 #define EFI_TIMEOUT EFIERR(18)
68 #define EFI_NOT_STARTED EFIERR(19)
69 #define EFI_ALREADY_STARTED EFIERR(20)
70 #define EFI_ABORTED EFIERR(21)
71 #define EFI_PROTOCOL_ERROR EFIERR(24)
74 typedef UINTN EFI_STATUS;
75 typedef VOID *EFI_HANDLE;
76 typedef VOID *EFI_EVENT;
85 typedef struct _EFI_DEVICE_PATH {
91 typedef UINT64 EFI_PHYSICAL_ADDRESS;
92 typedef UINT64 EFI_VIRTUAL_ADDRESS;
102 EfiReservedMemoryType,
107 EfiRuntimeServicesCode,
108 EfiRuntimeServicesData,
109 EfiConventionalMemory,
111 EfiACPIReclaimMemory,
114 EfiMemoryMappedIOPortSpace,
119 /* possible caching types for the memory range */
120 #define EFI_MEMORY_UC 0x0000000000000001
121 #define EFI_MEMORY_WC 0x0000000000000002
122 #define EFI_MEMORY_WT 0x0000000000000004
123 #define EFI_MEMORY_WB 0x0000000000000008
124 #define EFI_MEMORY_UCE 0x0000000000000010
126 /* physical memory protection on range */
127 #define EFI_MEMORY_WP 0x0000000000001000
128 #define EFI_MEMORY_RP 0x0000000000002000
129 #define EFI_MEMORY_XP 0x0000000000004000
131 /* range requires a runtime mapping */
132 #define EFI_MEMORY_RUNTIME 0x8000000000000000
134 #define EFI_MEMORY_DESCRIPTOR_VERSION 1
138 EFI_PHYSICAL_ADDRESS PhysicalStart;
139 EFI_VIRTUAL_ADDRESS VirtualStart;
140 UINT64 NumberOfPages;
142 } EFI_MEMORY_DESCRIPTOR;
144 typedef struct _EFI_TABLE_HEARDER {
154 (EFIAPI *EFI_UNKNOWN_INTERFACE) (
159 * Text output protocol
161 #define SIMPLE_TEXT_OUTPUT_PROTOCOL \
162 { 0x387477c2, 0x69c7, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} }
166 (EFIAPI *EFI_TEXT_RESET) (
167 struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This,
168 BOOLEAN ExtendedVerification);
172 (EFIAPI *EFI_TEXT_OUTPUT_STRING) (
173 struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This,
178 (EFIAPI *EFI_TEXT_TEST_STRING) (
179 struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This,
184 (EFIAPI *EFI_TEXT_QUERY_MODE) (
185 struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This,
192 (EFIAPI *EFI_TEXT_SET_MODE) (
193 struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This,
198 (EFIAPI *EFI_TEXT_SET_ATTRIBUTE) (
199 struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This,
204 (EFIAPI *EFI_TEXT_CLEAR_SCREEN) (
205 struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This);
209 (EFIAPI *EFI_TEXT_SET_CURSOR_POSITION) (
210 struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This,
216 (EFIAPI *EFI_TEXT_ENABLE_CURSOR) (
217 struct _SIMPLE_TEXT_OUTPUT_INTERFACE *This,
226 BOOLEAN CursorVisible;
227 } SIMPLE_TEXT_OUTPUT_MODE;
229 typedef struct _SIMPLE_TEXT_OUTPUT_INTERFACE {
230 EFI_TEXT_RESET Reset;
232 EFI_TEXT_OUTPUT_STRING OutputString;
233 EFI_TEXT_TEST_STRING TestString;
235 EFI_TEXT_QUERY_MODE QueryMode;
236 EFI_TEXT_SET_MODE SetMode;
237 EFI_TEXT_SET_ATTRIBUTE SetAttribute;
239 EFI_TEXT_CLEAR_SCREEN ClearScreen;
240 EFI_TEXT_SET_CURSOR_POSITION SetCursorPosition;
241 EFI_TEXT_ENABLE_CURSOR EnableCursor;
243 SIMPLE_TEXT_OUTPUT_MODE *Mode;
244 } SIMPLE_TEXT_OUTPUT_INTERFACE;
247 * Text input protocol
249 #define SIMPLE_TEXT_INPUT_PROTOCOL \
250 { 0x387477c1, 0x69c7, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} }
258 * Baseline unicode control chars
260 #define CHAR_NULL 0x0000
261 #define CHAR_BACKSPACE 0x0008
262 #define CHAR_TAB 0x0009
263 #define CHAR_LINEFEED 0x000A
264 #define CHAR_CARRIAGE_RETURN 0x000D
268 (EFIAPI *EFI_INPUT_RESET) (
269 struct _SIMPLE_INPUT_INTERFACE *This,
270 BOOLEAN ExtendedVerification);
274 (EFIAPI *EFI_INPUT_READ_KEY) (
275 struct _SIMPLE_INPUT_INTERFACE *This,
278 typedef struct _SIMPLE_INPUT_INTERFACE {
279 EFI_INPUT_RESET Reset;
280 EFI_INPUT_READ_KEY ReadKeyStroke;
281 EFI_EVENT WaitForKey;
282 } SIMPLE_INPUT_INTERFACE;
286 * Simple file system protocol
288 #define SIMPLE_FILE_SYSTEM_PROTOCOL \
289 { 0x964e5b22, 0x6459, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} }
293 (EFIAPI *EFI_VOLUME_OPEN) (
294 struct _EFI_FILE_IO_INTERFACE *This,
295 struct _EFI_FILE_HANDLE **Root);
297 #define EFI_FILE_IO_INTERFACE_REVISION 0x00010000
299 typedef struct _EFI_FILE_IO_INTERFACE {
301 EFI_VOLUME_OPEN OpenVolume;
302 } EFI_FILE_IO_INTERFACE;
306 (EFIAPI *EFI_FILE_OPEN) (
307 struct _EFI_FILE_HANDLE *File,
308 struct _EFI_FILE_HANDLE **NewHandle,
313 /* Values for OpenMode used above */
315 #define EFI_FILE_MODE_READ 0x0000000000000001
316 #define EFI_FILE_MODE_WRITE 0x0000000000000002
317 #define EFI_FILE_MODE_CREATE 0x8000000000000000
319 /* Values for Attribute used above */
321 #define EFI_FILE_READ_ONLY 0x0000000000000001
322 #define EFI_FILE_HIDDEN 0x0000000000000002
323 #define EFI_FILE_SYSTEM 0x0000000000000004
324 #define EFI_FILE_RESERVIED 0x0000000000000008
325 #define EFI_FILE_DIRECTORY 0x0000000000000010
326 #define EFI_FILE_ARCHIVE 0x0000000000000020
327 #define EFI_FILE_VALID_ATTR 0x0000000000000037
331 (EFIAPI *EFI_FILE_CLOSE) (
332 struct _EFI_FILE_HANDLE *File);
336 (EFIAPI *EFI_FILE_DELETE) (
337 struct _EFI_FILE_HANDLE *File);
341 (EFIAPI *EFI_FILE_READ) (
342 struct _EFI_FILE_HANDLE *File,
348 (EFIAPI *EFI_FILE_WRITE) (
349 struct _EFI_FILE_HANDLE *File,
355 (EFIAPI *EFI_FILE_SET_POSITION) (
356 struct _EFI_FILE_HANDLE *File,
361 (EFIAPI *EFI_FILE_GET_POSITION) (
362 struct _EFI_FILE_HANDLE *File,
367 (EFIAPI *EFI_FILE_GET_INFO) (
368 struct _EFI_FILE_HANDLE *File,
369 EFI_GUID *InformationType,
375 (EFIAPI *EFI_FILE_SET_INFO) (
376 struct _EFI_FILE_HANDLE *File,
377 EFI_GUID *InformationType,
383 (EFIAPI *EFI_FILE_FLUSH) (
384 struct _EFI_FILE_HANDLE *File);
387 #define EFI_FILE_HANDLE_REVISION 0x00010000
389 typedef struct _EFI_FILE_HANDLE {
392 EFI_FILE_CLOSE Close;
393 EFI_FILE_DELETE Delete;
395 EFI_FILE_WRITE Write;
396 EFI_FILE_GET_POSITION GetPosition;
397 EFI_FILE_SET_POSITION SetPosition;
398 EFI_FILE_GET_INFO GetInfo;
399 EFI_FILE_SET_INFO SetInfo;
400 EFI_FILE_FLUSH Flush;
401 } EFI_FILE, *EFI_FILE_HANDLE;
405 * Loaded image protocol
407 #define LOADED_IMAGE_PROTOCOL \
408 { 0x5B1B31A1, 0x9562, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B} }
412 (EFIAPI *EFI_IMAGE_ENTRY_POINT) (
413 EFI_HANDLE ImageHandle,
414 struct _EFI_SYSTEM_TABLE *SystemTable);
418 (EFIAPI *EFI_IMAGE_LOAD) (
420 EFI_HANDLE ParentImageHandle,
421 EFI_DEVICE_PATH *FilePath,
424 EFI_HANDLE *ImageHandle);
428 (EFIAPI *EFI_IMAGE_START) (
429 EFI_HANDLE ImageHandle,
436 EFI_HANDLE ImageHandle,
437 EFI_STATUS ExitStatus,
443 (EFIAPI *EFI_IMAGE_UNLOAD) (
444 EFI_HANDLE ImageHandle);
447 #define EFI_IMAGE_INFORMATION_REVISION 0x1000
450 EFI_HANDLE ParentHandle;
451 struct _EFI_SYSTEM_TABLE *SystemTable;
452 EFI_HANDLE DeviceHandle;
453 EFI_DEVICE_PATH *FilePath;
455 UINT32 LoadOptionsSize;
459 EFI_MEMORY_TYPE ImageCodeType;
460 EFI_MEMORY_TYPE ImageDataType;
461 EFI_IMAGE_UNLOAD Unload;
471 (EFIAPI *EFI_ALLOCATE_PAGES) (
472 EFI_ALLOCATE_TYPE Type,
473 EFI_MEMORY_TYPE MemoryType,
475 EFI_PHYSICAL_ADDRESS *Memory);
479 (EFIAPI *EFI_FREE_PAGES) (
480 EFI_PHYSICAL_ADDRESS Memory,
485 (EFIAPI *EFI_GET_MEMORY_MAP) (
486 UINTN *MemoryMapSize,
487 EFI_MEMORY_DESCRIPTOR *MemoryMap,
489 UINTN *DescriptorSize,
490 UINT32 *DescriptorVersion);
492 #define NextMemoryDescriptor(Ptr,Size) ((EFI_MEMORY_DESCRIPTOR *) (((UINT8 *) Ptr) + Size))
496 (EFIAPI *EFI_ALLOCATE_POOL) (
497 EFI_MEMORY_TYPE PoolType,
503 (EFIAPI *EFI_FREE_POOL) (
508 * Protocol handler functions
511 EFI_NATIVE_INTERFACE,
513 } EFI_INTERFACE_TYPE;
519 } EFI_LOCATE_SEARCH_TYPE;
523 (EFIAPI *EFI_INSTALL_PROTOCOL_INTERFACE) (
526 EFI_INTERFACE_TYPE InterfaceType,
531 (EFIAPI *EFI_REINSTALL_PROTOCOL_INTERFACE) (
539 (EFIAPI *EFI_UNINSTALL_PROTOCOL_INTERFACE) (
546 (EFIAPI *EFI_HANDLE_PROTOCOL) (
553 (EFIAPI *EFI_REGISTER_PROTOCOL_NOTIFY) (
556 VOID **Registration);
560 (EFIAPI *EFI_LOCATE_HANDLE) (
561 EFI_LOCATE_SEARCH_TYPE SearchType,
569 (EFIAPI *EFI_LOCATE_DEVICE_PATH) (
571 EFI_DEVICE_PATH **DevicePath,
576 (EFIAPI *EFI_INSTALL_CONFIGURATION_TABLE) (
580 #define EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL 0x00000001
581 #define EFI_OPEN_PROTOCOL_GET_PROTOCOL 0x00000002
582 #define EFI_OPEN_PROTOCOL_TEST_PROTOCOL 0x00000004
583 #define EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER 0x00000008
584 #define EFI_OPEN_PROTOCOL_BY_DRIVER 0x00000010
585 #define EFI_OPEN_PROTOCOL_EXCLUSIVE 0x00000020
589 (EFIAPI *EFI_OPEN_PROTOCOL) (
593 EFI_HANDLE AgentHandle,
594 EFI_HANDLE ControllerHandle,
599 (EFIAPI *EFI_CLOSE_PROTOCOL) (
602 EFI_HANDLE AgentHandle,
603 EFI_HANDLE ControllerHandle);
606 EFI_HANDLE AgentHandle;
607 EFI_HANDLE ControllerHandle;
610 } EFI_OPEN_PROTOCOL_INFORMATION_ENTRY;
614 (EFIAPI *EFI_OPEN_PROTOCOL_INFORMATION) (
617 EFI_OPEN_PROTOCOL_INFORMATION_ENTRY **EntryBuffer,
622 (EFIAPI *EFI_PROTOCOLS_PER_HANDLE) (
624 EFI_GUID ***ProtocolBuffer,
625 UINTN *ProtocolBufferCount);
629 (EFIAPI *EFI_LOCATE_HANDLE_BUFFER) (
630 EFI_LOCATE_SEARCH_TYPE SearchType,
634 EFI_HANDLE **Buffer);
638 (EFIAPI *EFI_LOCATE_PROTOCOL) (
645 (EFIAPI *EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES) (
651 (EFIAPI *EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES) (
657 (EFIAPI *EFI_CALCULATE_CRC32) (
664 (EFIAPI *EFI_COPY_MEM) (
671 (EFIAPI *EFI_SET_MEM) (
677 * EFI Boot Services Table
679 #define EFI_BOOT_SERVICES_SIGNATURE 0x56524553544f4f42
680 #define EFI_BOOT_SERVICES_REVISION (EFI_SPECIFICATION_MAJOR_REVISION<<16) | (EFI_SPECIFICATION_MINOR_REVISION)
682 typedef struct _EFI_BOOT_SERVICES {
683 EFI_TABLE_HEADER Hdr;
686 EFI_RAISE_TPL RaiseTPL;
687 EFI_RESTORE_TPL RestoreTPL;
689 EFI_UNKNOWN_INTERFACE RaiseTPL;
690 EFI_UNKNOWN_INTERFACE RestoreTPL;
693 EFI_ALLOCATE_PAGES AllocatePages;
694 EFI_FREE_PAGES FreePages;
695 EFI_GET_MEMORY_MAP GetMemoryMap;
696 EFI_ALLOCATE_POOL AllocatePool;
697 EFI_FREE_POOL FreePool;
700 EFI_CREATE_EVENT CreateEvent;
701 EFI_SET_TIMER SetTimer;
702 EFI_WAIT_FOR_EVENT WaitForEvent;
703 EFI_SIGNAL_EVENT SignalEvent;
704 EFI_CLOSE_EVENT CloseEvent;
705 EFI_CHECK_EVENT CheckEvent;
707 EFI_UNKNOWN_INTERFACE CreateEvent;
708 EFI_UNKNOWN_INTERFACE SetTimer;
709 EFI_UNKNOWN_INTERFACE WaitForEvent;
710 EFI_UNKNOWN_INTERFACE SignalEvent;
711 EFI_UNKNOWN_INTERFACE CloseEvent;
712 EFI_UNKNOWN_INTERFACE CheckEvent;
715 EFI_INSTALL_PROTOCOL_INTERFACE InstallProtocolInterface;
716 EFI_REINSTALL_PROTOCOL_INTERFACE ReinstallProtocolInterface;
717 EFI_UNINSTALL_PROTOCOL_INTERFACE UninstallProtocolInterface;
718 EFI_HANDLE_PROTOCOL HandleProtocol;
719 EFI_HANDLE_PROTOCOL PCHandleProtocol;
720 EFI_REGISTER_PROTOCOL_NOTIFY RegisterProtocolNotify;
721 EFI_LOCATE_HANDLE LocateHandle;
722 EFI_LOCATE_DEVICE_PATH LocateDevicePath;
723 EFI_INSTALL_CONFIGURATION_TABLE InstallConfigurationTable;
725 EFI_IMAGE_LOAD LoadImage;
726 EFI_IMAGE_START StartImage;
728 EFI_IMAGE_UNLOAD UnloadImage;
731 EFI_EXIT_BOOT_SERVICES ExitBootServices;
732 EFI_GET_NEXT_MONOTONIC_COUNT GetNextMonotonicCount;
734 EFI_SET_WATCHDOG_TIMER SetWatchdogTimer;
736 EFI_UNKNOWN_INTERFACE ExitBootServices;
737 EFI_UNKNOWN_INTERFACE GetNextMonotonicCount;
738 EFI_UNKNOWN_INTERFACE Stall;
739 EFI_UNKNOWN_INTERFACE SetWatchdogTimer;
743 EFI_CONNECT_CONTROLLER ConnectController;
744 EFI_DISCONNECT_CONTROLLER DisconnectController;
746 EFI_UNKNOWN_INTERFACE ConnectController;
747 EFI_UNKNOWN_INTERFACE DisconnectController;
750 EFI_OPEN_PROTOCOL OpenProtocol;
751 EFI_CLOSE_PROTOCOL CloseProtocol;
752 EFI_OPEN_PROTOCOL_INFORMATION OpenProtocolInformation;
753 EFI_PROTOCOLS_PER_HANDLE ProtocolsPerHandle;
754 EFI_LOCATE_HANDLE_BUFFER LocateHandleBuffer;
755 EFI_LOCATE_PROTOCOL LocateProtocol;
756 EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES InstallMultipleProtocolInterfaces;
757 EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES UninstallMultipleProtocolInterfaces;
759 EFI_CALCULATE_CRC32 CalculateCrc32;
761 EFI_COPY_MEM CopyMem;
765 EFI_CREATE_EVENT_EX CreateEventEx;
767 EFI_UNKNOWN_INTERFACE CreateEventEx;
777 * EFI Configuration Table and GUID definitions
779 #define ACPI_TABLE_GUID \
780 { 0xeb9d2d30, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} }
781 #define ACPI_20_TABLE_GUID \
782 { 0x8868e871, 0xe4f1, 0x11d3, {0xbc, 0x22, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} }
784 typedef struct _EFI_CONFIGURATION_TABLE {
787 } EFI_CONFIGURATION_TABLE;
790 #define EFI_SYSTEM_TABLE_SIGNATURE 0x5453595320494249
791 #define EFI_SYSTEM_TABLE_REVISION (EFI_SPECIFICATION_MAJOR_REVISION<<16) | (EFI_SPECIFICATION_MINOR_REVISION)
793 typedef struct _EFI_SYSTEM_TABLE {
794 EFI_TABLE_HEADER Hdr;
796 CHAR16 *FirmwareVendor;
797 UINT32 FirmwareRevision;
799 EFI_HANDLE ConsoleInHandle;
800 SIMPLE_INPUT_INTERFACE *ConIn;
802 EFI_HANDLE ConsoleOutHandle;
803 SIMPLE_TEXT_OUTPUT_INTERFACE *ConOut;
805 EFI_HANDLE StandardErrorHandle;
806 SIMPLE_TEXT_OUTPUT_INTERFACE *StdErr;
809 EFI_RUNTIME_SERVICES *RuntimeServices;
811 EFI_HANDLE *RuntimeServices;
813 EFI_BOOT_SERVICES *BootServices;
815 UINTN NumberOfTableEntries;
816 EFI_CONFIGURATION_TABLE *ConfigurationTable;
821 /* GNU EFI definitions */
823 #if defined(_GNU_EFI)
826 * This is needed to hide platform specific code from ACPICA
835 * EFI specific prototypes
840 EFI_SYSTEM_TABLE *SystemTab);
850 extern EFI_GUID AcpiGbl_LoadedImageProtocol;
851 extern EFI_GUID AcpiGbl_TextInProtocol;
852 extern EFI_GUID AcpiGbl_TextOutProtocol;
853 extern EFI_GUID AcpiGbl_FileSystemProtocol;
855 #endif /* __ACEFIEX_H__ */