public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* Re: [edk2-devel] [edk2-test][PATCH v1] uefi-sct/SctPkg: Allow SimpleTextOut SetMode to return EFI_UNSUPPORTED
       [not found] <16C955E76B71968A.28404@groups.io>
@ 2022-01-31 10:58 ` Sunny Wang
  2022-01-31 13:21   ` G Edhaya Chandran
  0 siblings, 1 reply; 3+ messages in thread
From: Sunny Wang @ 2022-01-31 10:58 UTC (permalink / raw)
  To: devel@edk2.groups.io, Sunny Wang
  Cc: G Edhaya Chandran, Barton Gao, Carolyn Gjertsen,
	Heinrich Schuchardt, Samer El-Haj-Mahmoud, Sunny Wang

I'm just aware that it is difficult to review this patch as it includes white space changes (Trimming the trailing space and transferring TABs to spaces) for edk2 coding-standard compliance.
Therefore, please use the link below that hides white spaces changes to review the changes. Thanks for Edhaya's offline reminder!

https://github.com/sunnywang-arm/edk2-test/pull/1/files?diff=unified&w=1

Best Regards,
Sunny
-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Sunny Wang via groups.io
Sent: 11 January 2022 21:53
To: devel@edk2.groups.io
Cc: Sunny Wang <Sunny.Wang@arm.com>; G Edhaya Chandran <Edhaya.Chandran@arm.com>; Barton Gao <gaojie@byosoft.com.cn>; Carolyn Gjertsen <Carolyn.Gjertsen@amd.com>; Heinrich Schuchardt <heinrich.schuchardt@canonical.com>; Samer El-Haj-Mahmoud <Samer.El-Haj-Mahmoud@arm.com>; Sunny Wang <Sunny.Wang@arm.com>
Subject: [edk2-devel] [edk2-test][PATCH v1] uefi-sct/SctPkg: Allow SimpleTextOut SetMode to return EFI_UNSUPPORTED

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3738

The SimpleTestOut test cases don't allow SetMode to return
EFI_UNSUPPORTED, which doesn't comply with UEFI spec.

UEFI spec allows EFI_SIMPLE_TEXT_OUT_PROTOCOL.SetMode function to
return EFI_UNSUPPORTED for the condition below:

if the output devices support 80x50, that is defined to be mode 1.
All other text dimensions supported by the device will follow as
modes 2 and above. If an output device supports modes 2 and above,
but does not support 80x50, then querying for mode 1 will return
EFI_UNSUPPORTED.

Therefore, update the test cases to fix this issue.

Cc: G Edhaya Chandran <edhaya.chandran@arm.com>
Cc: Barton Gao <gaojie@byosoft.com.cn>
Cc: Carolyn Gjertsen <Carolyn.Gjertsen@amd.com>
Cc: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Cc: Samer El-Haj-Mahmoud <samer.el-haj-mahmoud@arm.com>

Signed-off-by: Sunny Wang <sunny.wang@arm.com>
---
 .../SimpleTextOutBBTestConformance_efi.c      |  13 +-
 .../SimpleTextOutBBTestConformance_uefi.c     |  15 +-
 .../SimpleTextOutBBTestFunction_efi.c         |  46 +-
 .../SimpleTextOutBBTestFunction_uefi.c        | 349 +++++----
 .../SimpleTextOutBBTestConformance_uefi.c     |  15 +-
 .../SimpleTextOutBBTestFunction_uefi.c        | 715 +++++++++---------
 6 files changed, 623 insertions(+), 530 deletions(-)

diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_efi.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_efi.c
index 8b8c3f86..d3861e3c 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_efi.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_efi.c
@@ -2,15 +2,16 @@

   Copyright 2006 - 2016 Unified EFI, Inc.<BR>
   Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2022, ARM Limited. All rights reserved.<BR>

   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD License
-  which accompanies this distribution.  The full text of the license may be found at
+  which accompanies this distribution.  The full text of the license may be found at
   http://opensource.org/licenses/bsd-license.php
-
+
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
+
 **/
 /*++

@@ -761,7 +762,11 @@ BBTestSetCursorPositionConformanceAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_uefi.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_uefi.c
index 99e14d7b..555f78e7 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_uefi.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_uefi.c
@@ -2,15 +2,16 @@

   Copyright 2006 - 2016 Unified EFI, Inc.<BR>
   Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2022, ARM Limited. All rights reserved.<BR>

   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD License
-  which accompanies this distribution.  The full text of the license may be found at
+  which accompanies this distribution.  The full text of the license may be found at
   http://opensource.org/licenses/bsd-license.php
-
+
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
+
 **/
 /*++

@@ -82,7 +83,7 @@ BBTestQueryModeConformanceAutoTest (
                    );
     return Status;
   }
-
+
   SimpleOut = (EFI_SIMPLE_TEXT_OUT_PROTOCOL *)ClientInterface;

   //
@@ -759,7 +760,11 @@ BBTestSetCursorPositionConformanceAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_efi.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_efi.c
index c370ea91..375e73df 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_efi.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_efi.c
@@ -2,15 +2,16 @@

   Copyright 2006 - 2016 Unified EFI, Inc.<BR>
   Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2022, ARM Limited. All rights reserved.<BR>

   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD License
-  which accompanies this distribution.  The full text of the license may be found at
+  which accompanies this distribution.  The full text of the license may be found at
   http://opensource.org/licenses/bsd-license.php
-
+
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
+
 **/
 /*++

@@ -647,7 +648,11 @@ BBTestResetFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -3150,7 +3155,11 @@ BBTestSetModeFunctionManualTest (
     // Return status check
     //
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
     } else {
       AssertionType = EFI_TEST_ASSERTION_PASSED;
     }
@@ -3177,7 +3186,6 @@ BBTestSetModeFunctionManualTest (
     } else {
       AssertionType = EFI_TEST_ASSERTION_PASSED;
     }
-
     StandardLib->RecordAssertion (
                    StandardLib,
                    AssertionType,
@@ -3989,7 +3997,11 @@ BBTestSetAttributeFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -4547,7 +4559,11 @@ BBTestClearScreenFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -5062,7 +5078,11 @@ BBTestSetCursorPositionFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -5155,7 +5175,7 @@ BBTestSetCursorPositionFunctionAutoTest (
         BackupMode (SimpleOut, &ModeExpected);

         //
-        // Set cursor position to (IndexRow * IndexColumn)
+        // Set cursor position to (IndexRow * IndexColumn)
         //
         Status = SimpleOut->SetCursorPosition (SimpleOut, IndexColumn, IndexRow);

@@ -5818,7 +5838,11 @@ BBTestEnableCursorFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_uefi.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_uefi.c
index a833498c..aeee04c2 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_uefi.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_uefi.c
@@ -2,15 +2,16 @@

   Copyright 2006 - 2016 Unified EFI, Inc.<BR>
   Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2022, ARM Limited. All rights reserved.<BR>

   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD License
-  which accompanies this distribution.  The full text of the license may be found at
+  which accompanies this distribution.  The full text of the license may be found at
   http://opensource.org/licenses/bsd-license.php
-
+
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
+
 **/
 /*++

@@ -50,7 +51,7 @@ BBTestResetFunctionManualTest (
   EFI_STANDARD_TEST_LIBRARY_PROTOCOL   *StandardLib;
   EFI_STATUS                           Status;
   EFI_SIMPLE_TEXT_OUT_PROTOCOL         *SimpleOut;
-
+
   EFI_TEST_ASSERTION                   AssertionType;
   EFI_SIMPLE_TEXT_OUTPUT_MODE          ModeOrg, ModeExpected;
   EFI_GRAPHICS_OUTPUT_PROTOCOL         *GraphicsOutput;
@@ -146,7 +147,7 @@ BBTestResetFunctionManualTest (
   //
   SctPrint (L"\n\rVGA Reset without extended verification start...\n\r");
   WaitTimeOrKey (5);
-
+
   //
   // Prepare expected Mode after call Reset.
   //
@@ -272,12 +273,12 @@ BBTestResetFunctionManualTest (
                  L" Expected:Cursor Position(%d x %d), MaxMode=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.MaxMode
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.MaxMode
                  );

   //
@@ -455,7 +456,11 @@ BBTestResetFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -582,12 +587,12 @@ BBTestResetFunctionAutoTest (
                    L" Expected:Cursor Position(%d x %d), MaxMode=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.MaxMode
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.MaxMode
                    );

     //
@@ -987,18 +992,18 @@ BBTestOutputStringFunctionAutoTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -1217,18 +1222,18 @@ BBTestOutputStringFunctionAutoTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -1626,18 +1631,18 @@ BBTestOutputStringFunctionManualTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -1897,18 +1902,18 @@ BBTestOutputStringFunctionManualTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -2433,18 +2438,18 @@ BBTestQueryModeFunctionAutoTest (
                    __FILE__,
                    (UINTN)__LINE__,
                    Index,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     if ( EFI_UNSUPPORTED == Status && 1 == Index ) {
@@ -2738,7 +2743,11 @@ BBTestSetModeFunctionManualTest (
     // Return status check
     //
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
     } else {
       AssertionType = EFI_TEST_ASSERTION_PASSED;
     }
@@ -2968,18 +2977,18 @@ BBTestSetModeFunctionAutoTest (
                    __FILE__,
                    (UINTN)__LINE__,
                    Index,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     //
@@ -3003,7 +3012,7 @@ BBTestSetModeFunctionAutoTest (
                    );

   }
-
+
   Status = RestoreMode (SimpleOut, &ModeOrg, StandardLib);
   if (EFI_ERROR(Status)) {
     StandardLib->RecordAssertion (
@@ -3152,17 +3161,17 @@ BBTestSetAttributeFunctionManualTest (
     for (IndexFore = 0; IndexFore < 16; IndexFore++) {

       Attribute = EFI_TEXT_ATTR(IndexFore, IndexBack);
-
+
       BackupMode (SimpleOut, &ModeExpected);
       ModeExpected.Attribute = (INT32)Attribute;
-
+
       Status = SimpleOut->SetAttribute (SimpleOut, Attribute);
-
+
       //
       // Wait for some time to change next background color
       //
       gtBS->Stall (100000);
-
+
       if (EFI_ERROR(Status)) {
         AssertionType = EFI_TEST_ASSERTION_FAILED;
         StandardLib->RecordAssertion (
@@ -3206,7 +3215,7 @@ BBTestSetAttributeFunctionManualTest (
                        (UINTN)ModeExpected.Attribute,
                        (UINTN)ModeExpected.CursorVisible
                        );
-        Result = FALSE;
+        Result = FALSE;
       }
     }
   }
@@ -3388,7 +3397,11 @@ BBTestSetAttributeFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -3434,7 +3447,7 @@ BBTestSetAttributeFunctionAutoTest (
                          Status,
                          Attribute
                          );
-                 Result = FALSE;
+          Result = FALSE;
         }
         if (EFI_ERROR(Status)) {
           continue;
@@ -3464,12 +3477,12 @@ BBTestSetAttributeFunctionAutoTest (
                          (UINTN)ModeExpected.Attribute,
                          (UINTN)ModeExpected.CursorVisible
                          );
-                 Result = FALSE;
+          Result = FALSE;
         }
       }
     }

-       if ( Result == TRUE ) {
+    if ( Result == TRUE ) {
       AssertionType = EFI_TEST_ASSERTION_PASSED;
       StandardLib->RecordAssertion (
                      StandardLib,
@@ -3629,7 +3642,7 @@ BBTestClearScreenFunctionManualTest (
   //
   BackupMode (SimpleOut, &ModeExpected);
   ModeExpected.CursorRow = 0;
-  ModeExpected.CursorColumn = 0;
+  ModeExpected.CursorColumn = 0;

   //
   // Clear screen with current background color
@@ -3846,7 +3859,11 @@ BBTestClearScreenFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -3896,18 +3913,18 @@ BBTestClearScreenFunctionAutoTest (
                    L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     //
@@ -3929,7 +3946,7 @@ BBTestClearScreenFunctionAutoTest (
                    Status
                    );
   }
-
+
   Status = RestoreMode (SimpleOut, &ModeOrg, StandardLib);
   if (EFI_ERROR(Status)) {
     StandardLib->RecordAssertion (
@@ -4158,7 +4175,7 @@ BBTestSetCursorPositionFunctionManualTest (
                        );
         Result = FALSE;
       }
-
+
       //
       // Returned status check
       //
@@ -4177,7 +4194,7 @@ BBTestSetCursorPositionFunctionManualTest (
                        IndexRow
                        );
         Result = FALSE;
-      }
+      }
       //
       // Wait for a little time
       //
@@ -4362,7 +4379,11 @@ BBTestSetCursorPositionFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -4414,7 +4435,7 @@ BBTestSetCursorPositionFunctionAutoTest (
         BackupMode (SimpleOut, &ModeExpected);

         //
-        // Set cursor position to (IndexRow * IndexColumn)
+        // Set cursor position to (IndexRow * IndexColumn)
         //
         Status = SimpleOut->SetCursorPosition (SimpleOut, IndexColumn, IndexRow);

@@ -4447,7 +4468,7 @@ BBTestSetCursorPositionFunctionAutoTest (
                          (UINTN)ModeExpected.Attribute,
                          (UINTN)ModeExpected.CursorVisible
                          );
-                 Result = FALSE;
+          Result = FALSE;
         }

         //
@@ -4467,7 +4488,7 @@ BBTestSetCursorPositionFunctionAutoTest (
                          IndexColumn,
                          IndexRow
                          );
-                 Result = FALSE;
+          Result = FALSE;
         }
       }
     }
@@ -4501,7 +4522,7 @@ BBTestSetCursorPositionFunctionAutoTest (
                    Status
                    );
   }
-
+
   return Status;
 }

@@ -4739,18 +4760,18 @@ BBTestEnableCursorFunctionManualTest (
                    L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );
   } else {
     //
@@ -4888,18 +4909,18 @@ BBTestEnableCursorFunctionManualTest (
                    L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );
   } else {
     //
@@ -4931,7 +4952,7 @@ BBTestEnableCursorFunctionManualTest (
                    Status
                    );
   }
-
+
   return Status;
 }

@@ -5058,7 +5079,11 @@ BBTestEnableCursorFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -5212,18 +5237,18 @@ BBTestEnableCursorFunctionAutoTest (
                    L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );


@@ -5254,6 +5279,6 @@ BBTestEnableCursorFunctionAutoTest (
                    Status
                    );
   }
-
+
   return Status;
 }
diff --git a/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_uefi.c b/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_uefi.c
index 99e14d7b..555f78e7 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_uefi.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestConformance_uefi.c
@@ -2,15 +2,16 @@

   Copyright 2006 - 2016 Unified EFI, Inc.<BR>
   Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2022, ARM Limited. All rights reserved.<BR>

   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD License
-  which accompanies this distribution.  The full text of the license may be found at
+  which accompanies this distribution.  The full text of the license may be found at
   http://opensource.org/licenses/bsd-license.php
-
+
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
+
 **/
 /*++

@@ -82,7 +83,7 @@ BBTestQueryModeConformanceAutoTest (
                    );
     return Status;
   }
-
+
   SimpleOut = (EFI_SIMPLE_TEXT_OUT_PROTOCOL *)ClientInterface;

   //
@@ -759,7 +760,11 @@ BBTestSetCursorPositionConformanceAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
diff --git a/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_uefi.c b/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_uefi.c
index 93fd5d75..b27722c4 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_uefi.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/IHV/Protocol/SimpleTextOut/BlackBoxTest/SimpleTextOutBBTestFunction_uefi.c
@@ -2,15 +2,16 @@

   Copyright 2006 - 2016 Unified EFI, Inc.<BR>
   Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2022, ARM Limited. All rights reserved.<BR>

   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD License
-  which accompanies this distribution.  The full text of the license may be found at
+  which accompanies this distribution.  The full text of the license may be found at
   http://opensource.org/licenses/bsd-license.php
-
+
   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-
+
 **/
 /*++

@@ -50,7 +51,7 @@ BBTestResetFunctionManualTest (
   EFI_STANDARD_TEST_LIBRARY_PROTOCOL   *StandardLib;
   EFI_STATUS                           Status;
   EFI_SIMPLE_TEXT_OUT_PROTOCOL         *SimpleOut;
-
+
   EFI_TEST_ASSERTION                   AssertionType;
   EFI_SIMPLE_TEXT_OUTPUT_MODE          ModeOrg, ModeExpected;
   EFI_GRAPHICS_OUTPUT_PROTOCOL         *GraphicsOutput;
@@ -146,7 +147,7 @@ BBTestResetFunctionManualTest (
   //
   SctPrint (L"\n\rVGA Reset without extended verification start...\n\r");
   WaitTimeOrKey (5);
-
+
   //
   // Prepare expected Mode after call Reset.
   //
@@ -176,12 +177,12 @@ BBTestResetFunctionManualTest (
                  L" Expected:Cursor Position(%d x %d), MaxMode=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.MaxMode
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.MaxMode
                  );

   //
@@ -272,12 +273,12 @@ BBTestResetFunctionManualTest (
                  L" Expected:Cursor Position(%d x %d), MaxMode=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.MaxMode
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.MaxMode
                  );

   //
@@ -455,7 +456,11 @@ BBTestResetFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -505,12 +510,12 @@ BBTestResetFunctionAutoTest (
                    L"Expected:Cursor Position(%d x %d), MaxMode=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.MaxMode
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.MaxMode
                    );

     //
@@ -582,12 +587,12 @@ BBTestResetFunctionAutoTest (
                    L" Expected:Cursor Position(%d x %d), MaxMode=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.MaxMode
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.MaxMode
                    );

     //
@@ -850,18 +855,18 @@ BBTestOutputStringFunctionAutoTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -987,18 +992,18 @@ BBTestOutputStringFunctionAutoTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -1094,18 +1099,18 @@ BBTestOutputStringFunctionAutoTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -1217,18 +1222,18 @@ BBTestOutputStringFunctionAutoTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -1469,18 +1474,18 @@ BBTestOutputStringFunctionManualTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -1626,18 +1631,18 @@ BBTestOutputStringFunctionManualTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -1754,18 +1759,18 @@ BBTestOutputStringFunctionManualTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -1897,18 +1902,18 @@ BBTestOutputStringFunctionManualTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -2240,18 +2245,18 @@ BBTestTestStringFunctionAutoTest (
                  L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -2433,18 +2438,18 @@ BBTestQueryModeFunctionAutoTest (
                    __FILE__,
                    (UINTN)__LINE__,
                    Index,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     if ( EFI_UNSUPPORTED == Status && 1 == Index ) {
@@ -2720,25 +2725,29 @@ BBTestSetModeFunctionManualTest (
                    __FILE__,
                    (UINTN)__LINE__,
                    Index,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     //
     // Return status check
     //
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
     } else {
       AssertionType = EFI_TEST_ASSERTION_PASSED;
     }
@@ -2968,25 +2977,29 @@ BBTestSetModeFunctionAutoTest (
                    __FILE__,
                    (UINTN)__LINE__,
                    Index,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     //
     // Return status check
     //
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
     } else {
       AssertionType = EFI_TEST_ASSERTION_PASSED;
     }
@@ -3003,7 +3016,7 @@ BBTestSetModeFunctionAutoTest (
                    );

   }
-
+
   Status = RestoreMode (SimpleOut, &ModeOrg, StandardLib);
   if (EFI_ERROR(Status)) {
     StandardLib->RecordAssertion (
@@ -3152,17 +3165,17 @@ BBTestSetAttributeFunctionManualTest (
     for (IndexFore = 0; IndexFore < 16; IndexFore++) {

       Attribute = EFI_TEXT_ATTR(IndexFore, IndexBack);
-
+
       BackupMode (SimpleOut, &ModeExpected);
       ModeExpected.Attribute = (INT32)Attribute;
-
+
       Status = SimpleOut->SetAttribute (SimpleOut, Attribute);
-
+
       //
       // Wait for some time to change next background color
       //
       gtBS->Stall (100000);
-
+
       if (EFI_ERROR(Status)) {
         AssertionType = EFI_TEST_ASSERTION_FAILED;
         StandardLib->RecordAssertion (
@@ -3193,20 +3206,20 @@ BBTestSetAttributeFunctionManualTest (
                        L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                        __FILE__,
                        (UINTN)__LINE__,
-                       (UINTN)SimpleOut->Mode->CursorColumn,
-                       (UINTN)SimpleOut->Mode->CursorRow,
-                       (UINTN)SimpleOut->Mode->Mode,
-                       (UINTN)SimpleOut->Mode->MaxMode,
-                       (UINTN)SimpleOut->Mode->Attribute,
-                       (UINTN)SimpleOut->Mode->CursorVisible,
-                       (UINTN)ModeExpected.CursorColumn,
-                       (UINTN)ModeExpected.CursorRow,
-                       (UINTN)ModeExpected.Mode,
-                       (UINTN)ModeExpected.MaxMode,
-                       (UINTN)ModeExpected.Attribute,
-                       (UINTN)ModeExpected.CursorVisible
+                       (UINTN)SimpleOut->Mode->CursorColumn,
+                       (UINTN)SimpleOut->Mode->CursorRow,
+                       (UINTN)SimpleOut->Mode->Mode,
+                       (UINTN)SimpleOut->Mode->MaxMode,
+                       (UINTN)SimpleOut->Mode->Attribute,
+                       (UINTN)SimpleOut->Mode->CursorVisible,
+                       (UINTN)ModeExpected.CursorColumn,
+                       (UINTN)ModeExpected.CursorRow,
+                       (UINTN)ModeExpected.Mode,
+                       (UINTN)ModeExpected.MaxMode,
+                       (UINTN)ModeExpected.Attribute,
+                       (UINTN)ModeExpected.CursorVisible
                        );
-        Result = FALSE;
+        Result = FALSE;
       }
     }
   }
@@ -3388,7 +3401,11 @@ BBTestSetAttributeFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -3434,7 +3451,7 @@ BBTestSetAttributeFunctionAutoTest (
                          Status,
                          Attribute
                          );
-                 Result = FALSE;
+          Result = FALSE;
         }
         if (EFI_ERROR(Status)) {
           continue;
@@ -3451,25 +3468,25 @@ BBTestSetAttributeFunctionAutoTest (
                          L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                          __FILE__,
                          (UINTN)__LINE__,
-                         (UINTN)SimpleOut->Mode->CursorColumn,
-                         (UINTN)SimpleOut->Mode->CursorRow,
-                         (UINTN)SimpleOut->Mode->Mode,
-                         (UINTN)SimpleOut->Mode->MaxMode,
-                         (UINTN)SimpleOut->Mode->Attribute,
-                         (UINTN)SimpleOut->Mode->CursorVisible,
-                         (UINTN)ModeExpected.CursorColumn,
-                         (UINTN)ModeExpected.CursorRow,
-                         (UINTN)ModeExpected.Mode,
-                         (UINTN)ModeExpected.MaxMode,
-                         (UINTN)ModeExpected.Attribute,
-                         (UINTN)ModeExpected.CursorVisible
+                         (UINTN)SimpleOut->Mode->CursorColumn,
+                         (UINTN)SimpleOut->Mode->CursorRow,
+                         (UINTN)SimpleOut->Mode->Mode,
+                         (UINTN)SimpleOut->Mode->MaxMode,
+                         (UINTN)SimpleOut->Mode->Attribute,
+                         (UINTN)SimpleOut->Mode->CursorVisible,
+                         (UINTN)ModeExpected.CursorColumn,
+                         (UINTN)ModeExpected.CursorRow,
+                         (UINTN)ModeExpected.Mode,
+                         (UINTN)ModeExpected.MaxMode,
+                         (UINTN)ModeExpected.Attribute,
+                         (UINTN)ModeExpected.CursorVisible
                          );
-                 Result = FALSE;
+          Result = FALSE;
         }
       }
     }

-       if ( Result == TRUE ) {
+    if ( Result == TRUE ) {
       AssertionType = EFI_TEST_ASSERTION_PASSED;
       StandardLib->RecordAssertion (
                      StandardLib,
@@ -3629,7 +3646,7 @@ BBTestClearScreenFunctionManualTest (
   //
   BackupMode (SimpleOut, &ModeExpected);
   ModeExpected.CursorRow = 0;
-  ModeExpected.CursorColumn = 0;
+  ModeExpected.CursorColumn = 0;

   //
   // Clear screen with current background color
@@ -3653,18 +3670,18 @@ BBTestClearScreenFunctionManualTest (
                  L" Expected: Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                  __FILE__,
                  (UINTN)__LINE__,
-                 (UINTN)SimpleOut->Mode->CursorColumn,
-                 (UINTN)SimpleOut->Mode->CursorRow,
-                 (UINTN)SimpleOut->Mode->Mode,
-                 (UINTN)SimpleOut->Mode->MaxMode,
-                 (UINTN)SimpleOut->Mode->Attribute,
-                 (UINTN)SimpleOut->Mode->CursorVisible,
-                 (UINTN)ModeExpected.CursorColumn,
-                 (UINTN)ModeExpected.CursorRow,
-                 (UINTN)ModeExpected.Mode,
-                 (UINTN)ModeExpected.MaxMode,
-                 (UINTN)ModeExpected.Attribute,
-                 (UINTN)ModeExpected.CursorVisible
+                 (UINTN)SimpleOut->Mode->CursorColumn,
+                 (UINTN)SimpleOut->Mode->CursorRow,
+                 (UINTN)SimpleOut->Mode->Mode,
+                 (UINTN)SimpleOut->Mode->MaxMode,
+                 (UINTN)SimpleOut->Mode->Attribute,
+                 (UINTN)SimpleOut->Mode->CursorVisible,
+                 (UINTN)ModeExpected.CursorColumn,
+                 (UINTN)ModeExpected.CursorRow,
+                 (UINTN)ModeExpected.Mode,
+                 (UINTN)ModeExpected.MaxMode,
+                 (UINTN)ModeExpected.Attribute,
+                 (UINTN)ModeExpected.CursorVisible
                  );

   //
@@ -3846,7 +3863,11 @@ BBTestClearScreenFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -3896,18 +3917,18 @@ BBTestClearScreenFunctionAutoTest (
                    L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     //
@@ -3929,7 +3950,7 @@ BBTestClearScreenFunctionAutoTest (
                    Status
                    );
   }
-
+
   Status = RestoreMode (SimpleOut, &ModeOrg, StandardLib);
   if (EFI_ERROR(Status)) {
     StandardLib->RecordAssertion (
@@ -4143,22 +4164,22 @@ BBTestSetCursorPositionFunctionManualTest (
                        L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                        __FILE__,
                        (UINTN)__LINE__,
-                       (UINTN)SimpleOut->Mode->CursorColumn,
-                       (UINTN)SimpleOut->Mode->CursorRow,
-                       (UINTN)SimpleOut->Mode->Mode,
-                       (UINTN)SimpleOut->Mode->MaxMode,
-                       (UINTN)SimpleOut->Mode->Attribute,
-                       (UINTN)SimpleOut->Mode->CursorVisible,
-                       (UINTN)ModeExpected.CursorColumn,
-                       (UINTN)ModeExpected.CursorRow,
-                       (UINTN)ModeExpected.Mode,
-                       (UINTN)ModeExpected.MaxMode,
-                       (UINTN)ModeExpected.Attribute,
-                       (UINTN)ModeExpected.CursorVisible
+                       (UINTN)SimpleOut->Mode->CursorColumn,
+                       (UINTN)SimpleOut->Mode->CursorRow,
+                       (UINTN)SimpleOut->Mode->Mode,
+                       (UINTN)SimpleOut->Mode->MaxMode,
+                       (UINTN)SimpleOut->Mode->Attribute,
+                       (UINTN)SimpleOut->Mode->CursorVisible,
+                       (UINTN)ModeExpected.CursorColumn,
+                       (UINTN)ModeExpected.CursorRow,
+                       (UINTN)ModeExpected.Mode,
+                       (UINTN)ModeExpected.MaxMode,
+                       (UINTN)ModeExpected.Attribute,
+                       (UINTN)ModeExpected.CursorVisible
                        );
         Result = FALSE;
       }
-
+
       //
       // Returned status check
       //
@@ -4177,7 +4198,7 @@ BBTestSetCursorPositionFunctionManualTest (
                        IndexRow
                        );
         Result = FALSE;
-      }
+      }
       //
       // Wait for a little time
       //
@@ -4362,7 +4383,11 @@ BBTestSetCursorPositionFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -4414,7 +4439,7 @@ BBTestSetCursorPositionFunctionAutoTest (
         BackupMode (SimpleOut, &ModeExpected);

         //
-        // Set cursor position to (IndexRow * IndexColumn)
+        // Set cursor position to (IndexRow * IndexColumn)
         //
         Status = SimpleOut->SetCursorPosition (SimpleOut, IndexColumn, IndexRow);

@@ -4434,20 +4459,20 @@ BBTestSetCursorPositionFunctionAutoTest (
                          L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                          __FILE__,
                          (UINTN)__LINE__,
-                         (UINTN)SimpleOut->Mode->CursorColumn,
-                         (UINTN)SimpleOut->Mode->CursorRow,
-                         (UINTN)SimpleOut->Mode->Mode,
-                         (UINTN)SimpleOut->Mode->MaxMode,
-                         (UINTN)SimpleOut->Mode->Attribute,
-                         (UINTN)SimpleOut->Mode->CursorVisible,
-                         (UINTN)ModeExpected.CursorColumn,
-                         (UINTN)ModeExpected.CursorRow,
-                         (UINTN)ModeExpected.Mode,
-                         (UINTN)ModeExpected.MaxMode,
-                         (UINTN)ModeExpected.Attribute,
-                         (UINTN)ModeExpected.CursorVisible
+                         (UINTN)SimpleOut->Mode->CursorColumn,
+                         (UINTN)SimpleOut->Mode->CursorRow,
+                         (UINTN)SimpleOut->Mode->Mode,
+                         (UINTN)SimpleOut->Mode->MaxMode,
+                         (UINTN)SimpleOut->Mode->Attribute,
+                         (UINTN)SimpleOut->Mode->CursorVisible,
+                         (UINTN)ModeExpected.CursorColumn,
+                         (UINTN)ModeExpected.CursorRow,
+                         (UINTN)ModeExpected.Mode,
+                         (UINTN)ModeExpected.MaxMode,
+                         (UINTN)ModeExpected.Attribute,
+                         (UINTN)ModeExpected.CursorVisible
                          );
-                 Result = FALSE;
+          Result = FALSE;
         }

         //
@@ -4467,7 +4492,7 @@ BBTestSetCursorPositionFunctionAutoTest (
                          IndexColumn,
                          IndexRow
                          );
-                 Result = FALSE;
+          Result = FALSE;
         }
       }
     }
@@ -4501,7 +4526,7 @@ BBTestSetCursorPositionFunctionAutoTest (
                    Status
                    );
   }
-
+
   return Status;
 }

@@ -4669,18 +4694,18 @@ BBTestEnableCursorFunctionManualTest (
                    L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     //
@@ -4739,18 +4764,18 @@ BBTestEnableCursorFunctionManualTest (
                    L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );
   } else {
     //
@@ -4803,18 +4828,18 @@ BBTestEnableCursorFunctionManualTest (
                    L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     //
@@ -4888,18 +4913,18 @@ BBTestEnableCursorFunctionManualTest (
                    L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );
   } else {
     //
@@ -4931,7 +4956,7 @@ BBTestEnableCursorFunctionManualTest (
                    Status
                    );
   }
-
+
   return Status;
 }

@@ -5058,7 +5083,11 @@ BBTestEnableCursorFunctionAutoTest (
     //
     Status = SimpleOut->SetMode (SimpleOut, Mode);
     if (EFI_ERROR(Status)) {
-      AssertionType = EFI_TEST_ASSERTION_FAILED;
+      if (EFI_UNSUPPORTED == Status) {
+        AssertionType = EFI_TEST_ASSERTION_PASSED;
+      } else {
+        AssertionType = EFI_TEST_ASSERTION_FAILED;
+      }
       StandardLib->RecordAssertion (
                      StandardLib,
                      AssertionType,
@@ -5128,18 +5157,18 @@ BBTestEnableCursorFunctionAutoTest (
                    L"Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );

     AssertionType = EFI_TEST_ASSERTION_PASSED;
@@ -5212,18 +5241,18 @@ BBTestEnableCursorFunctionAutoTest (
                    L" Expected:Cursor Position(%d x %d), Mode=%d, MaxMode=%d, Attribute=%d, CursorVisible=%d.",
                    __FILE__,
                    (UINTN)__LINE__,
-                   (UINTN)SimpleOut->Mode->CursorColumn,
-                   (UINTN)SimpleOut->Mode->CursorRow,
-                   (UINTN)SimpleOut->Mode->Mode,
-                   (UINTN)SimpleOut->Mode->MaxMode,
-                   (UINTN)SimpleOut->Mode->Attribute,
-                   (UINTN)SimpleOut->Mode->CursorVisible,
-                   (UINTN)ModeExpected.CursorColumn,
-                   (UINTN)ModeExpected.CursorRow,
-                   (UINTN)ModeExpected.Mode,
-                   (UINTN)ModeExpected.MaxMode,
-                   (UINTN)ModeExpected.Attribute,
-                   (UINTN)ModeExpected.CursorVisible
+                   (UINTN)SimpleOut->Mode->CursorColumn,
+                   (UINTN)SimpleOut->Mode->CursorRow,
+                   (UINTN)SimpleOut->Mode->Mode,
+                   (UINTN)SimpleOut->Mode->MaxMode,
+                   (UINTN)SimpleOut->Mode->Attribute,
+                   (UINTN)SimpleOut->Mode->CursorVisible,
+                   (UINTN)ModeExpected.CursorColumn,
+                   (UINTN)ModeExpected.CursorRow,
+                   (UINTN)ModeExpected.Mode,
+                   (UINTN)ModeExpected.MaxMode,
+                   (UINTN)ModeExpected.Attribute,
+                   (UINTN)ModeExpected.CursorVisible
                    );


@@ -5254,6 +5283,6 @@ BBTestEnableCursorFunctionAutoTest (
                    Status
                    );
   }
-
+
   return Status;
 }
--
2.32.0.windows.1



-=-=-=-=-=-=
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#85576): https://edk2.groups.io/g/devel/message/85576
Mute This Topic: https://groups.io/mt/88360183/5985097
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [Sunny.Wang@arm.com]
-=-=-=-=-=-=


IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [edk2-devel] [edk2-test][PATCH v1] uefi-sct/SctPkg: Allow SimpleTextOut SetMode to return EFI_UNSUPPORTED
  2022-01-31 10:58 ` [edk2-devel] [edk2-test][PATCH v1] uefi-sct/SctPkg: Allow SimpleTextOut SetMode to return EFI_UNSUPPORTED Sunny Wang
@ 2022-01-31 13:21   ` G Edhaya Chandran
  2022-02-03  6:28     ` G Edhaya Chandran
  0 siblings, 1 reply; 3+ messages in thread
From: G Edhaya Chandran @ 2022-01-31 13:21 UTC (permalink / raw)
  To: Sunny Wang, devel

[-- Attachment #1: Type: text/plain, Size: 58 bytes --]

Reviewed-by: G Edhaya Chandran <edhaya.chandran@arm.com>

[-- Attachment #2: Type: text/html, Size: 64 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [edk2-devel] [edk2-test][PATCH v1] uefi-sct/SctPkg: Allow SimpleTextOut SetMode to return EFI_UNSUPPORTED
  2022-01-31 13:21   ` G Edhaya Chandran
@ 2022-02-03  6:28     ` G Edhaya Chandran
  0 siblings, 0 replies; 3+ messages in thread
From: G Edhaya Chandran @ 2022-02-03  6:28 UTC (permalink / raw)
  To: G Edhaya Chandran, devel

[-- Attachment #1: Type: text/plain, Size: 128 bytes --]

Solution is upstreamed through commit: https://github.com/tianocore/edk2-test/commit/d919c4a5d9fe2681de4d11a0bbfb07373fe6f9c7

[-- Attachment #2: Type: text/html, Size: 132 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-02-03  6:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <16C955E76B71968A.28404@groups.io>
2022-01-31 10:58 ` [edk2-devel] [edk2-test][PATCH v1] uefi-sct/SctPkg: Allow SimpleTextOut SetMode to return EFI_UNSUPPORTED Sunny Wang
2022-01-31 13:21   ` G Edhaya Chandran
2022-02-03  6:28     ` G Edhaya Chandran

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox