/** @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
#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
#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
#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
\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
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
\r
VOID\r
PlatformInitializeConsole (\r
- IN PLATFORM_CONSOLE_CONNECT_ENTRY *PlatformConsole\r
+ IN PLATFORM_CONSOLE_CONNECT_ENTRY *PlatformConsole\r
);\r
\r
/**\r
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