]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdeModulePkg/Universal/SetupBrowserDxe/Setup.c
Split the Print functionality from SetupBrowserDxe. Platform should use PrintDxe...
[mirror_edk2.git] / MdeModulePkg / Universal / SetupBrowserDxe / Setup.c
index ba391143e61c16e0c06546152c997b025837d84f..fa992bd3810265c98ce9dd67c941da1addf3230d 100644 (file)
@@ -22,14 +22,6 @@ SETUP_DRIVER_PRIVATE_DATA  mPrivateData = {
   {\r
     SendForm,\r
     BrowserCallback\r
-  },\r
-  {\r
-    UnicodeVSPrint,\r
-    UnicodeVSPrintAsciiFormat,\r
-    UnicodeValueToString,                         \r
-    AsciiVSPrint,          \r
-    AsciiVSPrintUnicodeFormat,\r
-    AsciiValueToString\r
   }\r
 };\r
 \r
@@ -217,10 +209,11 @@ SendForm (
   OUT EFI_BROWSER_ACTION_REQUEST       *ActionRequest  OPTIONAL\r
   )\r
 {\r
-  EFI_STATUS            Status;\r
-  UI_MENU_SELECTION     *Selection;\r
-  UINTN                 Index;\r
-  FORM_BROWSER_FORMSET  *FormSet;\r
+  EFI_STATUS                    Status;\r
+  UI_MENU_SELECTION             *Selection;\r
+  UINTN                         Index;\r
+  FORM_BROWSER_FORMSET          *FormSet;\r
+  EFI_CONSOLE_CONTROL_PROTOCOL  *ConsoleControl;\r
 \r
   Status = EFI_SUCCESS;\r
   ZeroMem (&gScreenDimensions, sizeof (EFI_SCREEN_DESCRIPTOR));\r
@@ -282,7 +275,15 @@ SendForm (
   // Ensure we are in Text mode\r
   //\r
   gST->ConOut->SetAttribute (gST->ConOut, EFI_TEXT_ATTR (EFI_LIGHTGRAY, EFI_BLACK));\r
-  DisableQuietBoot ();\r
+\r
+  Status = gBS->LocateProtocol (&gEfiConsoleControlProtocolGuid, NULL, (VOID **) &ConsoleControl);\r
+  if (EFI_ERROR (Status)) {\r
+    return Status;\r
+  }\r
+  //\r
+  // Set console control to text mode.\r
+  //\r
+  ConsoleControl->SetMode (ConsoleControl, EfiConsoleControlScreenText);\r
 \r
   for (Index = 0; Index < HandleCount; Index++) {\r
     Selection = AllocateZeroPool (sizeof (UI_MENU_SELECTION));\r
@@ -595,29 +596,6 @@ InitializeSetup (
                   );\r
   ASSERT_EFI_ERROR (Status);\r
 \r
-  //\r
-  // Install Print protocol\r
-  //\r
-  Status = gBS->InstallProtocolInterface (\r
-                  &mPrivateData.Handle,\r
-                  &gEfiPrint2ProtocolGuid,\r
-                  EFI_NATIVE_INTERFACE,\r
-                  &mPrivateData.Print\r
-                  );\r
-\r
-  //\r
-  // Install Ecp Print protocol, which is defined in\r
-  // Edk\Foundation\Protocol\Print\Print.h with protocol\r
-  // GUID of { 0xdf2d868e, 0x32fc, 0x4cf0, {0x8e, 0x6b, 0xff, 0xd9, 0x5d, 0x13, 0x43, 0xd0 }}\r
-  // This is support previous module that written to consume this protocol.\r
-  // \r
-  Status = gBS->InstallProtocolInterface (\r
-                  &mPrivateData.Handle,\r
-                  &gEfiPrintProtocolGuid,\r
-                  EFI_NATIVE_INTERFACE,\r
-                  &mPrivateData.Print\r
-                  );\r
-\r
   return Status;\r
 }\r
 \r
@@ -2157,7 +2135,8 @@ GetIfrBinaryData (
   if (EFI_ERROR (Status)) {\r
     return Status;\r
   }\r
-\r
+  ASSERT (HiiPackageList != NULL);\r
+  \r
   //\r
   // Get Form package from this HII package List\r
   //\r