1530d68baSNigel Croxon /*++ 2530d68baSNigel Croxon 3530d68baSNigel Croxon Copyright (c) 1998 Intel Corporation 4530d68baSNigel Croxon 5530d68baSNigel Croxon Module Name: 6530d68baSNigel Croxon 7530d68baSNigel Croxon efi.h 8530d68baSNigel Croxon 9530d68baSNigel Croxon Abstract: 10530d68baSNigel Croxon 11530d68baSNigel Croxon Public EFI header files 12530d68baSNigel Croxon 13530d68baSNigel Croxon 14530d68baSNigel Croxon 15530d68baSNigel Croxon Revision History 16530d68baSNigel Croxon 17530d68baSNigel Croxon --*/ 18530d68baSNigel Croxon 19751cbce3SNigel Croxon 20751cbce3SNigel Croxon // Add a predefined macro to detect usage of the library 21751cbce3SNigel Croxon #ifndef _GNU_EFI 22751cbce3SNigel Croxon #define _GNU_EFI 23751cbce3SNigel Croxon #endif 24751cbce3SNigel Croxon 25530d68baSNigel Croxon // 26530d68baSNigel Croxon // Build flags on input 27530d68baSNigel Croxon // EFI32 28530d68baSNigel Croxon // EFI_DEBUG - Enable debugging code 29530d68baSNigel Croxon // EFI_NT_EMULATOR - Building for running under NT 30530d68baSNigel Croxon // 31530d68baSNigel Croxon 32530d68baSNigel Croxon 33530d68baSNigel Croxon #ifndef _EFI_INCLUDE_ 34530d68baSNigel Croxon #define _EFI_INCLUDE_ 35530d68baSNigel Croxon 36*5e85f477SCallum Farmer #ifdef __cplusplus 37*5e85f477SCallum Farmer extern "C" { 38*5e85f477SCallum Farmer #endif 39*5e85f477SCallum Farmer 40530d68baSNigel Croxon #define EFI_FIRMWARE_VENDOR L"INTEL" 41530d68baSNigel Croxon #define EFI_FIRMWARE_MAJOR_REVISION 12 42530d68baSNigel Croxon #define EFI_FIRMWARE_MINOR_REVISION 33 43530d68baSNigel Croxon #define EFI_FIRMWARE_REVISION ((EFI_FIRMWARE_MAJOR_REVISION <<16) | (EFI_FIRMWARE_MINOR_REVISION)) 44530d68baSNigel Croxon 45b1c7a1c5SPete Batard #if defined(_M_X64) || defined(__x86_64__) || defined(__amd64__) 46b1c7a1c5SPete Batard #include "x86_64/efibind.h" 47b1c7a1c5SPete Batard #elif defined(_M_IX86) || defined(__i386__) 48b1c7a1c5SPete Batard #include "ia32/efibind.h" 49b1c7a1c5SPete Batard #elif defined(_M_IA64) || defined(__ia64__) 50b1c7a1c5SPete Batard #include "ia64/efibind.h" 51b1c7a1c5SPete Batard #elif defined (_M_ARM64) || defined(__aarch64__) 52b1c7a1c5SPete Batard #include "aarch64/efibind.h" 53b1c7a1c5SPete Batard #elif defined (_M_ARM) || defined(__arm__) 54b1c7a1c5SPete Batard #include "arm/efibind.h" 556b285635SFabrice Fontaine #elif defined (_M_MIPS64) || defined(__mips64__) || defined(__mips64) 56b1c7a1c5SPete Batard #include "mips64el/efibind.h" 57b95f138fSHeinrich Schuchardt #elif defined (__riscv) && __riscv_xlen == 64 58b95f138fSHeinrich Schuchardt #include "riscv64/efibind.h" 59e7db4418Szhoumingtao #elif defined (__loongarch64) 60e7db4418Szhoumingtao #include "loongarch64/efibind.h" 61b1c7a1c5SPete Batard #else 62b1c7a1c5SPete Batard #error Usupported architecture 63b1c7a1c5SPete Batard #endif 64b1c7a1c5SPete Batard 655ff74ecaSNigel Croxon #include "eficompiler.h" 66530d68baSNigel Croxon #include "efidef.h" 67530d68baSNigel Croxon #include "efidevp.h" 68530d68baSNigel Croxon #include "efipciio.h" 69530d68baSNigel Croxon #include "efiprot.h" 70530d68baSNigel Croxon #include "eficon.h" 71b82e6b6fSKagurazaka Kotori #include "eficonex.h" 72530d68baSNigel Croxon #include "efiser.h" 73530d68baSNigel Croxon #include "efi_nii.h" 74530d68baSNigel Croxon #include "efipxebc.h" 75530d68baSNigel Croxon #include "efinet.h" 76530d68baSNigel Croxon #include "efiapi.h" 77530d68baSNigel Croxon #include "efifs.h" 78530d68baSNigel Croxon #include "efierr.h" 79530d68baSNigel Croxon #include "efiui.h" 80530d68baSNigel Croxon #include "efiip.h" 81530d68baSNigel Croxon #include "efiudp.h" 82530d68baSNigel Croxon #include "efitcp.h" 83530d68baSNigel Croxon #include "efipoint.h" 842b26c811SJiaqing Zhao #include "efishell.h" 85530d68baSNigel Croxon 86*5e85f477SCallum Farmer #ifdef __cplusplus 87*5e85f477SCallum Farmer } 88*5e85f477SCallum Farmer #endif 89*5e85f477SCallum Farmer 90530d68baSNigel Croxon #endif 91