]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/UPT/Library/DataType.py
BaseTools: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / BaseTools / Source / Python / UPT / Library / DataType.py
index 4b30f3343e11ac8d7ad0532765d2b1e5aca4da8a..88559bcc43bfa1161aad9d0270df2ab6b19218c6 100644 (file)
@@ -1,15 +1,9 @@
 ## @file\r
 # This file is used to define class for data type structure\r
 #\r
-# Copyright (c) 2011 - 2013, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>\r
 #\r
-# This program and the accompanying materials are licensed and made available \r
-# under the terms and conditions of the BSD License which accompanies this \r
-# distribution. The full text of the license may be found at \r
-# http://opensource.org/licenses/bsd-license.php\r
-#\r
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+# SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 '''\r
 DataType\r
@@ -47,7 +41,10 @@ USAGE_LIST = ["CONSUMES",
               "PRODUCES",\r
               "SOMETIMES_PRODUCES"]\r
 \r
-LANGUAGE_EN_US = 'en-US'\r
+TAB_LANGUAGE_EN_US = 'en-US'\r
+TAB_LANGUAGE_ENG   = 'eng'\r
+TAB_LANGUAGE_EN    = 'en'\r
+TAB_LANGUAGE_EN_X  = 'en-x-tianocore'\r
 \r
 USAGE_ITEM_PRODUCES           = 'PRODUCES'\r
 USAGE_ITEM_SOMETIMES_PRODUCES = 'SOMETIMES_PRODUCES'\r
@@ -61,13 +58,13 @@ USAGE_ITEM_UNDEFINED          = 'UNDEFINED'
 USAGE_CONSUMES_LIST = [USAGE_ITEM_CONSUMES,\r
                        'CONSUMED',\r
                        'ALWAYS_CONSUMED',\r
-                       'ALWAYS_CONSUMES'                     \r
+                       'ALWAYS_CONSUMES'\r
                        ]\r
 \r
 USAGE_PRODUCES_LIST = [USAGE_ITEM_PRODUCES,\r
                        'PRODUCED',\r
                        'ALWAYS_PRODUCED',\r
-                       'ALWAYS_PRODUCES'                     \r
+                       'ALWAYS_PRODUCES'\r
                        ]\r
 \r
 USAGE_SOMETIMES_PRODUCES_LIST = [USAGE_ITEM_SOMETIMES_PRODUCES,\r
@@ -80,10 +77,18 @@ USAGE_SOMETIMES_CONSUMES_LIST = [USAGE_ITEM_SOMETIMES_CONSUMES,
 \r
 ITEM_UNDEFINED = 'UNDEFINED'\r
 \r
+TAB_PCD_VALIDRANGE = '@ValidRange'\r
+TAB_PCD_VALIDLIST = '@ValidList'\r
+TAB_PCD_EXPRESSION = '@Expression'\r
+TAB_PCD_PROMPT = '@Prompt'\r
+TAB_STR_TOKENCNAME = 'STR'\r
+TAB_STR_TOKENPROMPT = 'PROMPT'\r
+TAB_STR_TOKENHELP = 'HELP'\r
+TAB_STR_TOKENERR = 'ERR'\r
 \r
 #\r
-# Dictionary of usage tokens and their synonmys\r
-#  \r
+# Dictionary of usage tokens and their synonyms\r
+#\r
 ALL_USAGE_TOKENS = {\r
   "PRODUCES"           : "PRODUCES",\r
   "PRODUCED"           : "PRODUCES",\r
@@ -98,20 +103,20 @@ ALL_USAGE_TOKENS = {
   "SOMETIMES_CONSUMES" : "SOMETIMES_CONSUMES",\r
   "SOMETIMES_CONSUMED" : "SOMETIMES_CONSUMES",\r
   "SOMETIME_CONSUMES"  : "SOMETIMES_CONSUMES",\r
-  "UNDEFINED"          : "UNDEFINED" \r
+  "UNDEFINED"          : "UNDEFINED"\r
   }\r
 \r
 PROTOCOL_USAGE_TOKENS = {\r
   "TO_START"           : "TO_START",\r
   "BY_START"           : "BY_START"\r
   }\r
\r
+\r
 PROTOCOL_USAGE_TOKENS.update (ALL_USAGE_TOKENS)\r
-  \r
+\r
 #\r
 # Dictionary of GUID type tokens\r
-#  \r
-GUID_TYPE_TOKENS = {  \r
+#\r
+GUID_TYPE_TOKENS = {\r
   "Event"          : "Event",\r
   "File"           : "File",\r
   "FV"             : "FV",\r
@@ -123,31 +128,31 @@ GUID_TYPE_TOKENS = {
   "Hob:"           : "HOB",\r
   "SystemTable"    : "SystemTable",\r
   "TokenSpaceGuid" : "TokenSpaceGuid",\r
-  "UNDEFINED"      : "UNDEFINED" \r
+  "UNDEFINED"      : "UNDEFINED"\r
   }\r
-  \r
+\r
 #\r
 # Dictionary of Protocol Notify tokens and their synonyms\r
-#  \r
-PROTOCOL_NOTIFY_TOKENS = {  \r
+#\r
+PROTOCOL_NOTIFY_TOKENS = {\r
   "NOTIFY"          : "NOTIFY",\r
   "PROTOCOL_NOTIFY" : "NOTIFY",\r
-  "UNDEFINED"       : "UNDEFINED" \r
+  "UNDEFINED"       : "UNDEFINED"\r
   }\r
 \r
 #\r
 # Dictionary of PPI Notify tokens and their synonyms\r
-#  \r
-PPI_NOTIFY_TOKENS = {  \r
+#\r
+PPI_NOTIFY_TOKENS = {\r
   "NOTIFY"     : "NOTIFY",\r
   "PPI_NOTIFY" : "NOTIFY",\r
-  "UNDEFINED"  : "UNDEFINED" \r
+  "UNDEFINED"  : "UNDEFINED"\r
   }\r
 \r
 EVENT_TOKENS = {\r
   "EVENT_TYPE_PERIODIC_TIMER" : "EVENT_TYPE_PERIODIC_TIMER",\r
   "EVENT_TYPE_RELATIVE_TIMER" : "EVENT_TYPE_RELATIVE_TIMER",\r
-  "UNDEFINED"                 : "UNDEFINED" \r
+  "UNDEFINED"                 : "UNDEFINED"\r
   }\r
 \r
 BOOTMODE_TOKENS = {\r
@@ -171,16 +176,16 @@ BOOTMODE_TOKENS = {
   "RECOVERY_S4_RESUME"    : "RECOVERY_S4_RESUME",\r
   "RECOVERY_S5_RESUME"    : "RECOVERY_S5_RESUME",\r
   "RECOVERY_FLASH_UPDATE" : "RECOVERY_FLASH_UPDATE",\r
-  "UNDEFINED"             : "UNDEFINED" \r
+  "UNDEFINED"             : "UNDEFINED"\r
   }\r
 \r
-HOB_TOKENS = {  \r
+HOB_TOKENS = {\r
   "PHIT"                : "PHIT",\r
   "MEMORY_ALLOCATION"   : "MEMORY_ALLOCATION",\r
   "LOAD_PEIM"           : "LOAD_PEIM",\r
   "RESOURCE_DESCRIPTOR" : "RESOURCE_DESCRIPTOR",\r
   "FIRMWARE_VOLUME"     : "FIRMWARE_VOLUME",\r
-  "UNDEFINED"           : "UNDEFINED" \r
+  "UNDEFINED"           : "UNDEFINED"\r
   }\r
 \r
 ##\r
@@ -212,22 +217,22 @@ PCD_DIRVER_TYPE_LIST = ["PEI_PCD_DRIVER", "DXE_PCD_DRIVER"]
 #\r
 BOOT_MODE_LIST = ["FULL",\r
                   "MINIMAL",\r
-                  "NO_CHANGE", \r
-                  "DIAGNOSTICS", \r
-                  "DEFAULT", \r
+                  "NO_CHANGE",\r
+                  "DIAGNOSTICS",\r
+                  "DEFAULT",\r
                   "S2_RESUME",\r
-                  "S3_RESUME", \r
-                  "S4_RESUME", \r
-                  "S5_RESUME", \r
+                  "S3_RESUME",\r
+                  "S4_RESUME",\r
+                  "S5_RESUME",\r
                   "FLASH_UPDATE",\r
-                  "RECOVERY_FULL", \r
-                  "RECOVERY_MINIMAL", \r
+                  "RECOVERY_FULL",\r
+                  "RECOVERY_MINIMAL",\r
                   "RECOVERY_NO_CHANGE",\r
-                  "RECOVERY_DIAGNOSTICS", \r
+                  "RECOVERY_DIAGNOSTICS",\r
                   "RECOVERY_DEFAULT",\r
-                  "RECOVERY_S2_RESUME", \r
+                  "RECOVERY_S2_RESUME",\r
                   "RECOVERY_S3_RESUME",\r
-                  "RECOVERY_S4_RESUME", \r
+                  "RECOVERY_S4_RESUME",\r
                   "RECOVERY_S5_RESUME",\r
                   "RECOVERY_FLASH_UPDATE"]\r
 \r
@@ -240,9 +245,9 @@ EVENT_TYPE_LIST = ["EVENT_TYPE_PERIODIC_TIMER",
 ##\r
 # Hob Type List Items\r
 #\r
-HOB_TYPE_LIST = ["PHIT", \r
+HOB_TYPE_LIST = ["PHIT",\r
                  "MEMORY_ALLOCATION",\r
-                 "RESOURCE_DESCRIPTOR", \r
+                 "RESOURCE_DESCRIPTOR",\r
                  "FIRMWARE_VOLUME",\r
                  "LOAD_PEIM"]\r
 \r
@@ -269,27 +274,29 @@ PCD_USAGE_TYPE_LIST_OF_UPT = PCD_USAGE_TYPE_LIST_OF_MODULE
 ##\r
 # Binary File Type List\r
 #\r
-BINARY_FILE_TYPE_LIST = ["GUID", "PE32", "PIC", "TE", "DXE_DEPEX", "VER", "UI", "COMPAT16", "FV", "BIN", "RAW",\r
+BINARY_FILE_TYPE_LIST = ["PE32", "PIC", "TE", "DXE_DEPEX", "VER", "UI", "COMPAT16", "FV", "BIN", "RAW",\r
                          "ACPI", "ASL",\r
                          "PEI_DEPEX",\r
                          "SMM_DEPEX",\r
-                         "SUBTYPE_GUID"                                    \r
+                         "SUBTYPE_GUID",\r
+                         "DISPOSABLE"\r
                          ]\r
 BINARY_FILE_TYPE_LIST_IN_UDP = \\r
                         ["GUID", "FREEFORM",\r
                          "UEFI_IMAGE", "PE32", "PIC",\r
-                         "PEI_DEPEX", \r
+                         "PEI_DEPEX",\r
                          "DXE_DEPEX",\r
                          "SMM_DEPEX",\r
                          "FV", "TE",\r
-                         "BIN", "VER", "UI"                      \r
+                         "BIN", "VER", "UI"\r
                          ]\r
 \r
+SUBTYPE_GUID_BINARY_FILE_TYPE = "FREEFORM"\r
 ##\r
-# Possible values for COMPONENT_TYPE, and their descriptions, are listed in \r
-# the table, \r
-# "Component (module) Types." For each component, the BASE_NAME and \r
-# COMPONENT_TYPE \r
+# Possible values for COMPONENT_TYPE, and their descriptions, are listed in\r
+# the table,\r
+# "Component (module) Types." For each component, the BASE_NAME and\r
+# COMPONENT_TYPE\r
 # are required. The COMPONENT_TYPE definition is case sensitive.\r
 #\r
 COMPONENT_TYPE_LIST = [\r
@@ -328,6 +335,7 @@ TAB_EQUAL_SPLIT = '='
 TAB_DEQUAL_SPLIT = '=='\r
 TAB_VALUE_SPLIT = '|'\r
 TAB_COMMA_SPLIT = ','\r
+TAB_HORIZON_LINE_SPLIT = '-'\r
 TAB_SPACE_SPLIT = ' '\r
 TAB_UNDERLINE_SPLIT = '_'\r
 TAB_SEMI_COLON_SPLIT = ';'\r
@@ -341,7 +349,13 @@ TAB_BACK_SLASH = '/'
 TAB_SPECIAL_COMMENT = '##'\r
 TAB_HEADER_COMMENT = '@file'\r
 TAB_BINARY_HEADER_COMMENT = '@BinaryHeader'\r
-TAB_STAR = "*"\r
+TAB_STAR = '*'\r
+TAB_ENCODING_UTF16LE = 'utf_16_le'\r
+TAB_CAPHEX_START = '0X'\r
+TAB_HEX_START = '0x'\r
+TAB_PCD_ERROR = 'Error'\r
+TAB_PCD_ERROR_SECTION_COMMENT = 'Error message section'\r
+TAB_UNI_FILE_SUFFIXS = ['.uni', '.UNI', '.Uni']\r
 \r
 TAB_EDK_SOURCE = '$(EDK_SOURCE)'\r
 TAB_EFI_SOURCE = '$(EFI_SOURCE)'\r
@@ -354,10 +368,9 @@ TAB_ARCH_X64 = 'X64'
 TAB_ARCH_IPF = 'IPF'\r
 TAB_ARCH_ARM = 'ARM'\r
 TAB_ARCH_EBC = 'EBC'\r
-TAB_ARCH_AARCH64 = 'AARCH64'\r
 \r
 ARCH_LIST = \\r
-[TAB_ARCH_IA32, TAB_ARCH_X64, TAB_ARCH_IPF, TAB_ARCH_ARM, TAB_ARCH_EBC, TAB_ARCH_AARCH64]\r
+[TAB_ARCH_IA32, TAB_ARCH_X64, TAB_ARCH_IPF, TAB_ARCH_ARM, TAB_ARCH_EBC]\r
 \r
 SUP_MODULE_BASE = 'BASE'\r
 SUP_MODULE_SEC = 'SEC'\r
@@ -417,7 +430,7 @@ BINARY_FILE_TYPE_FV = 'FV'
 BINARY_FILE_TYPE_UI_LIST = [BINARY_FILE_TYPE_UNI_UI,\r
                             BINARY_FILE_TYPE_SEC_UI,\r
                             BINARY_FILE_TYPE_UI\r
-                            ] \r
+                            ]\r
 BINARY_FILE_TYPE_VER_LIST = [BINARY_FILE_TYPE_UNI_VER,\r
                             BINARY_FILE_TYPE_SEC_VER,\r
                             BINARY_FILE_TYPE_VER\r
@@ -442,7 +455,6 @@ TAB_SOURCES_X64 = TAB_SOURCES + TAB_SPLIT + TAB_ARCH_X64
 TAB_SOURCES_IPF = TAB_SOURCES + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_SOURCES_ARM = TAB_SOURCES + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_SOURCES_EBC = TAB_SOURCES + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_SOURCES_AARCH64 = TAB_SOURCES + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_BINARIES = 'Binaries'\r
 TAB_BINARIES_COMMON = TAB_BINARIES + TAB_SPLIT + TAB_ARCH_COMMON\r
@@ -451,7 +463,6 @@ TAB_BINARIES_X64 = TAB_BINARIES + TAB_SPLIT + TAB_ARCH_X64
 TAB_BINARIES_IPF = TAB_BINARIES + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_BINARIES_ARM = TAB_BINARIES + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_BINARIES_EBC = TAB_BINARIES + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_BINARIES_AARCH64 = TAB_BINARIES + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_INCLUDES = 'Includes'\r
 TAB_INCLUDES_COMMON = TAB_INCLUDES + TAB_SPLIT + TAB_ARCH_COMMON\r
@@ -460,7 +471,6 @@ TAB_INCLUDES_X64 = TAB_INCLUDES + TAB_SPLIT + TAB_ARCH_X64
 TAB_INCLUDES_IPF = TAB_INCLUDES + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_INCLUDES_ARM = TAB_INCLUDES + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_INCLUDES_EBC = TAB_INCLUDES + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_INCLUDES_AARCH64 = TAB_INCLUDES + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_GUIDS = 'Guids'\r
 TAB_GUIDS_COMMON = TAB_GUIDS + TAB_SPLIT + TAB_ARCH_COMMON\r
@@ -469,7 +479,6 @@ TAB_GUIDS_X64 = TAB_GUIDS + TAB_SPLIT + TAB_ARCH_X64
 TAB_GUIDS_IPF = TAB_GUIDS + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_GUIDS_ARM = TAB_GUIDS + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_GUIDS_EBC = TAB_GUIDS + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_GUIDS_AARCH64 = TAB_GUIDS + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_PROTOCOLS = 'Protocols'\r
 TAB_PROTOCOLS_COMMON = TAB_PROTOCOLS + TAB_SPLIT + TAB_ARCH_COMMON\r
@@ -478,7 +487,6 @@ TAB_PROTOCOLS_X64 = TAB_PROTOCOLS + TAB_SPLIT + TAB_ARCH_X64
 TAB_PROTOCOLS_IPF = TAB_PROTOCOLS + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_PROTOCOLS_ARM = TAB_PROTOCOLS + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_PROTOCOLS_EBC = TAB_PROTOCOLS + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_PROTOCOLS_AARCH64 = TAB_PROTOCOLS + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_PPIS = 'Ppis'\r
 TAB_PPIS_COMMON = TAB_PPIS + TAB_SPLIT + TAB_ARCH_COMMON\r
@@ -487,7 +495,6 @@ TAB_PPIS_X64 = TAB_PPIS + TAB_SPLIT + TAB_ARCH_X64
 TAB_PPIS_IPF = TAB_PPIS + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_PPIS_ARM = TAB_PPIS + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_PPIS_EBC = TAB_PPIS + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_PPIS_AARCH64 = TAB_PPIS + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_LIBRARY_CLASSES = 'LibraryClasses'\r
 TAB_LIBRARY_CLASSES_COMMON = TAB_LIBRARY_CLASSES + TAB_SPLIT + TAB_ARCH_COMMON\r
@@ -496,7 +503,6 @@ TAB_LIBRARY_CLASSES_X64 = TAB_LIBRARY_CLASSES + TAB_SPLIT + TAB_ARCH_X64
 TAB_LIBRARY_CLASSES_IPF = TAB_LIBRARY_CLASSES + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_LIBRARY_CLASSES_ARM = TAB_LIBRARY_CLASSES + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_LIBRARY_CLASSES_EBC = TAB_LIBRARY_CLASSES + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_LIBRARY_CLASSES_AARCH64 = TAB_LIBRARY_CLASSES + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_PACKAGES = 'Packages'\r
 TAB_PACKAGES_COMMON = TAB_PACKAGES + TAB_SPLIT + TAB_ARCH_COMMON\r
@@ -505,7 +511,6 @@ TAB_PACKAGES_X64 = TAB_PACKAGES + TAB_SPLIT + TAB_ARCH_X64
 TAB_PACKAGES_IPF = TAB_PACKAGES + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_PACKAGES_ARM = TAB_PACKAGES + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_PACKAGES_EBC = TAB_PACKAGES + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_PACKAGES_AARCH64 = TAB_PACKAGES + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_PCDS = 'Pcds'\r
 TAB_PCDS_FIXED_AT_BUILD = 'FixedAtBuild'\r
@@ -545,8 +550,6 @@ TAB_PCDS_FIXED_AT_BUILD_ARM = TAB_PCDS + TAB_PCDS_FIXED_AT_BUILD + \
 TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_PCDS_FIXED_AT_BUILD_EBC = TAB_PCDS + TAB_PCDS_FIXED_AT_BUILD + \\r
 TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_PCDS_FIXED_AT_BUILD_AARCH64 = TAB_PCDS + TAB_PCDS_FIXED_AT_BUILD + \\r
-TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_PCDS_PATCHABLE_IN_MODULE_NULL = TAB_PCDS + TAB_PCDS_PATCHABLE_IN_MODULE\r
 TAB_PCDS_PATCHABLE_IN_MODULE_COMMON = TAB_PCDS + TAB_PCDS_PATCHABLE_IN_MODULE \\r
@@ -561,8 +564,6 @@ TAB_PCDS_PATCHABLE_IN_MODULE_ARM = TAB_PCDS + TAB_PCDS_PATCHABLE_IN_MODULE + \
 TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_PCDS_PATCHABLE_IN_MODULE_EBC = TAB_PCDS + TAB_PCDS_PATCHABLE_IN_MODULE + \\r
 TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_PCDS_PATCHABLE_IN_MODULE_AARCH64 = TAB_PCDS + TAB_PCDS_PATCHABLE_IN_MODULE + \\r
-TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_PCDS_FEATURE_FLAG_NULL = TAB_PCDS + TAB_PCDS_FEATURE_FLAG\r
 TAB_PCDS_FEATURE_FLAG_COMMON = TAB_PCDS + TAB_PCDS_FEATURE_FLAG + TAB_SPLIT \\r
@@ -577,8 +578,6 @@ TAB_PCDS_FEATURE_FLAG_ARM = TAB_PCDS + TAB_PCDS_FEATURE_FLAG + TAB_SPLIT + \
 TAB_ARCH_ARM\r
 TAB_PCDS_FEATURE_FLAG_EBC = TAB_PCDS + TAB_PCDS_FEATURE_FLAG + TAB_SPLIT + \\r
 TAB_ARCH_EBC\r
-TAB_PCDS_FEATURE_FLAG_AARCH64 = TAB_PCDS + TAB_PCDS_FEATURE_FLAG + TAB_SPLIT + \\r
-TAB_ARCH_AARCH64\r
 \r
 TAB_PCDS_DYNAMIC_EX_NULL = TAB_PCDS + TAB_PCDS_DYNAMIC_EX\r
 TAB_PCDS_DYNAMIC_EX_DEFAULT_NULL = TAB_PCDS + TAB_PCDS_DYNAMIC_EX_DEFAULT\r
@@ -596,8 +595,6 @@ TAB_PCDS_DYNAMIC_EX_ARM = TAB_PCDS + TAB_PCDS_DYNAMIC_EX + TAB_SPLIT + \
 TAB_ARCH_ARM\r
 TAB_PCDS_DYNAMIC_EX_EBC = TAB_PCDS + TAB_PCDS_DYNAMIC_EX + TAB_SPLIT + \\r
 TAB_ARCH_EBC\r
-TAB_PCDS_DYNAMIC_EX_AARCH64 = TAB_PCDS + TAB_PCDS_DYNAMIC_EX + TAB_SPLIT + \\r
-TAB_ARCH_AARCH64\r
 \r
 TAB_PCDS_DYNAMIC_NULL = TAB_PCDS + TAB_PCDS_DYNAMIC\r
 TAB_PCDS_DYNAMIC_DEFAULT_NULL = TAB_PCDS + TAB_PCDS_DYNAMIC_DEFAULT\r
@@ -610,7 +607,6 @@ TAB_PCDS_DYNAMIC_X64 = TAB_PCDS + TAB_PCDS_DYNAMIC + TAB_SPLIT + TAB_ARCH_X64
 TAB_PCDS_DYNAMIC_IPF = TAB_PCDS + TAB_PCDS_DYNAMIC + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_PCDS_DYNAMIC_ARM = TAB_PCDS + TAB_PCDS_DYNAMIC + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_PCDS_DYNAMIC_EBC = TAB_PCDS + TAB_PCDS_DYNAMIC + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_PCDS_DYNAMIC_AARCH64 = TAB_PCDS + TAB_PCDS_DYNAMIC + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_PCD_DYNAMIC_TYPE_LIST = [TAB_PCDS_DYNAMIC_DEFAULT_NULL, \\r
                              TAB_PCDS_DYNAMIC_VPD_NULL, \\r
@@ -651,7 +647,6 @@ TAB_DEPEX_X64 = TAB_DEPEX + TAB_SPLIT + TAB_ARCH_X64
 TAB_DEPEX_IPF = TAB_DEPEX + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_DEPEX_ARM = TAB_DEPEX + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_DEPEX_EBC = TAB_DEPEX + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_DEPEX_AARCH64 = TAB_DEPEX + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_SKUIDS = 'SkuIds'\r
 \r
@@ -662,7 +657,6 @@ TAB_LIBRARIES_X64 = TAB_LIBRARIES + TAB_SPLIT + TAB_ARCH_X64
 TAB_LIBRARIES_IPF = TAB_LIBRARIES + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_LIBRARIES_ARM = TAB_LIBRARIES + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_LIBRARIES_EBC = TAB_LIBRARIES + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_LIBRARIES_AARCH64 = TAB_LIBRARIES + TAB_SPLIT + TAB_ARCH_AARCH64\r
 \r
 TAB_COMPONENTS = 'Components'\r
 TAB_COMPONENTS_COMMON = TAB_COMPONENTS + TAB_SPLIT + TAB_ARCH_COMMON\r
@@ -671,9 +665,6 @@ TAB_COMPONENTS_X64 = TAB_COMPONENTS + TAB_SPLIT + TAB_ARCH_X64
 TAB_COMPONENTS_IPF = TAB_COMPONENTS + TAB_SPLIT + TAB_ARCH_IPF\r
 TAB_COMPONENTS_ARM = TAB_COMPONENTS + TAB_SPLIT + TAB_ARCH_ARM\r
 TAB_COMPONENTS_EBC = TAB_COMPONENTS + TAB_SPLIT + TAB_ARCH_EBC\r
-TAB_COMPONENTS_AARCH64 = TAB_COMPONENTS + TAB_SPLIT + TAB_ARCH_AARCH64\r
-\r
-TAB_COMPONENTS_SOURCE_OVERRIDE_PATH = 'SOURCE_OVERRIDE_PATH'\r
 \r
 TAB_BUILD_OPTIONS = 'BuildOptions'\r
 \r
@@ -681,6 +672,8 @@ TAB_DEFINE = 'DEFINE'
 TAB_NMAKE = 'Nmake'\r
 TAB_USER_EXTENSIONS = 'UserExtensions'\r
 TAB_INCLUDE = '!include'\r
+TAB_PRIVATE = 'Private'\r
+TAB_INTEL = 'Intel'\r
 \r
 #\r
 # Common Define\r
@@ -699,6 +692,7 @@ TAB_INF_DEFINES_EFI_SPECIFICATION_VERSION = 'EFI_SPECIFICATION_VERSION'
 TAB_INF_DEFINES_UEFI_SPECIFICATION_VERSION = 'UEFI_SPECIFICATION_VERSION'\r
 TAB_INF_DEFINES_PI_SPECIFICATION_VERSION = 'PI_SPECIFICATION_VERSION'\r
 TAB_INF_DEFINES_EDK_RELEASE_VERSION = 'EDK_RELEASE_VERSION'\r
+TAB_INF_DEFINES_MODULE_UNI_FILE    = 'MODULE_UNI_FILE'\r
 TAB_INF_DEFINES_BINARY_MODULE = 'BINARY_MODULE'\r
 TAB_INF_DEFINES_LIBRARY_CLASS = 'LIBRARY_CLASS'\r
 TAB_INF_DEFINES_COMPONENT_TYPE = 'COMPONENT_TYPE'\r
@@ -710,7 +704,7 @@ TAB_INF_DEFINES_FV_EXT = 'FV_EXT'
 TAB_INF_DEFINES_SOURCE_FV = 'SOURCE_FV'\r
 TAB_INF_DEFINES_PACKAGE   = 'PACKAGE'\r
 TAB_INF_DEFINES_VERSION_NUMBER = 'VERSION_NUMBER'\r
-TAB_INF_DEFINES_VERSION = 'VERSION'         \r
+TAB_INF_DEFINES_VERSION = 'VERSION'\r
 TAB_INF_DEFINES_VERSION_STRING = 'VERSION_STRING'\r
 TAB_INF_DEFINES_PCD_IS_DRIVER = 'PCD_IS_DRIVER'\r
 TAB_INF_DEFINES_TIANO_EDK1_FLASHMAP_H = 'TIANO_EDK1_FLASHMAP_H'\r
@@ -718,9 +712,9 @@ TAB_INF_DEFINES_ENTRY_POINT = 'ENTRY_POINT'
 TAB_INF_DEFINES_UNLOAD_IMAGE = 'UNLOAD_IMAGE'\r
 TAB_INF_DEFINES_CONSTRUCTOR = 'CONSTRUCTOR'\r
 TAB_INF_DEFINES_DESTRUCTOR = 'DESTRUCTOR'\r
-TAB_INF_DEFINES_PCI_VENDOR_ID  = 'PCI_VENDOR_ID'    \r
-TAB_INF_DEFINES_PCI_DEVICE_ID  = 'PCI_DEVICE_ID'    \r
-TAB_INF_DEFINES_PCI_CLASS_CODE = 'PCI_CLASS_CODE'   \r
+TAB_INF_DEFINES_PCI_VENDOR_ID  = 'PCI_VENDOR_ID'\r
+TAB_INF_DEFINES_PCI_DEVICE_ID  = 'PCI_DEVICE_ID'\r
+TAB_INF_DEFINES_PCI_CLASS_CODE = 'PCI_CLASS_CODE'\r
 TAB_INF_DEFINES_PCI_REVISION   = 'PCI_REVISION'\r
 TAB_INF_DEFINES_PCI_COMPRESS   = 'PCI_COMPRESS'\r
 TAB_INF_DEFINES_DEFINE = 'DEFINE'\r
@@ -750,7 +744,7 @@ TAB_DEC_DEFINES_DEC_SPECIFICATION = 'DEC_SPECIFICATION'
 TAB_DEC_DEFINES_PACKAGE_NAME = 'PACKAGE_NAME'\r
 TAB_DEC_DEFINES_PACKAGE_GUID = 'PACKAGE_GUID'\r
 TAB_DEC_DEFINES_PACKAGE_VERSION = 'PACKAGE_VERSION'\r
-TAB_DEC_DEFINES_PKG_UNI_FILE    = 'PKG_UNI_FILE'\r
+TAB_DEC_DEFINES_PKG_UNI_FILE    = 'PACKAGE_UNI_FILE'\r
 TAB_DEC_PACKAGE_ABSTRACT = 'STR_PACKAGE_ABSTRACT'\r
 TAB_DEC_PACKAGE_DESCRIPTION = 'STR_PACKAGE_DESCRIPTION'\r
 TAB_DEC_PACKAGE_LICENSE = 'STR_PACKAGE_LICENSE'\r
@@ -817,20 +811,21 @@ TAB_IF_EXIST = '!if exist'
 TAB_UNKNOWN = 'UNKNOWN'\r
 \r
 #\r
-# Header section (virtual section for abstract, description, copyright, \r
+# Header section (virtual section for abstract, description, copyright,\r
 # license)\r
 #\r
 TAB_HEADER = 'Header'\r
 TAB_HEADER_ABSTRACT = 'Abstract'\r
-TAB_HEADER_DESCRIPTION = 'Description' \r
+TAB_HEADER_DESCRIPTION = 'Description'\r
 TAB_HEADER_COPYRIGHT = 'Copyright'\r
 TAB_HEADER_LICENSE = 'License'\r
 TAB_BINARY_HEADER_IDENTIFIER = 'BinaryHeader'\r
 TAB_BINARY_HEADER_USERID = 'TianoCore'\r
+\r
 #\r
 # Build database path\r
 #\r
-DATABASE_PATH = ":memory:" \r
+DATABASE_PATH = ":memory:"\r
 #\r
 # used by ECC\r
 #\r
@@ -852,7 +847,7 @@ TAB_DEPENDENCY_EXPRESSION_FILE = "DEPENDENCY-EXPRESSION-FILE"
 TAB_UNKNOWN_FILE = "UNKNOWN-TYPE-FILE"\r
 TAB_DEFAULT_BINARY_FILE = "_BINARY_FILE_"\r
 #\r
-# used to indicate the state of processing header comment section of dec, \r
+# used to indicate the state of processing header comment section of dec,\r
 # inf files\r
 #\r
 HEADER_COMMENT_NOT_STARTED = -1\r
@@ -940,7 +935,6 @@ MODEL_META_DATA_PACKAGE = 5011
 MODEL_META_DATA_NMAKE = 5012\r
 MODEL_META_DATA_CONDITIONAL_STATEMENT_ELSEIF = 50013\r
 MODEL_META_DATA_CONDITIONAL_STATEMENT_ENDIF = 5014\r
-MODEL_META_DATA_COMPONENT_SOURCE_OVERRIDE_PATH = 5015\r
 \r
 TOOL_FAMILY_LIST = ["MSFT",\r
                     "INTEL",\r
@@ -950,4 +944,6 @@ TOOL_FAMILY_LIST = ["MSFT",
 \r
 TYPE_HOB_SECTION = 'HOB'\r
 TYPE_EVENT_SECTION = 'EVENT'\r
-TYPE_BOOTMODE_SECTION = 'BOOTMODE' \r
+TYPE_BOOTMODE_SECTION = 'BOOTMODE'\r
+\r
+PCD_ERR_CODE_MAX_SIZE = 4294967295\r