Adds BaseAlwaysFalseDepexLib Library which always
adds DEPEX to FALSE.
Using this library will prevent module/driver being dispatched.
Usage:
MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteSmm.inf {
<LibraryClasses>
NULL|AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.inf
}
Cc: Abner Chang <[email protected]>
Cc: Paul Grimes <[email protected]>
Signed-off-by: Abdul Lateef Attar <[email protected]>
---
.../AMD/AmdPlatformPkg/AmdPlatformPkg.dsc | 2 ++
.../BaseAlwaysFalseDepexLib.c | 20 +++++++++++
.../BaseAlwaysFalseDepexLib.inf | 35 +++++++++++++++++++
.../BaseAlwaysFalseDepexLib.uni | 12 +++++++
4 files changed, 69 insertions(+)
create mode 100644
Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.c
create mode 100644
Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.inf
create mode 100644
Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.uni
diff --git a/Platform/AMD/AmdPlatformPkg/AmdPlatformPkg.dsc
b/Platform/AMD/AmdPlatformPkg/AmdPlatformPkg.dsc
index 151235b791..e39ad93c83 100644
--- a/Platform/AMD/AmdPlatformPkg/AmdPlatformPkg.dsc
+++ b/Platform/AMD/AmdPlatformPkg/AmdPlatformPkg.dsc
@@ -24,6 +24,7 @@
!include MdePkg/MdeLibs.dsc.inc
[LibraryClasses.Common]
+
AlwaysFalseDepexLib|AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.inf
BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
@@ -46,6 +47,7 @@
MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
[Components]
+ AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.inf
AmdPlatformPkg/Universal/LogoDxe/JpegLogoDxe.inf
# Server platform JPEG logo driver
AmdPlatformPkg/Universal/LogoDxe/LogoDxe.inf
# Server platfrom Bitmap logo driver
AmdPlatformPkg/Universal/LogoDxe/S3LogoDxe.inf
diff --git
a/Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.c
b/Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.c
new file mode 100644
index 0000000000..e9f176223d
--- /dev/null
+++
b/Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.c
@@ -0,0 +1,20 @@
+/** @file
+ No functionality of this file.
+
+ Copyright (C) 2023 - 2024 Advanced Micro Devices, Inc. All rights reserved.
+
+ SPDX-License-Identifier: BSD-2-Clause-Patent
+
+**/
+
+#include <Base.h>
+
+/**
+ Empty function to allow Library Class to be valid.
+**/
+VOID
+AlwaysFalsePlaceHolderFunction (
+ VOID
+ )
+{
+}
diff --git
a/Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.inf
b/Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.inf
new file mode 100644
index 0000000000..4e86256497
--- /dev/null
+++
b/Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.inf
@@ -0,0 +1,35 @@
+## @file
+# This is the module used to consume the always false dependency.
+# Used to not dispatching the specific module included by using
+# external DSC/FDF include file.
+# For example: MinPlatformPkg/Include/Dsc/CoreCommonLib.dsc
+#
+# The module linked with the NULL class BaseAlwaysFalseDepexLib is still
+# put in the FV however it won't be executed.
+#
+# Copyright (C) 2023 - 2024 Advanced Micro Devices, Inc. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+[Defines]
+ INF_VERSION = 0x00010005
+ BASE_NAME = BaseAlwaysFalseDepexLib
+ MODULE_UNI_FILE = BaseAlwaysFalseDepexLib.uni
+ FILE_GUID = 74DC464F-BC11-4E7D-8829-DD2F911988A8
+ MODULE_TYPE = BASE
+ VERSION_STRING = 1.0
+ LIBRARY_CLASS = AlwaysFalseDepexLib
+
+#
+# VALID_ARCHITECTURES = X64
+#
+
+[Sources]
+ BaseAlwaysFalseDepexLib.c
+
+[Packages]
+ MdePkg/MdePkg.dec
+
+[Depex]
+ FALSE
diff --git
a/Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.uni
b/Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.uni
new file mode 100644
index 0000000000..5c7ccf1840
--- /dev/null
+++
b/Platform/AMD/AmdPlatformPkg/Library/BaseAlwaysFalseDepexLib/BaseAlwaysFalseDepexLib.uni
@@ -0,0 +1,12 @@
+## @file
+#
+# Copyright (C) 2023 - 2024 Advanced Micro Devices, Inc. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-2-Clause-Patent
+#
+##
+
+#string STR_MODULE_ABSTRACT #language en-US "Library instance to
provide FALSE Depex to prevent running of driver."
+
+#string STR_MODULE_DESCRIPTION #language en-US "Library instance to
provide FALSE Depex to prevent running of driver."
+
--
2.34.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#118883): https://edk2.groups.io/g/devel/message/118883
Mute This Topic: https://groups.io/mt/106090921/21656
Group Owner: [email protected]
Unsubscribe: https://edk2.groups.io/g/devel/unsub [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-