Adding a new PCD as switch to control Trlminal.

Cc: Jian J Wang <jian.j.w...@intel.com>
Cc: Liming Gao <gaolim...@byosoft.com.cn>
Cc: Zhichao Gao <zhichao....@intel.com>
Cc: Ray Ni <ray...@intel.com>
Signed-off-by: Wenyi Xie <xiewen...@huawei.com>
---
 MdeModulePkg/MdeModulePkg.dec                              | 4 ++++
 MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf | 1 +
 MdeModulePkg/Universal/Console/TerminalDxe/Terminal.c      | 4 ++++
 3 files changed, 9 insertions(+)

diff --git a/MdeModulePkg/MdeModulePkg.dec b/MdeModulePkg/MdeModulePkg.dec
index 58e6ab004882..c4cf7f474a43 100644
--- a/MdeModulePkg/MdeModulePkg.dec
+++ b/MdeModulePkg/MdeModulePkg.dec
@@ -2161,6 +2161,10 @@ [PcdsDynamic, PcdsDynamicEx]
   # @Prompt GHCB Pool Size
   gEfiMdeModulePkgTokenSpaceGuid.PcdGhcbSize|0|UINT64|0x00030008
 
+  ## This dynamic PCD holds the Switch which decide whether to using Terminal 
or not.
+  # @Prompt Terminal Switch
+  gEfiMdeModulePkgTokenSpaceGuid.PcdTerminalSwitch|TRUE|BOOLEAN|0x01100002
+
 [PcdsDynamicEx]
   ## This dynamic PCD enables the default variable setting.
   #  Its value is the default store ID value. The default value is zero as 
Standard default.
diff --git a/MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf 
b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
index b2a8aeba8510..36f6875de61b 100644
--- a/MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
+++ b/MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
@@ -87,6 +87,7 @@ [Protocols]
 [Pcd]
   gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType           ## 
SOMETIMES_CONSUMES
   gEfiMdeModulePkgTokenSpaceGuid.PcdErrorCodeSetVariable    ## CONSUMES
+  gEfiMdeModulePkgTokenSpaceGuid.PcdTerminalSwitch          ## CONSUMES
 
 # [Event]
 # # Relative timer event set by UnicodeToEfiKey(), used to be one 2 seconds 
input timeout.
diff --git a/MdeModulePkg/Universal/Console/TerminalDxe/Terminal.c 
b/MdeModulePkg/Universal/Console/TerminalDxe/Terminal.c
index e2d779c78378..c861eb00d6d2 100644
--- a/MdeModulePkg/Universal/Console/TerminalDxe/Terminal.c
+++ b/MdeModulePkg/Universal/Console/TerminalDxe/Terminal.c
@@ -1344,6 +1344,10 @@ InitializeTerminal (
 {
   EFI_STATUS  Status;
 
+  if (!PcdGetBool(PcdTerminalSwitch)) {
+    return EFI_UNSUPPORTED;
+  }
+
   //
   // Install driver model protocol(s).
   //
-- 
2.20.1.windows.1



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#94990): https://edk2.groups.io/g/devel/message/94990
Mute This Topic: https://groups.io/mt/94256050/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to