2 # CI configuration for MdePkg
4 # Copyright (c) Microsoft Corporation
5 # Copyright (c) 2020, Intel Corporation. All rights reserved.<BR>
6 # Copyright (c) 2021, Arm Limited. All rights reserved.<BR>
7 # Copyright (c) 2023, Loongson Technology Corporation Limited. All rights reserved.<BR>
8 # SPDX-License-Identifier: BSD-2-Clause-Patent
11 ## options defined .pytool/Plugin/LicenseCheck
16 ## Exception sample looks like below:
18 ## "<ErrorID>", "<KeyWord>"
27 "8005", "EFI_BLUETOOTH_LE_SCAN_CALLBACK_INFORMATION.RSSI",
29 "8005", "va_list.__ap",
30 "8005", "__stack_chk_guard",
31 "8005", "BASE_LIBRARY_JUMP_BUFFER.S0",
32 "8005", "BASE_LIBRARY_JUMP_BUFFER.S1",
33 "8005", "BASE_LIBRARY_JUMP_BUFFER.S2",
34 "8005", "BASE_LIBRARY_JUMP_BUFFER.S3",
35 "8005", "BASE_LIBRARY_JUMP_BUFFER.S4",
36 "8005", "BASE_LIBRARY_JUMP_BUFFER.S5",
37 "8005", "BASE_LIBRARY_JUMP_BUFFER.S6",
38 "8005", "BASE_LIBRARY_JUMP_BUFFER.S7",
39 "8005", "BASE_LIBRARY_JUMP_BUFFER.S8",
40 "8005", "BASE_LIBRARY_JUMP_BUFFER.SP",
41 "8005", "BASE_LIBRARY_JUMP_BUFFER.FP",
42 "8005", "BASE_LIBRARY_JUMP_BUFFER.RA",
43 "8001", "MSG_IPv6_DP",
44 "8001", "MSG_IPv4_DP",
45 "8001", "DEFAULT_ToS",
46 "8001", "EFI_SERIAL_IO_PROTOCOL_REVISION1p1",
47 "8001", "EFI_ABS_AltActive",
48 "8001", "EFI_ABSP_SupportsAltActive",
49 "8001", "_ReadWriteBarrier",
52 "7007", "_EFI_LEGACY_SPI_CONTROLLER_PROTOCOL",
53 "7007", "_EFI_LEGACY_SPI_FLASH_PROTOCOL",
54 "7007", "_EFI_SPI_NOR_FLASH_PROTOCOL",
55 "7007", "_EFI_SPI_HC_PROTOCOL",
57 "4002", "_ReturnAddress"
59 ## Both file path and directory path are accepted.
61 "Include/IndustryStandard/Acpi64.h",
62 "Include/IndustryStandard/Acpi65.h",
63 "Include/IndustryStandard/Tpm12.h",
64 "Include/IndustryStandard/Tpm20.h",
65 "Include/IndustryStandard/IoRemappingTable.h",
66 "Include/IndustryStandard/UefiTcgPlatform.h",
67 "Include/Library/PcdLib.h",
68 "Include/Library/SafeIntLib.h",
69 "Include/Protocol/DebugSupport.h",
70 "Test/UnitTest/Library/BaseSafeIntLib/TestBaseSafeIntLib.c"
73 ## options defined ci/Plugin/CompilerPlugin
75 "DscPath": "MdePkg.dsc"
78 ## options defined ci/Plugin/HostUnitTestCompilerPlugin
79 "HostUnitTestCompilerPlugin": {
80 "DscPath": "Test/MdePkgHostTest.dsc"
83 ## options defined ci/Plugin/CharEncodingCheck
84 "CharEncodingCheck": {
88 ## options defined ci/Plugin/DependencyCheck
90 "AcceptableDependencies": [
93 # For host based unit tests
94 "AcceptableDependencies-HOST_APPLICATION":[
95 "UnitTestFrameworkPkg/UnitTestFrameworkPkg.dec"
97 # For UEFI shell based apps
98 "AcceptableDependencies-UEFI_APPLICATION":[],
102 ## options defined ci/Plugin/DscCompleteCheck
103 "DscCompleteCheck": {
105 "DscPath": "MdePkg.dsc"
108 ## options defined ci/Plugin/HostUnitTestDscCompleteCheck
109 "HostUnitTestDscCompleteCheck": {
111 "DscPath": "Test/MdePkgHostTest.dsc"
114 ## options defined ci/Plugin/GuidCheck
117 "gEfiFirmwareVolumeTopFileGuid" # sec modules must be set to this guid
119 "IgnoreGuidValue": ["00000000-0000-0000-0000-000000000000"],
120 "IgnoreFoldersAndFiles": [],
121 "IgnoreDuplicates": [
122 "gEfiFirmwareVolumeBlockProtocolGuid=gEfiFirmwareVolumeBlock2ProtocolGuid",
123 "gEfiMmAccessProtocolGuid=gEfiSmmAccess2ProtocolGuid",
124 "gEfiSmmCommunicationProtocolGuid=gEfiMmCommunicationProtocolGuid",
125 "gEfiMmPciRootBridgeIoProtocolGuid=gEfiSmmPciRootBridgeIoProtocolGuid",
126 "gEfiTrEEProtocolGuid=gEfiTcg2ProtocolGuid",
127 "gEfiSmmPowerButtonDispatch2ProtocolGuid=gEfiMmPowerButtonDispatchProtocolGuid",
128 "gEfiSmmBase2ProtocolGuid=gEfiMmBaseProtocolGuid",
129 "gEfiSmmUsbDispatch2ProtocolGuid=gEfiMmUsbDispatchProtocolGuid",
130 "gEfiSmmCpuProtocolGuid=gEfiMmCpuProtocolGuid",
131 "gEfiAcpiTableGuid=gEfiAcpi20TableGuid",
132 "gEfiSmmControl2ProtocolGuid=gEfiMmControlProtocolGuid",
133 "gEfiSmmStandbyButtonDispatch2ProtocolGuid=gEfiMmStandbyButtonDispatchProtocolGuid",
134 "gEfiSmmStatusCodeProtocolGuid=gEfiMmStatusCodeProtocolGuid",
135 "gEfiDxeSmmReadyToLockProtocolGuid=gEfiDxeMmReadyToLockProtocolGuid",
136 "gEfiSmmIoTrapDispatch2ProtocolGuid=gEfiMmIoTrapDispatchProtocolGuid",
137 "gEfiSmmReadyToLockProtocolGuid=gEfiMmReadyToLockProtocolGuid",
138 "gEfiSmmSxDispatch2ProtocolGuid=gEfiMmSxDispatchProtocolGuid",
139 "gEfiPeiCapsulePpiGuid=gPeiCapsulePpiGuid",
140 "gEfiSmmCpuIo2ProtocolGuid=gEfiMmCpuIoProtocolGuid",
141 "gEfiSmmRscHandlerProtocolGuid=gEfiMmRscHandlerProtocolGuid",
142 "gEfiSmmConfigurationProtocolGuid=gEfiMmConfigurationProtocolGuid",
143 "gEfiSmmGpiDispatch2ProtocolGuid=gEfiMmGpiDispatchProtocolGuid",
144 "gEfiSmmEndOfDxeProtocolGuid=gEfiMmEndOfDxeProtocolGuid",
145 "gEfiSmmSwDispatch2ProtocolGuid=gEfiMmSwDispatchProtocolGuid",
146 "gEfiDebugPortProtocolGuid=gEfiDebugPortVariableGuid=gEfiDebugPortDevicePathGuid", ## is this a bug
147 "gEfiProcessorSpecificErrorSectionGuid=gEfiIa32X64ProcessorErrorSectionGuid", ## is this a bug
148 "gEfiSmmPeriodicTimerDispatch2ProtocolGuid=gEfiMmPeriodicTimerDispatchProtocolGuid",
149 "gEfiPeiMmAccessPpiGuid=gPeiSmmAccessPpiGuid",
150 "gPeiSmmControlPpiGuid=gEfiPeiMmControlPpiGuid",
151 "gEfiPeiMmCommunicationPpiGuid=gEfiPeiSmmCommunicationPpiGuid",
155 ## options defined ci/Plugin/LibraryClassCheck
156 "LibraryClassCheck": {
157 "IgnoreHeaderFile": []
160 ## options defined ci/Plugin/SpellCheck
162 "AuditOnly": True, # Fails test but run in AuditOnly mode to collect log
163 "IgnoreFiles": [], # use gitignore syntax to ignore errors in matching files
164 "ExtendWords": [], # words to extend to the dictionary for this package
165 "IgnoreStandardPaths": [], # Standard Plugin defined paths that should be ignore
166 "AdditionalIncludePaths": [] # Additional paths to spell check (wildcards supported)