+++ /dev/null
-/*++\r
-\r
-Copyright (c) 2006, Intel Corporation\r
-All rights reserved. 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
-\r
-Module Name:\r
-\r
- Bds.h\r
-\r
-Abstract:\r
-\r
- Head file for BDS Architectural Protocol implementation\r
-\r
-Revision History\r
-\r
---*/\r
-\r
-#ifndef _BDS_H\r
-#define _BDS_H\r
-\r
-#include <PiDxe.h>\r
-#include <Common/MaxBbsEntries.h>\r
-#include <Protocol/FrameworkFormCallback.h>\r
-#include <Protocol/DevicePath.h>\r
-#include <Protocol/LoadFile.h>\r
-#include <Protocol/CpuIo.h>\r
-#include <Protocol/Bds.h>\r
-#include <Protocol/DataHub.h>\r
-#include <Protocol/FrameworkFormBrowser.h>\r
-#include <Protocol/BlockIo.h>\r
-#include <Protocol/ConsoleControl.h>\r
-#include <Protocol/GenericMemoryTest.h>\r
-#include <Protocol/GraphicsOutput.h>\r
-#include <Protocol/SimpleFileSystem.h>\r
-#include <Protocol/FrameworkHii.h>\r
-#include <Protocol/SerialIo.h>\r
-#include <Protocol/LegacyBios.h>\r
-#include <Protocol/Performance.h>\r
-#include <Guid/PcAnsi.h>\r
-#include <Guid/DataHubRecords.h>\r
-#include <Guid/Bmp.h>\r
-#include <Guid/FileInfo.h>\r
-#include <Guid/BootState.h>\r
-#include <Guid/FileSystemVolumeLabelInfo.h>\r
-#include <Guid/GenericPlatformVariable.h>\r
-#include <Guid/GlobalVariable.h>\r
-#include <Guid/MemoryTypeInformation.h>\r
-\r
-#include <Library/DebugLib.h>\r
-#include <Library/UefiLib.h>\r
-#include <Library/UefiDriverEntryPoint.h>\r
-#include <Library/BaseLib.h>\r
-#include <Library/GraphicsLib.h>\r
-#include <Library/DxeServicesTableLib.h>\r
-#include <Library/PerformanceLib.h>\r
-#include <Library/PrintLib.h>\r
-#include <Library/FrameworkIfrSupportLib.h>\r
-#include <Library/ReportStatusCodeLib.h>\r
-#include <Library/HobLib.h>\r
-#include <Library/EdkGenericBdsLib.h>\r
-#include <Library/MemoryAllocationLib.h>\r
-#include <Library/BaseMemoryLib.h>\r
-#include <Library/UefiBootServicesTableLib.h>\r
-#include <Library/UefiRuntimeServicesTableLib.h>\r
-#include <Library/DevicePathLib.h>\r
-#include <Library/FrameworkHiiLib.h>\r
-#include <Library/PeCoffLib.h>\r
-#include <Library/PcdLib.h>\r
-\r
-\r
-//\r
-// Bds AP Context data\r
-//\r
-#define EFI_BDS_ARCH_PROTOCOL_INSTANCE_SIGNATURE EFI_SIGNATURE_32 ('B', 'd', 's', 'A')\r
-typedef struct {\r
- UINTN Signature;\r
-\r
- EFI_HANDLE Handle;\r
-\r
- EFI_BDS_ARCH_PROTOCOL Bds;\r
-\r
- //\r
- // Save the current boot mode\r
- //\r
- EFI_BOOT_MODE BootMode;\r
-\r
- //\r
- // Set true if boot with default settings\r
- //\r
- BOOLEAN DefaultBoot;\r
-\r
- //\r
- // The system default timeout for choose the boot option\r
- //\r
- UINT16 TimeoutDefault;\r
-\r
- //\r
- // Memory Test Level\r
- //\r
- EXTENDMEM_COVERAGE_LEVEL MemoryTestLevel;\r
-\r
-} EFI_BDS_ARCH_PROTOCOL_INSTANCE;\r
-\r
-#define EFI_BDS_ARCH_PROTOCOL_INSTANCE_FROM_THIS(_this) \\r
- CR (_this, \\r
- EFI_BDS_ARCH_PROTOCOL_INSTANCE, \\r
- Bds, \\r
- EFI_BDS_ARCH_PROTOCOL_INSTANCE_SIGNATURE \\r
- )\r
-\r
-//\r
-// Prototypes\r
-//\r
-EFI_STATUS\r
-EFIAPI\r
-BdsInitialize (\r
- IN EFI_HANDLE ImageHandle,\r
- IN EFI_SYSTEM_TABLE *SystemTable\r
- );\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-BdsEntry (\r
- IN EFI_BDS_ARCH_PROTOCOL *This\r
- );\r
-\r
-#endif\r