From: Laszlo Ersek <ler...@redhat.com>

Allow enable XTerm resize sequences on terminal mode
changes via QEMU command line

Signed-off-by: Laszlo Ersek <ler...@redhat.com>

Pawel Polawski: Updated commit message for re-submission

Cc: Ard Biesheuvel <ardb+tianoc...@kernel.org>
Cc: Jiewen Yao <jiewen....@intel.com>
Cc: Jordan Justen <jordan.l.jus...@intel.com>
Cc: Gerd Hoffmann <kra...@redhat.com>

Signed-off-by: Paweł Poławski <ppola...@redhat.com>
---
 OvmfPkg/AmdSev/AmdSevX64.dsc        |  1 +
 OvmfPkg/CloudHv/CloudHvX64.dsc      |  1 +
 OvmfPkg/IntelTdx/IntelTdxX64.dsc    |  1 +
 OvmfPkg/Microvm/MicrovmX64.dsc      |  2 +-
 OvmfPkg/OvmfPkgIa32.dsc             |  1 +
 OvmfPkg/OvmfPkgIa32X64.dsc          |  1 +
 OvmfPkg/OvmfPkgX64.dsc              |  1 +
 OvmfPkg/PlatformPei/PlatformPei.inf |  1 +
 OvmfPkg/PlatformPei/Platform.c      | 13 +++++++++++++
 9 files changed, 21 insertions(+), 1 deletion(-)

diff --git a/OvmfPkg/AmdSev/AmdSevX64.dsc b/OvmfPkg/AmdSev/AmdSevX64.dsc
index 8f7cae787e97..41ad97b47dc9 100644
--- a/OvmfPkg/AmdSev/AmdSevX64.dsc
+++ b/OvmfPkg/AmdSev/AmdSevX64.dsc
@@ -475,6 +475,7 @@
 [PcdsDynamicDefault]

   gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0

 

+  gEfiMdeModulePkgTokenSpaceGuid.PcdResizeXterm|FALSE

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0

diff --git a/OvmfPkg/CloudHv/CloudHvX64.dsc b/OvmfPkg/CloudHv/CloudHvX64.dsc
index ce277cb2398b..faab59ae8d74 100644
--- a/OvmfPkg/CloudHv/CloudHvX64.dsc
+++ b/OvmfPkg/CloudHv/CloudHvX64.dsc
@@ -582,6 +582,7 @@
   #   ($(SMM_REQUIRE) == FALSE)

   gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0

 

+  gEfiMdeModulePkgTokenSpaceGuid.PcdResizeXterm|FALSE

 !if $(SMM_REQUIRE) == FALSE

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0

diff --git a/OvmfPkg/IntelTdx/IntelTdxX64.dsc b/OvmfPkg/IntelTdx/IntelTdxX64.dsc
index 345892651520..4c4da09b9024 100644
--- a/OvmfPkg/IntelTdx/IntelTdxX64.dsc
+++ b/OvmfPkg/IntelTdx/IntelTdxX64.dsc
@@ -474,6 +474,7 @@
   #   ($(SMM_REQUIRE) == FALSE)

   gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0

 

+  gEfiMdeModulePkgTokenSpaceGuid.PcdResizeXterm|FALSE

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0

diff --git a/OvmfPkg/Microvm/MicrovmX64.dsc b/OvmfPkg/Microvm/MicrovmX64.dsc
index 994a02d30107..1d5ba0e810a1 100644
--- a/OvmfPkg/Microvm/MicrovmX64.dsc
+++ b/OvmfPkg/Microvm/MicrovmX64.dsc
@@ -579,7 +579,7 @@
   # only set when

   #   ($(SMM_REQUIRE) == FALSE)

   gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0

-

+  gEfiMdeModulePkgTokenSpaceGuid.PcdResizeXterm|FALSE

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase64|0

diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc
index 6f774baf90f5..e8a074153a77 100644
--- a/OvmfPkg/OvmfPkgIa32.dsc
+++ b/OvmfPkg/OvmfPkgIa32.dsc
@@ -601,6 +601,7 @@
   #   ($(SMM_REQUIRE) == FALSE)

   gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0

 

+  gEfiMdeModulePkgTokenSpaceGuid.PcdResizeXterm|FALSE

 !if $(SMM_REQUIRE) == FALSE

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0

diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc
index c851764dec05..0197997793a9 100644
--- a/OvmfPkg/OvmfPkgIa32X64.dsc
+++ b/OvmfPkg/OvmfPkgIa32X64.dsc
@@ -609,6 +609,7 @@
   #   ($(SMM_REQUIRE) == FALSE)

   gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0

 

+  gEfiMdeModulePkgTokenSpaceGuid.PcdResizeXterm|FALSE

 !if $(SMM_REQUIRE) == FALSE

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0

diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc
index 63c3a47aea30..fade13b4e80c 100644
--- a/OvmfPkg/OvmfPkgX64.dsc
+++ b/OvmfPkg/OvmfPkgX64.dsc
@@ -631,6 +631,7 @@
   #   ($(SMM_REQUIRE) == FALSE)

   gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved|0

 

+  gEfiMdeModulePkgTokenSpaceGuid.PcdResizeXterm|FALSE

 !if $(SMM_REQUIRE) == FALSE

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase64|0

diff --git a/OvmfPkg/PlatformPei/PlatformPei.inf 
b/OvmfPkg/PlatformPei/PlatformPei.inf
index 1fadadeb5565..3e28e1596d32 100644
--- a/OvmfPkg/PlatformPei/PlatformPei.inf
+++ b/OvmfPkg/PlatformPei/PlatformPei.inf
@@ -99,6 +99,7 @@
   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize

   gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize

   gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved

+  gEfiMdeModulePkgTokenSpaceGuid.PcdResizeXterm

   gEfiMdeModulePkgTokenSpaceGuid.PcdDxeIplSwitchToLongMode

   gEfiMdeModulePkgTokenSpaceGuid.PcdUse1GPageTable

   gEfiMdeModulePkgTokenSpaceGuid.PcdSetNxForStack

diff --git a/OvmfPkg/PlatformPei/Platform.c b/OvmfPkg/PlatformPei/Platform.c
index b1f8140d6041..e5132d95a8f8 100644
--- a/OvmfPkg/PlatformPei/Platform.c
+++ b/OvmfPkg/PlatformPei/Platform.c
@@ -41,6 +41,18 @@
 

 #include "Platform.h"

 

+#define UPDATE_BOOLEAN_PCD_FROM_FW_CFG(TokenName)                   \

+          do {                                                      \

+            BOOLEAN       Setting;                                  \

+            RETURN_STATUS PcdStatus;                                \

+                                                                    \

+            if (!RETURN_ERROR (QemuFwCfgParseBool (                 \

+                              "opt/ovmf/" #TokenName, &Setting))) { \

+              PcdStatus = PcdSetBoolS (TokenName, Setting);         \

+              ASSERT_RETURN_ERROR (PcdStatus);                      \

+            }                                                       \

+          } while (0)

+

 EFI_HOB_PLATFORM_INFO  mPlatformInfoHob = { 0 };

 

 EFI_PEI_PPI_DESCRIPTOR  mPpiBootMode[] = {

@@ -376,6 +388,7 @@ InitializePlatform (
     MemTypeInfoInitialization ();

     MemMapInitialization (&mPlatformInfoHob);

     NoexecDxeInitialization ();

+    UPDATE_BOOLEAN_PCD_FROM_FW_CFG (PcdResizeXterm);

   }

 

   InstallClearCacheCallback ();

-- 
2.38.1



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


Reply via email to