]> git.proxmox.com Git - mirror_edk2.git/blobdiff - OvmfPkg/Csm/LegacyBootManagerLib/InternalLegacyBm.h
OvmfPkg: Copy the required CSM components from framework packages
[mirror_edk2.git] / OvmfPkg / Csm / LegacyBootManagerLib / InternalLegacyBm.h
diff --git a/OvmfPkg/Csm/LegacyBootManagerLib/InternalLegacyBm.h b/OvmfPkg/Csm/LegacyBootManagerLib/InternalLegacyBm.h
new file mode 100644 (file)
index 0000000..292e2c1
--- /dev/null
@@ -0,0 +1,60 @@
+/** @file\r
+\r
+Copyright (c) 2011 - 2018, Intel Corporation. All rights reserved.<BR>\r
+SPDX-License-Identifier: BSD-2-Clause-Patent\r
+\r
+**/\r
+\r
+#ifndef _INTERNAL_LEGACY_BM_H_\r
+#define _INTERNAL_LEGACY_BM_H_\r
+\r
+#include <PiDxe.h>\r
+#include <Guid/LegacyDevOrder.h>\r
+#include <Guid/GlobalVariable.h>\r
+#include <Protocol/LegacyBios.h>\r
+#include <Protocol/PciRootBridgeIo.h>\r
+#include <Protocol/PciIo.h>\r
+#include <Library/BaseLib.h>\r
+#include <Library/BaseMemoryLib.h>\r
+#include <Library/DebugLib.h>\r
+#include <Library/UefiBootServicesTableLib.h>\r
+#include <Library/UefiRuntimeServicesTableLib.h>\r
+#include <Library/UefiLib.h>\r
+#include <Library/DevicePathLib.h>\r
+#include <Library/UefiBootManagerLib.h>\r
+#include <Library/MemoryAllocationLib.h>\r
+#include <Library/PrintLib.h>\r
+#include <Library/PerformanceLib.h>\r
+\r
+#pragma pack(1)\r
+typedef struct {\r
+  UINT16     BbsIndex;\r
+} LEGACY_BM_BOOT_OPTION_BBS_DATA;\r
+#pragma pack()\r
+\r
+/**\r
+  Boot the legacy system with the boot option.\r
+\r
+  @param  BootOption The legacy boot option which have BBS device path\r
+                     On return, BootOption->Status contains the boot status.\r
+                     EFI_UNSUPPORTED    There is no legacybios protocol, do not support\r
+                                        legacy boot.\r
+                     EFI_STATUS         The status of LegacyBios->LegacyBoot ().\r
+**/\r
+VOID\r
+EFIAPI\r
+LegacyBmBoot (\r
+  IN  EFI_BOOT_MANAGER_LOAD_OPTION           *BootOption\r
+  );\r
+\r
+/**\r
+  Refresh all legacy boot options.\r
+\r
+**/\r
+VOID\r
+EFIAPI\r
+LegacyBmRefreshAllBootOption (\r
+  VOID\r
+  );\r
+\r
+#endif // _INTERNAL_LEGACY_BM_H_\r