]>
git.proxmox.com Git - mirror_edk2.git/blob - EdkCompatibilityPkg/Foundation/Library/EdkIIGlueLib/Include/EdkIIGlueConfig.h
3 Copyright (c) 2004 - 2011, Intel Corporation. All rights reserved.<BR>
4 This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
19 Configurable items provided by GlueLib
23 #ifndef __EDKII_GLUE_CONFIG_H__
24 #define __EDKII_GLUE_CONFIG_H__
26 #include "EdkIIGlueProcessorBind.h"
29 // Glue Library version
31 // 0x3000 - the 3rd release
32 // 0x5000 - support IPF. Jan, 2007
33 // 0x6000 - support EBC. Feb, 2007
34 // 0x7000 - size reduction, Jun, 2007
35 // 0x7100 - backward compatibility supported, Jun, 2007
36 // 0x8000 - Driver model protocols2 supported, May, 2008
37 // 0x9000 - add SmmRuntimeDxeReportStatusCodeLib and OemHookStatusCodeLibNull, Feb, 2009
38 // 0x9100 - change to use unique member RT variable names in various library instances, June, 2009
39 // 0x9200 - Update LEGACY_BOOT and READY_TO_BOOT event handling in UefiLib, July, 2009
40 // 0x9300 - Remove OemHookStatusCodeLibNull. SmmRuntimeDxeReportStatusCodeLib uses SMM StatusCode Protocol, Oct, 2009
42 // For reference only, don't change the value
44 #define EDKII_GLUE_LIBRARY_VERSION 0x9300
48 // Check to make sure EFI_SPECIFICATION_VERSION and TIANO_RELEASE_VERSION are defined.
50 #if !defined(EFI_SPECIFICATION_VERSION)
51 #error EFI_SPECIFICATION_VERSION not defined
52 #elif !defined(TIANO_RELEASE_VERSION)
53 #error TIANO_RELEASE_VERSION not defined
54 #elif (TIANO_RELEASE_VERSION == 0)
55 #error TIANO_RELEASE_VERSION can not be zero
60 // Glue Library debug flag
62 // Controls debug ON/OFF of GlueLib itself, no
63 // effect on any other libraries or modules
67 // any TRUE value : debug on
69 #define EDKII_GLUE_LIBRARY_DEBUG_ENABLE 0
73 // max unicode string length
75 #define EDKII_GLUE_MaximumUnicodeStringLength 1000000
78 // max ascii string length
80 #define EDKII_GLUE_MaximumAsciiStringLength 1000000
85 #define EDKII_GLUE_SpinLockTimeout 10000000
88 // max linked list length
90 #define EDKII_GLUE_MaximumLinkedListLength 1000000
95 #ifndef EDKII_GLUE_DebugPrintErrorLevel
96 #define EDKII_GLUE_DebugPrintErrorLevel (EFI_D_ERROR|EFI_D_INFO)
100 // debug propery mask
102 #ifndef EDKII_GLUE_DebugPropertyMask
103 #define EDKII_GLUE_DebugPropertyMask ( DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED \
104 | DEBUG_PROPERTY_DEBUG_PRINT_ENABLED \
105 | DEBUG_PROPERTY_DEBUG_CODE_ENABLED \
106 | DEBUG_PROPERTY_CLEAR_MEMORY_ENABLED \
107 | DEBUG_PROPERTY_ASSERT_DEADLOOP_ENABLED \
112 // clear memory value
114 #define EDKII_GLUE_DebugClearMemoryValue 0xAF
117 // pci express base address.
118 // "PCD_EDKII_GLUE_PciExpressBaseAddress" is required to be defined explicitly:
119 // e.g. in EDK II DSC file to build EDK modules:
121 // *_*_*_CC_FLAGS = /D PCD_EDKII_GLUE_PciExpressBaseAddress=0xC0000000
123 #ifndef EDKII_GLUE_PciExpressBaseAddress
124 #define EDKII_GLUE_PciExpressBaseAddress PCD_EDKII_GLUE_PciExpressBaseAddress
129 // This value is FSB Clock frequency. Its unit is Hz and its
130 // default value is 200000000, that means FSB frequency is 200Mhz.
132 #ifndef EDKII_GLUE_FSBClock
133 #define EDKII_GLUE_FSBClock 200000000
137 // post code property mask
139 #define EDKII_GLUE_PostCodePropertyMask ( POST_CODE_PROPERTY_POST_CODE_ENABLED \
140 | POST_CODE_PROPERTY_POST_CODE_DESCRIPTION_ENABLED \
144 // status code property mask
146 #define EDKII_GLUE_ReportStatusCodePropertyMask ( REPORT_STATUS_CODE_PROPERTY_PROGRESS_CODE_ENABLED \
147 | REPORT_STATUS_CODE_PROPERTY_ERROR_CODE_ENABLED \
148 | REPORT_STATUS_CODE_PROPERTY_DEBUG_CODE_ENABLED \
153 // The base address of IPF IO Block
156 #ifndef EDKII_GLUE_IoBlockBaseAddressForIpf
157 #define EDKII_GLUE_IoBlockBaseAddressForIpf 0x0ffffc000000