]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / OvmfPkg / Library / PlatformBootManagerLib / BdsPlatform.h
index 4c379b67e9bfe54f05f177cbf20c8835d029cfba..1676d61616d8e58223a15ccf6879fddf1842f0a5 100644 (file)
@@ -1,14 +1,8 @@
 /** @file\r
   Platform BDS customizations include file.\r
 \r
-  Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>\r
-  This program and the accompanying materials\r
-  are licensed and made available under the terms and conditions of the BSD License\r
-  which accompanies this distribution.  The full text of the license may be found at\r
-  http://opensource.org/licenses/bsd-license.php\r
-\r
-  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+  Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>\r
+  SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
 Module Name:\r
 \r
@@ -23,14 +17,13 @@ Abstract:
 #ifndef _PLATFORM_SPECIFIC_BDS_PLATFORM_H_\r
 #define _PLATFORM_SPECIFIC_BDS_PLATFORM_H_\r
 \r
-\r
 #include <PiDxe.h>\r
 \r
-#include <IndustryStandard/Bmp.h>\r
 #include <IndustryStandard/Pci.h>\r
 #include <IndustryStandard/Acpi.h>\r
 #include <IndustryStandard/SmBios.h>\r
 #include <IndustryStandard/PeImage.h>\r
+#include <IndustryStandard/Virtio095.h>\r
 \r
 #include <Library/DebugLib.h>\r
 #include <Library/BaseMemoryLib.h>\r
@@ -41,6 +34,7 @@ Abstract:
 #include <Library/PcdLib.h>\r
 #include <Library/PciLib.h>\r
 #include <Library/UefiBootManagerLib.h>\r
+#include <Library/BootLogoLib.h>\r
 #include <Library/HobLib.h>\r
 #include <Library/UefiLib.h>\r
 #include <Library/DxeServicesTableLib.h>\r
@@ -48,12 +42,9 @@ Abstract:
 #include <Library/IoLib.h>\r
 #include <Library/NvVarsFileLib.h>\r
 #include <Library/QemuFwCfgLib.h>\r
+#include <Library/QemuFwCfgS3Lib.h>\r
 #include <Library/QemuBootOrderLib.h>\r
-#include <Library/DxeServicesLib.h>\r
 \r
-#include <Protocol/OEMBadging.h>\r
-#include <Protocol/UgaDraw.h>\r
-#include <Protocol/BootLogo.h>\r
 #include <Protocol/Decompress.h>\r
 #include <Protocol/PciIo.h>\r
 #include <Protocol/FirmwareVolume2.h>\r
@@ -65,18 +56,18 @@ Abstract:
 \r
 #include <Guid/Acpi.h>\r
 #include <Guid/SmBios.h>\r
-#include <Guid/Mps.h>\r
 #include <Guid/HobList.h>\r
 #include <Guid/GlobalVariable.h>\r
 #include <Guid/EventGroup.h>\r
+#include <Guid/DebugAgentGuid.h>\r
 \r
 #include <OvmfPlatforms.h>\r
 \r
-extern EFI_DEVICE_PATH_PROTOCOL   *gPlatformConnectSequence[];\r
-extern ACPI_HID_DEVICE_PATH       gPnpPs2KeyboardDeviceNode;\r
-extern ACPI_HID_DEVICE_PATH       gPnp16550ComPortDeviceNode;\r
-extern UART_DEVICE_PATH           gUartDeviceNode;\r
-extern VENDOR_DEVICE_PATH         gTerminalTypeDeviceNode;\r
+extern EFI_DEVICE_PATH_PROTOCOL  *gPlatformConnectSequence[];\r
+extern ACPI_HID_DEVICE_PATH      gPnpPs2KeyboardDeviceNode;\r
+extern ACPI_HID_DEVICE_PATH      gPnp16550ComPortDeviceNode;\r
+extern UART_DEVICE_PATH          gUartDeviceNode;\r
+extern VENDOR_DEVICE_PATH        gTerminalTypeDeviceNode;\r
 \r
 #define PCI_DEVICE_PATH_NODE(Func, Dev) \\r
   { \\r
@@ -148,21 +139,32 @@ extern VENDOR_DEVICE_PATH         gTerminalTypeDeviceNode;
     DEVICE_PATH_MESSAGING_PC_ANSI \\r
   }\r
 \r
-#define PCI_CLASS_SCC          0x07\r
-#define PCI_SUBCLASS_SERIAL    0x00\r
-#define PCI_IF_16550           0x02\r
-#define IS_PCI_16550SERIAL(_p)           IS_CLASS3 (_p, PCI_CLASS_SCC, PCI_SUBCLASS_SERIAL, PCI_IF_16550)\r
-#define IS_PCI_ISA_PDECODE(_p)        IS_CLASS3 (_p, PCI_CLASS_BRIDGE, PCI_CLASS_BRIDGE_ISA_PDECODE, 0)\r
+#define gEndEntire \\r
+  { \\r
+    END_DEVICE_PATH_TYPE, \\r
+    END_ENTIRE_DEVICE_PATH_SUBTYPE, \\r
+    { \\r
+      END_DEVICE_PATH_LENGTH, \\r
+      0 \\r
+    } \\r
+  }\r
+\r
+#define PCI_CLASS_SCC        0x07\r
+#define PCI_SUBCLASS_SERIAL  0x00\r
+#define PCI_IF_16550         0x02\r
+#define IS_PCI_16550SERIAL(_p)  IS_CLASS3 (_p, PCI_CLASS_SCC, PCI_SUBCLASS_SERIAL, PCI_IF_16550)\r
+#define IS_PCI_ISA_PDECODE(_p)  IS_CLASS3 (_p, PCI_CLASS_BRIDGE, PCI_CLASS_BRIDGE_ISA_PDECODE, 0)\r
 \r
 typedef struct {\r
-  EFI_DEVICE_PATH_PROTOCOL  *DevicePath;\r
-  UINTN                     ConnectType;\r
+  EFI_DEVICE_PATH_PROTOCOL    *DevicePath;\r
+  UINTN                       ConnectType;\r
 } PLATFORM_CONSOLE_CONNECT_ENTRY;\r
 \r
-#define CONSOLE_OUT BIT0\r
-#define CONSOLE_IN  BIT1\r
-#define STD_ERROR   BIT2\r
+#define CONSOLE_OUT  BIT0\r
+#define CONSOLE_IN   BIT1\r
+#define STD_ERROR    BIT2\r
 extern PLATFORM_CONSOLE_CONNECT_ENTRY  gPlatformConsole[];\r
+extern PLATFORM_CONSOLE_CONNECT_ENTRY  gXenPlatformConsole[];\r
 \r
 //\r
 // Platform BDS Functions\r
@@ -170,7 +172,7 @@ extern PLATFORM_CONSOLE_CONNECT_ENTRY  gPlatformConsole[];
 \r
 VOID\r
 PlatformInitializeConsole (\r
-  IN PLATFORM_CONSOLE_CONNECT_ENTRY   *PlatformConsole\r
+  IN PLATFORM_CONSOLE_CONNECT_ENTRY  *PlatformConsole\r
   );\r
 \r
 /**\r
@@ -184,31 +186,4 @@ TryRunningQemuKernel (
   VOID\r
   );\r
 \r
-/**\r
-  Use SystemTable Conout to stop video based Simple Text Out consoles from going\r
-  to the video device. Put up LogoFile on every video device that is a console.\r
-\r
-  @param[in]  LogoFile   File name of logo to display on the center of the screen.\r
-\r
-  @retval EFI_SUCCESS     ConsoleControl has been flipped to graphics and logo displayed.\r
-  @retval EFI_UNSUPPORTED Logo not found\r
-\r
-**/\r
-EFI_STATUS\r
-EnableQuietBoot (\r
-  IN  EFI_GUID  *LogoFile\r
-  );\r
-\r
-/**\r
-  Use SystemTable Conout to turn on video based Simple Text Out consoles. The\r
-  Simple Text Out screens will now be synced up with all non video output devices\r
-\r
-  @retval EFI_SUCCESS     UGA devices are back in text mode and synced up.\r
-\r
-**/\r
-EFI_STATUS\r
-DisableQuietBoot (\r
-  VOID\r
-  );\r
-\r
 #endif // _PLATFORM_SPECIFIC_BDS_PLATFORM_H_\r