ReactOS  r75400
acefiex.h
Go to the documentation of this file.
1 /******************************************************************************
2  *
3  * Name: acefiex.h - Extra OS specific defines, etc. for EFI
4  *
5  *****************************************************************************/
6 
7 /*
8  * Copyright (C) 2000 - 2017, Intel Corp.
9  * All rights reserved.
10  *
11  * Redistribution and use in source and binary forms, with or without
12  * modification, are permitted provided that the following conditions
13  * are met:
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.
25  *
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.
29  *
30  * NO WARRANTY
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.
42  */
43 
44 #ifndef __ACEFIEX_H__
45 #define __ACEFIEX_H__
46 
47 
48 #ifndef ACPI_USE_SYSTEM_CLIBRARY
49 
50 typedef signed char int8_t;
51 typedef short int int16_t;
52 typedef int int32_t;
53 typedef unsigned char uint8_t;
54 typedef unsigned short int uint16_t;
55 typedef unsigned int uint32_t;
58 
59 #endif /* ACPI_USE_SYSTEM_CLIBRARY */
60 
61 #define ACPI_EFI_ERROR(a) (((INTN) a) < 0)
62 #define ACPI_EFI_SUCCESS 0
63 #define ACPI_EFI_LOAD_ERROR ACPI_EFI_ERR(1)
64 #define ACPI_EFI_INVALID_PARAMETER ACPI_EFI_ERR(2)
65 #define ACPI_EFI_UNSUPPORTED ACPI_EFI_ERR(3)
66 #define ACPI_EFI_BAD_BUFFER_SIZE ACPI_EFI_ERR(4)
67 #define ACPI_EFI_BUFFER_TOO_SMALL ACPI_EFI_ERR(5)
68 #define ACPI_EFI_NOT_READY ACPI_EFI_ERR(6)
69 #define ACPI_EFI_DEVICE_ERROR ACPI_EFI_ERR(7)
70 #define ACPI_EFI_WRITE_PROTECTED ACPI_EFI_ERR(8)
71 #define ACPI_EFI_OUT_OF_RESOURCES ACPI_EFI_ERR(9)
72 #define ACPI_EFI_VOLUME_CORRUPTED ACPI_EFI_ERR(10)
73 #define ACPI_EFI_VOLUME_FULL ACPI_EFI_ERR(11)
74 #define ACPI_EFI_NO_MEDIA ACPI_EFI_ERR(12)
75 #define ACPI_EFI_MEDIA_CHANGED ACPI_EFI_ERR(13)
76 #define ACPI_EFI_NOT_FOUND ACPI_EFI_ERR(14)
77 #define ACPI_EFI_ACCESS_DENIED ACPI_EFI_ERR(15)
78 #define ACPI_EFI_NO_RESPONSE ACPI_EFI_ERR(16)
79 #define ACPI_EFI_NO_MAPPING ACPI_EFI_ERR(17)
80 #define ACPI_EFI_TIMEOUT ACPI_EFI_ERR(18)
81 #define ACPI_EFI_NOT_STARTED ACPI_EFI_ERR(19)
82 #define ACPI_EFI_ALREADY_STARTED ACPI_EFI_ERR(20)
83 #define ACPI_EFI_ABORTED ACPI_EFI_ERR(21)
84 #define ACPI_EFI_PROTOCOL_ERROR ACPI_EFI_ERR(24)
85 
86 
90 
91 typedef struct {
95  UINT8 Data4[8];
97 
98 typedef struct {
99  UINT16 Year; /* 1998 - 20XX */
100  UINT8 Month; /* 1 - 12 */
101  UINT8 Day; /* 1 - 31 */
102  UINT8 Hour; /* 0 - 23 */
103  UINT8 Minute; /* 0 - 59 */
104  UINT8 Second; /* 0 - 59 */
106  UINT32 Nanosecond; /* 0 - 999,999,999 */
107  INT16 TimeZone; /* -1440 to 1440 or 2047 */
110 } ACPI_EFI_TIME;
111 
112 typedef struct _ACPI_EFI_DEVICE_PATH {
117 
120 
121 typedef enum {
127 
128 typedef enum {
145 
146 /* possible caching types for the memory range */
147 #define ACPI_EFI_MEMORY_UC 0x0000000000000001
148 #define ACPI_EFI_MEMORY_WC 0x0000000000000002
149 #define ACPI_EFI_MEMORY_WT 0x0000000000000004
150 #define ACPI_EFI_MEMORY_WB 0x0000000000000008
151 #define ACPI_EFI_MEMORY_UCE 0x0000000000000010
152 
153 /* physical memory protection on range */
154 #define ACPI_EFI_MEMORY_WP 0x0000000000001000
155 #define ACPI_EFI_MEMORY_RP 0x0000000000002000
156 #define ACPI_EFI_MEMORY_XP 0x0000000000004000
157 
158 /* range requires a runtime mapping */
159 #define ACPI_EFI_MEMORY_RUNTIME 0x8000000000000000
160 
161 #define ACPI_EFI_MEMORY_DESCRIPTOR_VERSION 1
162 typedef struct {
170 
171 typedef struct _ACPI_EFI_TABLE_HEARDER {
178 
179 typedef
181 (ACPI_EFI_API *ACPI_EFI_UNKNOWN_INTERFACE) (
182  void);
183 
184 
185 /*
186  * Text output protocol
187  */
188 #define ACPI_SIMPLE_TEXT_OUTPUT_PROTOCOL \
189  { 0x387477c2, 0x69c7, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} }
190 
191 typedef
193 (ACPI_EFI_API *ACPI_EFI_TEXT_RESET) (
196 
197 typedef
199 (ACPI_EFI_API *ACPI_EFI_TEXT_OUTPUT_STRING) (
202 
203 typedef
205 (ACPI_EFI_API *ACPI_EFI_TEXT_TEST_STRING) (
207  CHAR16 *String);
208 
209 typedef
211 (ACPI_EFI_API *ACPI_EFI_TEXT_QUERY_MODE) (
214  UINTN *Columns,
215  UINTN *Rows);
216 
217 typedef
219 (ACPI_EFI_API *ACPI_EFI_TEXT_SET_MODE) (
221  UINTN ModeNumber);
222 
223 typedef
225 (ACPI_EFI_API *ACPI_EFI_TEXT_SET_ATTRIBUTE) (
228 
229 typedef
231 (ACPI_EFI_API *ACPI_EFI_TEXT_CLEAR_SCREEN) (
233 
234 typedef
236 (ACPI_EFI_API *ACPI_EFI_TEXT_SET_CURSOR_POSITION) (
239  UINTN Row);
240 
241 typedef
243 (ACPI_EFI_API *ACPI_EFI_TEXT_ENABLE_CURSOR) (
246 
247 typedef struct {
255 
257  ACPI_EFI_TEXT_RESET Reset;
258 
259  ACPI_EFI_TEXT_OUTPUT_STRING OutputString;
260  ACPI_EFI_TEXT_TEST_STRING TestString;
261 
262  ACPI_EFI_TEXT_QUERY_MODE QueryMode;
263  ACPI_EFI_TEXT_SET_MODE SetMode;
264  ACPI_EFI_TEXT_SET_ATTRIBUTE SetAttribute;
265 
266  ACPI_EFI_TEXT_CLEAR_SCREEN ClearScreen;
267  ACPI_EFI_TEXT_SET_CURSOR_POSITION SetCursorPosition;
268  ACPI_EFI_TEXT_ENABLE_CURSOR EnableCursor;
269 
272 
273 /*
274  * Text input protocol
275  */
276 #define ACPI_SIMPLE_TEXT_INPUT_PROTOCOL \
277  { 0x387477c1, 0x69c7, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} }
278 
279 typedef struct {
283 
284 /*
285  * Baseline unicode control chars
286  */
287 #define CHAR_NULL 0x0000
288 #define CHAR_BACKSPACE 0x0008
289 #define CHAR_TAB 0x0009
290 #define CHAR_LINEFEED 0x000A
291 #define CHAR_CARRIAGE_RETURN 0x000D
292 
293 typedef
295 (ACPI_EFI_API *ACPI_EFI_INPUT_RESET) (
296  struct _ACPI_SIMPLE_INPUT_INTERFACE *This,
298 
299 typedef
301 (ACPI_EFI_API *ACPI_EFI_INPUT_READ_KEY) (
302  struct _ACPI_SIMPLE_INPUT_INTERFACE *This,
304 
306  ACPI_EFI_INPUT_RESET Reset;
307  ACPI_EFI_INPUT_READ_KEY ReadKeyStroke;
310 
311 
312 /*
313  * Simple file system protocol
314  */
315 #define ACPI_SIMPLE_FILE_SYSTEM_PROTOCOL \
316  { 0x964e5b22, 0x6459, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} }
317 
318 typedef
320 (ACPI_EFI_API *ACPI_EFI_VOLUME_OPEN) (
321  struct _ACPI_EFI_FILE_IO_INTERFACE *This,
323 
324 #define ACPI_EFI_FILE_IO_INTERFACE_REVISION 0x00010000
325 
328  ACPI_EFI_VOLUME_OPEN OpenVolume;
330 
331 typedef
333 (ACPI_EFI_API *ACPI_EFI_FILE_OPEN) (
334  struct _ACPI_EFI_FILE_HANDLE *File,
336  CHAR16 *FileName,
339 
340 /* Values for OpenMode used above */
341 
342 #define ACPI_EFI_FILE_MODE_READ 0x0000000000000001
343 #define ACPI_EFI_FILE_MODE_WRITE 0x0000000000000002
344 #define ACPI_EFI_FILE_MODE_CREATE 0x8000000000000000
345 
346 /* Values for Attribute used above */
347 
348 #define ACPI_EFI_FILE_READ_ONLY 0x0000000000000001
349 #define ACPI_EFI_FILE_HIDDEN 0x0000000000000002
350 #define ACPI_EFI_FILE_SYSTEM 0x0000000000000004
351 #define ACPI_EFI_FILE_RESERVIED 0x0000000000000008
352 #define ACPI_EFI_FILE_DIRECTORY 0x0000000000000010
353 #define ACPI_EFI_FILE_ARCHIVE 0x0000000000000020
354 #define ACPI_EFI_FILE_VALID_ATTR 0x0000000000000037
355 
356 typedef
358 (ACPI_EFI_API *ACPI_EFI_FILE_CLOSE) (
359  struct _ACPI_EFI_FILE_HANDLE *File);
360 
361 typedef
363 (ACPI_EFI_API *ACPI_EFI_FILE_DELETE) (
364  struct _ACPI_EFI_FILE_HANDLE *File);
365 
366 typedef
368 (ACPI_EFI_API *ACPI_EFI_FILE_READ) (
369  struct _ACPI_EFI_FILE_HANDLE *File,
371  VOID *Buffer);
372 
373 typedef
375 (ACPI_EFI_API *ACPI_EFI_FILE_WRITE) (
376  struct _ACPI_EFI_FILE_HANDLE *File,
378  VOID *Buffer);
379 
380 typedef
382 (ACPI_EFI_API *ACPI_EFI_FILE_SET_POSITION) (
383  struct _ACPI_EFI_FILE_HANDLE *File,
385 
386 typedef
388 (ACPI_EFI_API *ACPI_EFI_FILE_GET_POSITION) (
389  struct _ACPI_EFI_FILE_HANDLE *File,
390  UINT64 *Position);
391 
392 #define ACPI_EFI_FILE_INFO_ID \
393  { 0x9576e92, 0x6d3f, 0x11d2, {0x8e, 0x39, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x3b} }
394 
395 typedef struct {
405 
406 #define SIZE_OF_ACPI_EFI_FILE_INFO ACPI_OFFSET(ACPI_EFI_FILE_INFO, FileName)
407 
408 typedef
410 (ACPI_EFI_API *ACPI_EFI_FILE_GET_INFO) (
411  struct _ACPI_EFI_FILE_HANDLE *File,
413  UINTN *BufferSize,
414  VOID *Buffer);
415 
416 typedef
418 (ACPI_EFI_API *ACPI_EFI_FILE_SET_INFO) (
419  struct _ACPI_EFI_FILE_HANDLE *File,
422  VOID *Buffer);
423 
424 typedef
426 (ACPI_EFI_API *ACPI_EFI_FILE_FLUSH) (
427  struct _ACPI_EFI_FILE_HANDLE *File);
428 
429 
430 #define ACPI_EFI_FILE_HANDLE_REVISION 0x00010000
431 
432 typedef struct _ACPI_EFI_FILE_HANDLE {
434  ACPI_EFI_FILE_OPEN Open;
435  ACPI_EFI_FILE_CLOSE Close;
436  ACPI_EFI_FILE_DELETE Delete;
437  ACPI_EFI_FILE_READ Read;
438  ACPI_EFI_FILE_WRITE Write;
439  ACPI_EFI_FILE_GET_POSITION GetPosition;
440  ACPI_EFI_FILE_SET_POSITION SetPosition;
441  ACPI_EFI_FILE_GET_INFO GetInfo;
442  ACPI_EFI_FILE_SET_INFO SetInfo;
443  ACPI_EFI_FILE_FLUSH Flush;
445 
446 
447 /*
448  * Loaded image protocol
449  */
450 #define ACPI_EFI_LOADED_IMAGE_PROTOCOL \
451  { 0x5B1B31A1, 0x9562, 0x11d2, {0x8E, 0x3F, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x3B} }
452 
453 typedef
455 (ACPI_EFI_API *ACPI_EFI_IMAGE_ENTRY_POINT) (
458 
459 typedef
461 (ACPI_EFI_API *ACPI_EFI_IMAGE_LOAD) (
462  BOOLEAN BootPolicy,
468 
469 typedef
471 (ACPI_EFI_API *ACPI_EFI_IMAGE_START) (
474  CHAR16 **ExitData);
475 
476 typedef
478 (ACPI_EFI_API *ACPI_EFI_EXIT) (
482  CHAR16 *ExitData);
483 
484 typedef
486 (ACPI_EFI_API *ACPI_EFI_IMAGE_UNLOAD) (
488 
489 
490 typedef
492 (ACPI_EFI_API *ACPI_EFI_SET_WATCHDOG_TIMER) (
493  UINTN Timeout,
495  UINTN DataSize,
497 
498 
499 #define EFI_IMAGE_INFORMATION_REVISION 0x1000
500 typedef struct {
513  ACPI_EFI_IMAGE_UNLOAD Unload;
514 
516 
517 
518 /*
519  * EFI Memory
520  */
521 typedef
523 (ACPI_EFI_API *ACPI_EFI_ALLOCATE_PAGES) (
526  UINTN NoPages,
528 
529 typedef
531 (ACPI_EFI_API *ACPI_EFI_FREE_PAGES) (
533  UINTN NoPages);
534 
535 typedef
537 (ACPI_EFI_API *ACPI_EFI_GET_MEMORY_MAP) (
538  UINTN *MemoryMapSize,
540  UINTN *MapKey,
543 
544 #define NextMemoryDescriptor(Ptr,Size) ((ACPI_EFI_MEMORY_DESCRIPTOR *) (((UINT8 *) Ptr) + Size))
545 
546 typedef
548 (ACPI_EFI_API *ACPI_EFI_ALLOCATE_POOL) (
551  VOID **Buffer);
552 
553 typedef
555 (ACPI_EFI_API *ACPI_EFI_FREE_POOL) (
556  VOID *Buffer);
557 
558 
559 /*
560  * Protocol handler functions
561  */
562 typedef enum {
566 
567 typedef enum {
572 
573 typedef
575 (ACPI_EFI_API *ACPI_EFI_INSTALL_PROTOCOL_INTERFACE) (
579  VOID *Interface);
580 
581 typedef
583 (ACPI_EFI_API *ACPI_EFI_REINSTALL_PROTOCOL_INTERFACE) (
587  VOID *NewInterface);
588 
589 typedef
591 (ACPI_EFI_API *ACPI_EFI_UNINSTALL_PROTOCOL_INTERFACE) (
594  VOID *Interface);
595 
596 typedef
598 (ACPI_EFI_API *ACPI_EFI_HANDLE_PROTOCOL) (
601  VOID **Interface);
602 
603 typedef
605 (ACPI_EFI_API *ACPI_EFI_REGISTER_PROTOCOL_NOTIFY) (
608  VOID **Registration);
609 
610 typedef
612 (ACPI_EFI_API *ACPI_EFI_LOCATE_HANDLE) (
613  ACPI_EFI_LOCATE_SEARCH_TYPE SearchType,
615  VOID *SearchKey,
616  UINTN *BufferSize,
618 
619 typedef
621 (ACPI_EFI_API *ACPI_EFI_LOCATE_DEVICE_PATH) (
625 
626 typedef
628 (ACPI_EFI_API *ACPI_EFI_INSTALL_CONFIGURATION_TABLE) (
631 
632 #define ACPI_EFI_OPEN_PROTOCOL_BY_HANDLE_PROTOCOL 0x00000001
633 #define ACPI_EFI_OPEN_PROTOCOL_GET_PROTOCOL 0x00000002
634 #define ACPI_EFI_OPEN_PROTOCOL_TEST_PROTOCOL 0x00000004
635 #define ACPI_EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER 0x00000008
636 #define ACPI_EFI_OPEN_PROTOCOL_BY_DRIVER 0x00000010
637 #define ACPI_EFI_OPEN_PROTOCOL_EXCLUSIVE 0x00000020
638 
639 typedef
641 (ACPI_EFI_API *ACPI_EFI_OPEN_PROTOCOL) (
644  VOID **Interface,
648 
649 typedef
651 (ACPI_EFI_API *ACPI_EFI_CLOSE_PROTOCOL) (
656 
657 typedef struct {
663 
664 typedef
666 (ACPI_EFI_API *ACPI_EFI_OPEN_PROTOCOL_INFORMATION) (
670  UINTN *EntryCount);
671 
672 typedef
674 (ACPI_EFI_API *ACPI_EFI_PROTOCOLS_PER_HANDLE) (
678 
679 typedef
681 (ACPI_EFI_API *ACPI_EFI_LOCATE_HANDLE_BUFFER) (
682  ACPI_EFI_LOCATE_SEARCH_TYPE SearchType,
684  VOID *SearchKey,
685  UINTN *NoHandles,
687 
688 typedef
690 (ACPI_EFI_API *ACPI_EFI_LOCATE_PROTOCOL) (
693  VOID **Interface);
694 
695 typedef
697 (ACPI_EFI_API *ACPI_EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES) (
699  ...);
700 
701 typedef
703 (ACPI_EFI_API *ACPI_EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES) (
705  ...);
706 
707 typedef
709 (ACPI_EFI_API *ACPI_EFI_CALCULATE_CRC32) (
710  VOID *Data,
712  UINT32 *Crc32);
713 
714 typedef
715 VOID
716 (ACPI_EFI_API *ACPI_EFI_COPY_MEM) (
717  VOID *Destination,
719  UINTN Length);
720 
721 typedef
722 VOID
723 (ACPI_EFI_API *ACPI_EFI_SET_MEM) (
724  VOID *Buffer,
726  UINT8 Value);
727 
728 /*
729  * EFI Boot Services Table
730  */
731 #define ACPI_EFI_BOOT_SERVICES_SIGNATURE 0x56524553544f4f42
732 #define ACPI_EFI_BOOT_SERVICES_REVISION (ACPI_EFI_SPECIFICATION_MAJOR_REVISION<<16) | (ACPI_EFI_SPECIFICATION_MINOR_REVISION)
733 
734 typedef struct _ACPI_EFI_BOOT_SERVICES {
736 
737 #if 0
738  ACPI_EFI_RAISE_TPL RaiseTPL;
739  ACPI_EFI_RESTORE_TPL RestoreTPL;
740 #else
741  ACPI_EFI_UNKNOWN_INTERFACE RaiseTPL;
742  ACPI_EFI_UNKNOWN_INTERFACE RestoreTPL;
743 #endif
744 
745  ACPI_EFI_ALLOCATE_PAGES AllocatePages;
746  ACPI_EFI_FREE_PAGES FreePages;
747  ACPI_EFI_GET_MEMORY_MAP GetMemoryMap;
748  ACPI_EFI_ALLOCATE_POOL AllocatePool;
749  ACPI_EFI_FREE_POOL FreePool;
750 
751 #if 0
752  ACPI_EFI_CREATE_EVENT CreateEvent;
753  ACPI_EFI_SET_TIMER SetTimer;
754  ACPI_EFI_WAIT_FOR_EVENT WaitForEvent;
755  ACPI_EFI_SIGNAL_EVENT SignalEvent;
756  ACPI_EFI_CLOSE_EVENT CloseEvent;
757  ACPI_EFI_CHECK_EVENT CheckEvent;
758 #else
759  ACPI_EFI_UNKNOWN_INTERFACE CreateEvent;
760  ACPI_EFI_UNKNOWN_INTERFACE SetTimer;
761  ACPI_EFI_UNKNOWN_INTERFACE WaitForEvent;
762  ACPI_EFI_UNKNOWN_INTERFACE SignalEvent;
763  ACPI_EFI_UNKNOWN_INTERFACE CloseEvent;
764  ACPI_EFI_UNKNOWN_INTERFACE CheckEvent;
765 #endif
766 
767  ACPI_EFI_INSTALL_PROTOCOL_INTERFACE InstallProtocolInterface;
768  ACPI_EFI_REINSTALL_PROTOCOL_INTERFACE ReinstallProtocolInterface;
769  ACPI_EFI_UNINSTALL_PROTOCOL_INTERFACE UninstallProtocolInterface;
770  ACPI_EFI_HANDLE_PROTOCOL HandleProtocol;
771  ACPI_EFI_HANDLE_PROTOCOL PCHandleProtocol;
772  ACPI_EFI_REGISTER_PROTOCOL_NOTIFY RegisterProtocolNotify;
773  ACPI_EFI_LOCATE_HANDLE LocateHandle;
774  ACPI_EFI_LOCATE_DEVICE_PATH LocateDevicePath;
775  ACPI_EFI_INSTALL_CONFIGURATION_TABLE InstallConfigurationTable;
776 
777  ACPI_EFI_IMAGE_LOAD LoadImage;
778  ACPI_EFI_IMAGE_START StartImage;
779  ACPI_EFI_EXIT Exit;
780  ACPI_EFI_IMAGE_UNLOAD UnloadImage;
781 
782 #if 0
783  ACPI_EFI_EXIT_BOOT_SERVICES ExitBootServices;
784  ACPI_EFI_GET_NEXT_MONOTONIC_COUNT GetNextMonotonicCount;
785  ACPI_EFI_STALL Stall;
786 #else
787  ACPI_EFI_UNKNOWN_INTERFACE ExitBootServices;
788  ACPI_EFI_UNKNOWN_INTERFACE GetNextMonotonicCount;
789  ACPI_EFI_UNKNOWN_INTERFACE Stall;
790 #endif
791  ACPI_EFI_SET_WATCHDOG_TIMER SetWatchdogTimer;
792 
793 #if 0
794  ACPI_EFI_CONNECT_CONTROLLER ConnectController;
795  ACPI_EFI_DISCONNECT_CONTROLLER DisconnectController;
796 #else
797  ACPI_EFI_UNKNOWN_INTERFACE ConnectController;
798  ACPI_EFI_UNKNOWN_INTERFACE DisconnectController;
799 #endif
800 
801  ACPI_EFI_OPEN_PROTOCOL OpenProtocol;
802  ACPI_EFI_CLOSE_PROTOCOL CloseProtocol;
803  ACPI_EFI_OPEN_PROTOCOL_INFORMATION OpenProtocolInformation;
804  ACPI_EFI_PROTOCOLS_PER_HANDLE ProtocolsPerHandle;
805  ACPI_EFI_LOCATE_HANDLE_BUFFER LocateHandleBuffer;
806  ACPI_EFI_LOCATE_PROTOCOL LocateProtocol;
807  ACPI_EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES InstallMultipleProtocolInterfaces;
808  ACPI_EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES UninstallMultipleProtocolInterfaces;
809 
810  ACPI_EFI_CALCULATE_CRC32 CalculateCrc32;
811 
812  ACPI_EFI_COPY_MEM CopyMem;
813  ACPI_EFI_SET_MEM SetMem;
814 
815 #if 0
816  ACPI_EFI_CREATE_EVENT_EX CreateEventEx;
817 #else
818  ACPI_EFI_UNKNOWN_INTERFACE CreateEventEx;
819 #endif
821 
822 
823 /*
824  * EFI System Table
825  */
826 
827 /*
828  * EFI Configuration Table and GUID definitions
829  */
830 #define ACPI_TABLE_GUID \
831  { 0xeb9d2d30, 0x2d88, 0x11d3, {0x9a, 0x16, 0x0, 0x90, 0x27, 0x3f, 0xc1, 0x4d} }
832 #define ACPI_20_TABLE_GUID \
833  { 0x8868e871, 0xe4f1, 0x11d3, {0xbc, 0x22, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} }
834 
839 
840 
841 #define ACPI_EFI_SYSTEM_TABLE_SIGNATURE 0x5453595320494249
842 #define ACPI_EFI_SYSTEM_TABLE_REVISION (ACPI_EFI_SPECIFICATION_MAJOR_REVISION<<16) | (ACPI_EFI_SPECIFICATION_MINOR_REVISION)
843 
844 typedef struct _ACPI_EFI_SYSTEM_TABLE {
846 
849 
852 
855 
858 
859 #if 0
860  ACPI_EFI_RUNTIME_SERVICES *RuntimeServices;
861 #else
863 #endif
865 
868 
870 
871 
872 /*
873  * EFI PCI I/O Protocol
874  */
875 #define ACPI_EFI_PCI_IO_PROTOCOL \
876  { 0x4cf5b200, 0x68b8, 0x4ca5, {0x9e, 0xec, 0xb2, 0x3e, 0x3f, 0x50, 0x2, 0x9a} }
877 
878 typedef enum {
893 
894 typedef
897  struct _ACPI_EFI_PCI_IO *This,
899  UINT32 Offset,
900  UINTN Count,
901  VOID *Buffer);
902 
903 typedef struct {
904  ACPI_EFI_PCI_IO_PROTOCOL_CONFIG Read;
905  ACPI_EFI_PCI_IO_PROTOCOL_CONFIG Write;
907 
908 typedef
911  struct _ACPI_EFI_PCI_IO *This,
912  UINTN *SegmentNumber,
913  UINTN *BusNumber,
915  UINTN *FunctionNumber);
916 
917 typedef struct _ACPI_EFI_PCI_IO {
918  ACPI_EFI_UNKNOWN_INTERFACE PollMem;
919  ACPI_EFI_UNKNOWN_INTERFACE PollIo;
920  ACPI_EFI_UNKNOWN_INTERFACE Mem;
921  ACPI_EFI_UNKNOWN_INTERFACE Io;
923  ACPI_EFI_UNKNOWN_INTERFACE CopyMem;
924  ACPI_EFI_UNKNOWN_INTERFACE Map;
925  ACPI_EFI_UNKNOWN_INTERFACE Unmap;
926  ACPI_EFI_UNKNOWN_INTERFACE AllocateBuffer;
927  ACPI_EFI_UNKNOWN_INTERFACE FreeBuffer;
928  ACPI_EFI_UNKNOWN_INTERFACE Flush;
929  ACPI_EFI_PCI_IO_PROTOCOL_GET_LOCATION GetLocation;
930  ACPI_EFI_UNKNOWN_INTERFACE Attributes;
931  ACPI_EFI_UNKNOWN_INTERFACE GetBarAttributes;
932  ACPI_EFI_UNKNOWN_INTERFACE SetBarAttributes;
936 
937 /* FILE abstraction */
938 
943 };
944 
945 
946 /* GNU EFI definitions */
947 
948 #if defined(_GNU_EFI)
949 
950 /*
951  * This is needed to hide platform specific code from ACPICA
952  */
953 UINT64
954 DivU64x32 (
955  UINT64 Dividend,
956  UINTN Divisor,
957  UINTN *Remainder);
958 
959 /*
960  * EFI specific prototypes
961  */
963 efi_main (
965  ACPI_EFI_SYSTEM_TABLE *SystemTab);
966 
967 int
968 acpi_main (
969  int argc,
970  char *argv[]);
971 
972 
973 #endif
974 
980 
981 #endif /* __ACEFIEX_H__ */
ACPI_EFI_UNKNOWN_INTERFACE PollMem
Definition: acefiex.h:918
UINTN UINTN * Columns
Definition: acefiex.h:213
ACPI_EFI_FILE_SET_INFO SetInfo
Definition: acefiex.h:442
ACPI_EFI_MEMORY_TYPE
Definition: acefiex.h:128
UINTN ModeNumber
Definition: acefiex.h:213
ACPI_EFI_FILE_WRITE Write
Definition: acefiex.h:438
UINT8 Pad2
Definition: acefiex.h:109
ACPI_EFI_GUID VOID ACPI_EFI_HANDLE ACPI_EFI_HANDLE ControllerHandle
Definition: acefiex.h:643
ACPI_EFI_TEXT_TEST_STRING TestString
Definition: acefiex.h:260
ACPI_EFI_VIRTUAL_ADDRESS VirtualStart
Definition: acefiex.h:166
ACPI_EFI_UNINSTALL_PROTOCOL_INTERFACE UninstallProtocolInterface
Definition: acefiex.h:769
ACPI_EFI_PHYSICAL_ADDRESS PhysicalStart
Definition: acefiex.h:165
static int argc
Definition: ServiceArgs.c:15
struct _ACPI_SIMPLE_TEXT_OUTPUT_INTERFACE ConOut
Definition: acefiex.h:941
UINTN Attribute
Definition: acefiex.h:227
unsigned short CHAR16
BOOLEAN ExtendedVerification
Definition: acefiex.h:195
unsigned int uint32_t
Definition: acefiex.h:55
ACPI_EFI_TEXT_RESET Reset
Definition: acefiex.h:257
ACPI_EFI_GUID ACPI_EFI_OPEN_PROTOCOL_INFORMATION_ENTRY ** EntryBuffer
Definition: acefiex.h:668
ACPI_EFI_TEXT_ENABLE_CURSOR EnableCursor
Definition: acefiex.h:268
VOID * ACPI_EFI_HANDLE
Definition: acefiex.h:88
ACPI_EFI_MEMORY_TYPE ImageCodeType
Definition: acefiex.h:511
ACPI_EFI_INSTALL_CONFIGURATION_TABLE InstallConfigurationTable
Definition: acefiex.h:775
Type
Definition: Type.h:6
ACPI_EFI_UNKNOWN_INTERFACE Map
Definition: acefiex.h:924
ACPI_EFI_HANDLE ACPI_EFI_DEVICE_PATH * FilePath
Definition: acefiex.h:463
UINTN UINTN UINTN * Rows
Definition: acefiex.h:213
ACPI_EFI_DEVICE_PATH * FilePath
Definition: acefiex.h:505
ACPI_EFI_CONFIGURATION_TABLE * ConfigurationTable
Definition: acefiex.h:867
BOOLEAN Enable
Definition: acefiex.h:245
ACPI_EFI_UNKNOWN_INTERFACE Flush
Definition: acefiex.h:928
ACPI_EFI_DEVICE_PATH ** DevicePath
Definition: acefiex.h:623
UINT32 Nanosecond
Definition: acefiex.h:106
struct _ACPI_EFI_FILE_HANDLE ** Root
Definition: acefiex.h:322
ACPI_EFI_DEVICE_PATH ACPI_EFI_HANDLE * Device
Definition: acefiex.h:623
struct _ACPI_EFI_SYSTEM_TABLE ACPI_EFI_SYSTEM_TABLE
ACPI_EFI_MEMORY_TYPE UINTN NoPages
Definition: acefiex.h:525
UINT8 Minute
Definition: acefiex.h:103
ACPI_EFI_MEMORY_TYPE MemoryType
Definition: acefiex.h:525
struct _ACPI_EFI_FILE_IO_INTERFACE ACPI_EFI_FILE_IO_INTERFACE
UINT32 LoadOptionsSize
Definition: acefiex.h:507
ACPI_EFI_GUID VOID * SearchKey
Definition: acefiex.h:614
ACPI_EFI_PCI_IO_PROTOCOL_CONFIG Read
Definition: acefiex.h:904
ACPI_EFI_UNKNOWN_INTERFACE Io
Definition: acefiex.h:921
ACPI_EFI_UNKNOWN_INTERFACE Unmap
Definition: acefiex.h:925
struct _ACPI_EFI_BOOT_SERVICES ACPI_EFI_BOOT_SERVICES
ACPI_EFI_HANDLE ParentImageHandle
Definition: acefiex.h:463
ACPI_EFI_MEMORY_DESCRIPTOR UINTN UINTN UINT32 * DescriptorVersion
Definition: acefiex.h:539
struct _ACPI_EFI_FILE_HANDLE ** NewHandle
Definition: acefiex.h:335
ACPI_EFI_COPY_MEM CopyMem
Definition: acefiex.h:812
VOID * Source
Definition: acefiex.h:718
ACPI_EFI_HANDLE_PROTOCOL PCHandleProtocol
Definition: acefiex.h:771
ACPI_EFI_UNKNOWN_INTERFACE WaitForEvent
Definition: acefiex.h:761
ACPI_EFI_INTERFACE_TYPE
Definition: acefiex.h:562
_Inout_ __drv_aliasesMem PSLIST_ENTRY _Inout_ PSLIST_ENTRY _In_ ULONG Count
Definition: exfuncs.h:1015
ACPI_EFI_UNKNOWN_INTERFACE CloseEvent
Definition: acefiex.h:763
PVOID ULONG ULONG PULONG Data
Definition: oprghdlr.h:14
ACPI_EFI_TEXT_QUERY_MODE QueryMode
Definition: acefiex.h:262
UINT32 Attributes
Definition: acefiex.h:660
UINT32 UINTN
ACPI_EFI_TABLE_HEADER Hdr
Definition: acefiex.h:845
ACPI_SIMPLE_TEXT_OUTPUT_INTERFACE * ConOut
Definition: acefiex.h:854
IN SIZE_T IN PVOID File
Definition: exeformat.h:53
struct _ACPI_EFI_TABLE_HEARDER ACPI_EFI_TABLE_HEADER
ACPI_EFI_UNKNOWN_INTERFACE SetBarAttributes
Definition: acefiex.h:932
ACPI_EFI_SET_MEM SetMem
Definition: acefiex.h:813
INT16 TimeZone
Definition: acefiex.h:107
unsigned short int uint16_t
Definition: acefiex.h:54
struct _ACPI_EFI_FILE_HANDLE CHAR16 UINT64 OpenMode
Definition: acefiex.h:335
ACPI_EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES InstallMultipleProtocolInterfaces
Definition: acefiex.h:807
UINTN NumberOfTableEntries
Definition: acefiex.h:866
ACPI_EFI_HANDLE_PROTOCOL HandleProtocol
Definition: acefiex.h:770
ACPI_EFI_UNKNOWN_INTERFACE ConnectController
Definition: acefiex.h:797
ACPI_EFI_UNKNOWN_INTERFACE AllocateBuffer
Definition: acefiex.h:926
ACPI_EFI_LOCATE_HANDLE LocateHandle
Definition: acefiex.h:773
UINTN UINTN Row
Definition: acefiex.h:238
ACPI_EFI_GUID VendorGuid
Definition: acefiex.h:836
ACPI_EFI_GUID ACPI_EFI_INTERFACE_TYPE VOID * Interface
Definition: acefiex.h:577
#define ACPI_EFI_API
Definition: acefi.h:66
static char ** argv
Definition: ServiceArgs.c:14
ACPI_EFI_TABLE_HEADER Hdr
Definition: acefiex.h:735
ACPI_EFI_ALLOCATE_POOL AllocatePool
Definition: acefiex.h:748
ACPI_EFI_UNKNOWN_INTERFACE CreateEvent
Definition: acefiex.h:759
COMPILER_DEPENDENT_UINT64 uint64_t
Definition: acefiex.h:57
ACPI_EFI_EVENT Event
Definition: acefiex.h:607
CHAR16 * FirmwareVendor
Definition: acefiex.h:847
ACPI_EFI_LOCATE_PROTOCOL LocateProtocol
Definition: acefiex.h:806
Definition: acefiex.h:657
UINT8 Hour
Definition: acefiex.h:102
CHAR16 * String
Definition: acefiex.h:201
ACPI_EFI_FILE_GET_INFO GetInfo
Definition: acefiex.h:441
ACPI_EFI_TIME ModificationTime
Definition: acefiex.h:401
ACPI_EFI_GUID UINTN * ProtocolBufferCount
Definition: acefiex.h:676
UINT64 ACPI_EFI_PHYSICAL_ADDRESS
Definition: acefiex.h:118
UINT32 OpenCount
Definition: acefiex.h:661
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
unsigned int UINT32
ACPI_EFI_GUID VOID VOID * NewInterface
Definition: acefiex.h:585
struct _ACPI_EFI_SYSTEM_TABLE * SystemTable
Definition: acefiex.h:457
struct png_info_def **typedef void(__cdecl typeof(png_destroy_read_struct))(struct png_struct_def **
Definition: typeof.h:47
UINTN * BufferSize
Definition: acefiex.h:370
UINT64 RomSize
Definition: acefiex.h:933
ACPI_EFI_TEXT_SET_MODE SetMode
Definition: acefiex.h:263
ACPI_EFI_OPEN_PROTOCOL OpenProtocol
Definition: acefiex.h:801
VOID * Table
Definition: acefiex.h:630
ACPI_EFI_UNKNOWN_INTERFACE SetTimer
Definition: acefiex.h:760
UINTN ACPI_EFI_STATUS
Definition: acefiex.h:87
ACPI_EFI_IMAGE_UNLOAD Unload
Definition: acefiex.h:513
ACPI_EFI_UNKNOWN_INTERFACE GetBarAttributes
Definition: acefiex.h:931
ACPI_EFI_PCI_IO_PROTOCOL_GET_LOCATION GetLocation
Definition: acefiex.h:929
struct _ACPI_SIMPLE_INPUT_INTERFACE ConIn
Definition: acefiex.h:942
UINT16 Data2
Definition: acefiex.h:93
ACPI_EFI_GUID VOID UINTN * NoHandles
Definition: acefiex.h:683
ACPI_EFI_OPEN_PROTOCOL_INFORMATION OpenProtocolInformation
Definition: acefiex.h:803
struct _ACPI_SIMPLE_INPUT_INTERFACE ACPI_SIMPLE_INPUT_INTERFACE
ACPI_EFI_INPUT_RESET Reset
Definition: acefiex.h:306
ACPI_EFI_FILE_OPEN Open
Definition: acefiex.h:434
ACPI_EFI_GUID AcpiGbl_GenericFileInfo
#define COMPILER_DEPENDENT_INT64
Definition: accygwin.h:72
ACPI_EFI_UNKNOWN_INTERFACE Stall
Definition: acefiex.h:789
_In_opt_ PUNICODE_STRING _In_ PDRIVER_OBJECT _In_ PDEVICE_OBJECT _In_ INTERFACE_TYPE _In_ ULONG BusNumber
Definition: halfuncs.h:156
UINTN Size
Definition: acefiex.h:550
ACPI_EFI_CLOSE_PROTOCOL CloseProtocol
Definition: acefiex.h:802
ACPI_EFI_REGISTER_PROTOCOL_NOTIFY RegisterProtocolNotify
Definition: acefiex.h:772
ACPI_EFI_UNKNOWN_INTERFACE CheckEvent
Definition: acefiex.h:764
ACPI_EFI_FREE_PAGES FreePages
Definition: acefiex.h:746
_In_ HANDLE Handle
Definition: extypes.h:390
ACPI_EFI_UNKNOWN_INTERFACE Mem
Definition: acefiex.h:920
ACPI_EFI_UNKNOWN_INTERFACE FreeBuffer
Definition: acefiex.h:927
unsigned char BOOLEAN
short int int16_t
Definition: acefiex.h:51
signed char int8_t
Definition: acefiex.h:50
ACPI_EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES UninstallMultipleProtocolInterfaces
Definition: acefiex.h:808
UINT32 Data1
Definition: acefiex.h:92
ACPI_SIMPLE_TEXT_OUTPUT_MODE * Mode
Definition: acefiex.h:270
ACPI_EFI_GUID ACPI_EFI_INTERFACE_TYPE InterfaceType
Definition: acefiex.h:577
UINT8 Month
Definition: acefiex.h:100
ACPI_EFI_HANDLE * RuntimeServices
Definition: acefiex.h:862
ACPI_EFI_INSTALL_PROTOCOL_INTERFACE InstallProtocolInterface
Definition: acefiex.h:767
ACPI_EFI_BOOT_SERVICES * BootServices
Definition: acefiex.h:864
ACPI_EFI_HANDLE ConsoleOutHandle
Definition: acefiex.h:853
ACPI_EFI_EVENT VOID ** Registration
Definition: acefiex.h:607
typedef VOID(ACPI_EFI_API *ACPI_EFI_COPY_MEM)(VOID *Destination
struct _ACPI_EFI_FILE_HANDLE CHAR16 * FileName
Definition: acefiex.h:335
ACPI_EFI_MEMORY_TYPE UINTN ACPI_EFI_PHYSICAL_ADDRESS * Memory
Definition: acefiex.h:525
ACPI_EFI_UNKNOWN_INTERFACE ExitBootServices
Definition: acefiex.h:787
UINTN CHAR16 ** ExitData
Definition: acefiex.h:473
UINT8 Daylight
Definition: acefiex.h:108
UINT16 Data3
Definition: acefiex.h:94
ACPI_EFI_ALLOCATE_TYPE
Definition: acefiex.h:121
unsigned char uint8_t
Definition: acefiex.h:53
ACPI_EFI_GUID AcpiGbl_FileSystemProtocol
ACPI_SIMPLE_INPUT_INTERFACE * ConIn
Definition: acefiex.h:851
ACPI_EFI_HANDLE ParentHandle
Definition: acefiex.h:502
_In_ PUNICODE_STRING _Inout_ PUNICODE_STRING Destination
Definition: rtlfuncs.h:2875
ACPI_EFI_HANDLE DeviceHandle
Definition: acefiex.h:504
ACPI_EFI_UNKNOWN_INTERFACE GetNextMonotonicCount
Definition: acefiex.h:788
UINT8 Second
Definition: acefiex.h:104
UINTN VOID * Buffer
Definition: acefiex.h:370
ACPI_EFI_GUID AcpiGbl_LoadedImageProtocol
ACPI_EFI_FILE_DELETE Delete
Definition: acefiex.h:436
typedef typedef UINTN UINT32 * Crc32
Definition: acefiex.h:711
ACPI_EFI_IMAGE_LOAD LoadImage
Definition: acefiex.h:777
ACPI_EFI_HANDLE ACPI_EFI_DEVICE_PATH VOID UINTN SourceSize
Definition: acefiex.h:463
ACPI_EFI_HANDLE ACPI_EFI_DEVICE_PATH VOID * SourceBuffer
Definition: acefiex.h:463
ACPI_EFI_UNKNOWN_INTERFACE RestoreTPL
Definition: acefiex.h:742
ACPI_EFI_TIME LastAccessTime
Definition: acefiex.h:400
ACPI_EFI_ALLOCATE_PAGES AllocatePages
Definition: acefiex.h:745
_In_ LPGUID Guid
Definition: classpnp.h:778
IN REFCLSID IN PUNKNOWN IN POOL_TYPE PoolType
Definition: unknown.h:68
VOID UINTN Length
Definition: acefiex.h:718
CHAR16 UnicodeChar
Definition: acefiex.h:281
ACPI_EFI_SET_WATCHDOG_TIMER SetWatchdogTimer
Definition: acefiex.h:791
UINT64 ACPI_EFI_VIRTUAL_ADDRESS
Definition: acefiex.h:119
ACPI_EFI_STATUS(ACPI_EFI_API * ACPI_EFI_PCI_IO_PROTOCOL_GET_LOCATION)(struct _ACPI_EFI_PCI_IO *This, UINTN *SegmentNumber, UINTN *BusNumber, UINTN *DeviceNumber, UINTN *FunctionNumber)
Definition: acefiex.h:910
ACPI_EFI_GUID AcpiGbl_TextInProtocol
ACPI_EFI_GUID VOID ACPI_EFI_HANDLE AgentHandle
Definition: acefiex.h:643
UINTN Column
Definition: acefiex.h:238
ACPI_EFI_IMAGE_START StartImage
Definition: acefiex.h:778
ACPI_EFI_HANDLE ACPI_EFI_DEVICE_PATH VOID UINTN ACPI_EFI_HANDLE * ImageHandle
Definition: acefiex.h:463
UINT64 Position
Definition: acefiex.h:384
UINT64 UINTN DataSize
Definition: acefiex.h:494
UINTN UINT8 Value
Definition: acefiex.h:725
ACPI_EFI_PROTOCOLS_PER_HANDLE ProtocolsPerHandle
Definition: acefiex.h:804
ACPI_EFI_UNKNOWN_INTERFACE DisconnectController
Definition: acefiex.h:798
struct _ACPI_EFI_CONFIGURATION_TABLE ACPI_EFI_CONFIGURATION_TABLE
struct _ACPI_SIMPLE_TEXT_OUTPUT_INTERFACE ACPI_SIMPLE_TEXT_OUTPUT_INTERFACE
ACPI_EFI_GUID * InformationType
Definition: acefiex.h:412
ACPI_EFI_STATUS ExitStatus
Definition: acefiex.h:480
ACPI_EFI_EVENT WaitForKey
Definition: acefiex.h:308
ACPI_EFI_PCI_IO_PROTOCOL_CONFIG Write
Definition: acefiex.h:905
#define COMPILER_DEPENDENT_UINT64
Definition: accygwin.h:73
static ULONG Timeout
Definition: ping.c:61
struct _ACPI_EFI_DEVICE_PATH ACPI_EFI_DEVICE_PATH
ACPI_EFI_TEXT_SET_ATTRIBUTE SetAttribute
Definition: acefiex.h:264
UINT64 Attribute
Definition: acefiex.h:402
VOID * RomImage
Definition: acefiex.h:934
ACPI_EFI_TEXT_CLEAR_SCREEN ClearScreen
Definition: acefiex.h:266
ACPI_EFI_MEMORY_DESCRIPTOR * MemoryMap
Definition: acefiex.h:539
ACPI_EFI_UNKNOWN_INTERFACE CreateEventEx
Definition: acefiex.h:818
ACPI_EFI_MEMORY_DESCRIPTOR UINTN UINTN * DescriptorSize
Definition: acefiex.h:539
ACPI_EFI_TEXT_OUTPUT_STRING OutputString
Definition: acefiex.h:259
ACPI_EFI_EXIT Exit
Definition: acefiex.h:779
struct _ACPI_EFI_SYSTEM_TABLE * SystemTable
Definition: acefiex.h:503
ACPI_EFI_HANDLE ControllerHandle
Definition: acefiex.h:659
ACPI_EFI_UNKNOWN_INTERFACE SignalEvent
Definition: acefiex.h:762
unsigned short UINT16
COMPILER_DEPENDENT_INT64 int64_t
Definition: acefiex.h:56
ACPI_EFI_LOCATE_DEVICE_PATH LocateDevicePath
Definition: acefiex.h:774
ACPI_EFI_TEXT_SET_CURSOR_POSITION SetCursorPosition
Definition: acefiex.h:267
ACPI_EFI_MEMORY_TYPE ImageDataType
Definition: acefiex.h:512
UINT16 Year
Definition: acefiex.h:99
ACPI_EFI_UNKNOWN_INTERFACE PollIo
Definition: acefiex.h:919
ACPI_EFI_FILE_SET_POSITION SetPosition
Definition: acefiex.h:440
ACPI_EFI_VOLUME_OPEN OpenVolume
Definition: acefiex.h:328
ACPI_EFI_UNKNOWN_INTERFACE Attributes
Definition: acefiex.h:930
ACPI_EFI_HANDLE AgentHandle
Definition: acefiex.h:658
ACPI_EFI_MEMORY_DESCRIPTOR UINTN * MapKey
Definition: acefiex.h:539
ACPI_EFI_CALCULATE_CRC32 CalculateCrc32
Definition: acefiex.h:810
ACPI_EFI_LOCATE_SEARCH_TYPE
Definition: acefiex.h:567
_In_ LARGE_INTEGER Divisor
Definition: rtlfuncs.h:3046
ACPI_EFI_UNKNOWN_INTERFACE CopyMem
Definition: acefiex.h:923
ACPI_EFI_GUID * Protocol
Definition: acefiex.h:577
ACPI_EFI_LOCATE_HANDLE_BUFFER LocateHandleBuffer
Definition: acefiex.h:805
ACPI_EFI_HANDLE StandardErrorHandle
Definition: acefiex.h:856
ACPI_EFI_IMAGE_UNLOAD UnloadImage
Definition: acefiex.h:780
signed int INT32
ACPI_EFI_FREE_POOL FreePool
Definition: acefiex.h:749
ACPI_EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS Pci
Definition: acefiex.h:922
ACPI_SIMPLE_TEXT_OUTPUT_INTERFACE * StdErr
Definition: acefiex.h:857
ACPI_EFI_GET_MEMORY_MAP GetMemoryMap
Definition: acefiex.h:747
ACPI_EFI_UNKNOWN_INTERFACE RaiseTPL
Definition: acefiex.h:741
ACPI_EFI_FILE_CLOSE Close
Definition: acefiex.h:435
UINT64 PhysicalSize
Definition: acefiex.h:398
struct _ACPI_EFI_FILE_HANDLE * ACPI_EFI_FILE_HANDLE
UINT8 Day
Definition: acefiex.h:101
ACPI_EFI_PCI_IO_PROTOCOL_WIDTH
Definition: acefiex.h:878
ACPI_EFI_FILE_READ Read
Definition: acefiex.h:437
_In_ PCHAR _In_ ULONG DeviceNumber
Definition: classpnp.h:1036
ACPI_EFI_GUID *** ProtocolBuffer
Definition: acefiex.h:676
unsigned long long UINT64
unsigned char UINT8
UINT64 UINTN CHAR16 * WatchdogData
Definition: acefiex.h:494
UINT64 WatchdogCode
Definition: acefiex.h:494
struct _ACPI_EFI_PCI_IO ACPI_EFI_PCI_IO
ACPI_EFI_FILE_GET_POSITION GetPosition
Definition: acefiex.h:439
ACPI_EFI_FILE_FLUSH Flush
Definition: acefiex.h:443
ACPI_EFI_HANDLE ConsoleInHandle
Definition: acefiex.h:850
ACPI_EFI_GUID ACPI_EFI_OPEN_PROTOCOL_INFORMATION_ENTRY UINTN * EntryCount
Definition: acefiex.h:668
ACPI_EFI_INPUT_KEY * Key
Definition: acefiex.h:303
ACPI_EFI_INPUT_READ_KEY ReadKeyStroke
Definition: acefiex.h:307
UINTN * ExitDataSize
Definition: acefiex.h:473
int int32_t
Definition: acefiex.h:52
struct _ACPI_EFI_FILE_HANDLE CHAR16 UINT64 UINT64 Attributes
Definition: acefiex.h:335
ACPI_EFI_TIME CreateTime
Definition: acefiex.h:399
_In_ LARGE_INTEGER _Out_opt_ PLARGE_INTEGER Remainder
Definition: rtlfuncs.h:3046
ACPI_EFI_REINSTALL_PROTOCOL_INTERFACE ReinstallProtocolInterface
Definition: acefiex.h:768
ACPI_EFI_GUID AcpiGbl_TextOutProtocol
UINT8 Pad1
Definition: acefiex.h:105
ACPI_EFI_STATUS(ACPI_EFI_API * ACPI_EFI_PCI_IO_PROTOCOL_CONFIG)(struct _ACPI_EFI_PCI_IO *This, ACPI_EFI_PCI_IO_PROTOCOL_WIDTH Width, UINT32 Offset, UINTN Count, VOID *Buffer)
Definition: acefiex.h:896
VOID * ACPI_EFI_EVENT
Definition: acefiex.h:89
ACPI_EFI_GUID VOID * OldInterface
Definition: acefiex.h:585
struct _ACPI_EFI_FILE_HANDLE ACPI_EFI_FILE_STRUCT
signed short INT16