summaryrefslogtreecommitdiff
path: root/EDK/Foundation/Include/EfiSpec.h
diff options
context:
space:
mode:
Diffstat (limited to 'EDK/Foundation/Include/EfiSpec.h')
-rw-r--r--EDK/Foundation/Include/EfiSpec.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/EDK/Foundation/Include/EfiSpec.h b/EDK/Foundation/Include/EfiSpec.h
new file mode 100644
index 0000000..173c9c4
--- /dev/null
+++ b/EDK/Foundation/Include/EfiSpec.h
@@ -0,0 +1,51 @@
+/*++
+
+Copyright (c) 2004 - 2006, Intel Corporation
+All rights reserved. This program and the accompanying materials
+are licensed and made available under the terms and conditions of the BSD License
+which accompanies this distribution. The full text of the license may be found at
+http://opensource.org/licenses/bsd-license.php
+
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
+
+Module Name:
+
+ EfiSpec.h
+
+Abstract:
+
+ EFI master include file.
+
+ This is the main include file for EFI components. There should be
+ no defines or macros added to this file, other than the EFI version
+ information already in this file.
+
+ Don't add include files to the list for convenience, only add things
+ that are architectural. Don't add Protocols or GUID include files here
+
+--*/
+
+#ifndef _EFI_SPEC_H_
+#define _EFI_SPEC_H_
+
+#include "EfiCommon.h"
+#include "EfiApi.h"
+#include "EfiDevicePath.h"
+
+//
+// Check to make sure EFI_SPECIFICATION_VERSION and TIANO_RELEASE_VERSION are defined.
+//
+#if !defined(EFI_SPECIFICATION_VERSION)
+ #error EFI_SPECIFICATION_VERSION not defined
+#elif !defined(TIANO_RELEASE_VERSION)
+ #error TIANO_RELEASE_VERSION not defined
+#elif (TIANO_RELEASE_VERSION == 0)
+//
+// UEFI mode with no Tiano extensions is legal
+//
+#elif ((TIANO_RELEASE_VERSION < 0x00080005) && (EFI_SPECIFICATION_VERSION >= 0x00020000))
+ #error Illegal combination of EFI_SPECIFICATION_VERSION and TIANO_RELEASE_VERSION versions
+#endif
+
+#endif