]> git.proxmox.com Git - mirror_edk2.git/blame - MdeModulePkg/Universal/BdsDxe/Bds.h
sync comments, fix function header, rename variable name to follow coding style.
[mirror_edk2.git] / MdeModulePkg / Universal / BdsDxe / Bds.h
CommitLineData
fd6a62f3 1/** @file\r
2 Head file for BDS Architectural Protocol implementation\r
93e3992d 3\r
fd6a62f3 4Copyright (c) 2004 - 2008, Intel Corporation. <BR>\r
93e3992d 5All rights reserved. This program and the accompanying materials\r
6are licensed and made available under the terms and conditions of the BSD License\r
7which accompanies this distribution. The full text of the license may be found at\r
8http://opensource.org/licenses/bsd-license.php\r
9\r
10THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
11WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
12\r
fd6a62f3 13**/\r
93e3992d 14\r
15#ifndef _BDS_MODULE_H_\r
16#define _BDS_MODULE_H_\r
17\r
18#undef EFI_SPECIFICATION_VERSION\r
19#define EFI_SPECIFICATION_VERSION 0x0002000A\r
20#include <PiDxe.h>\r
21#include <MdeModuleHii.h>\r
22\r
23#include <Guid/FileSystemVolumeLabelInfo.h>\r
24#include <Protocol/DevicePath.h>\r
25#include <Guid/BootState.h>\r
26#include <Guid/DataHubRecords.h>\r
27#include <Protocol/LoadFile.h>\r
28#include <Protocol/CpuIo.h>\r
93e3992d 29#include <Guid/FileInfo.h>\r
30#include <Protocol/HiiConfigRouting.h>\r
31#include <Protocol/Bds.h>\r
32#include <Protocol/DataHub.h>\r
33#include <Protocol/UgaDraw.h>\r
34#include <Protocol/BlockIo.h>\r
35#include <Guid/GlobalVariable.h>\r
36#include <Guid/GenericPlatformVariable.h>\r
37#include <Guid/CapsuleVendor.h>\r
38#include <Protocol/ConsoleControl.h>\r
39#include <Protocol/GenericMemoryTest.h>\r
40#include <Protocol/FormBrowser2.h>\r
41#include <Protocol/HiiConfigAccess.h>\r
42#include <Protocol/GraphicsOutput.h>\r
43#include <Protocol/SimpleFileSystem.h>\r
44#include <Protocol/HiiDatabase.h>\r
45#include <Protocol/HiiString.h>\r
46#include <Protocol/SerialIo.h>\r
47#include <Protocol/LegacyBios.h>\r
48#include <Protocol/SimpleTextInEx.h>\r
49#include <Protocol/Performance.h>\r
50\r
51#include <Library/UefiDriverEntryPoint.h>\r
52#include <Library/PrintLib.h>\r
53#include <Library/DebugLib.h>\r
54#include <Library/BaseMemoryLib.h>\r
55#include <Library/UefiBootServicesTableLib.h>\r
56#include <Library/UefiLib.h>\r
57#include <Library/GraphicsLib.h>\r
58#include <Library/MemoryAllocationLib.h>\r
93e3992d 59#include <Library/PerformanceLib.h>\r
60#include <Library/ReportStatusCodeLib.h>\r
61#include <Library/IfrSupportLib.h>\r
9226efe5 62#include <Library/ExtendedIfrSupportLib.h>\r
93e3992d 63#include <Library/UefiRuntimeServicesTableLib.h>\r
64#include <Library/HobLib.h>\r
65#include <Library/BaseLib.h>\r
66#include <Library/DevicePathLib.h>\r
67#include <Library/PcdLib.h>\r
68#include <Library/CapsuleLib.h>\r
69#include <Library/HiiLib.h>\r
9226efe5 70#include <Library/ExtendedHiiLib.h>\r
71\r
93e3992d 72\r
73#include <Library/GenericBdsLib.h>\r
74#include <Library/PlatformBdsLib.h>\r
75\r
76#define EFI_BDS_ARCH_PROTOCOL_INSTANCE_FROM_THIS(_this) \\r
77 CR (_this, \\r
78 EFI_BDS_ARCH_PROTOCOL_INSTANCE, \\r
79 Bds, \\r
80 EFI_BDS_ARCH_PROTOCOL_INSTANCE_SIGNATURE \\r
81 )\r
82\r
26238559 83/**\r
84\r
85 Show progress bar with title above it. It only works in Graphics mode.\r
86\r
87\r
88 @param TitleForeground Foreground color for Title.\r
89 @param TitleBackground Background color for Title.\r
90 @param Title Title above progress bar.\r
91 @param ProgressColor Progress bar color.\r
92 @param Progress Progress (0-100)\r
93 @param PreviousValue The previous value of the progress.\r
94\r
95 @retval EFI_STATUS Success update the progress bar\r
96\r
97**/\r
93e3992d 98EFI_STATUS\r
99PlatformBdsShowProgress (\r
100 IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL TitleForeground,\r
101 IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL TitleBackground,\r
102 IN CHAR16 *Title,\r
103 IN EFI_GRAPHICS_OUTPUT_BLT_PIXEL ProgressColor,\r
104 IN UINTN Progress,\r
105 IN UINTN PreviousValue\r
106 );\r
107\r
108//\r
109// Prototypes\r
110//\r
b30312ba 111\r
112/**\r
113\r
114 Install Boot Device Selection Protocol\r
115\r
116\r
117 @param ImageHandle The image handle.\r
118 @param SystemTable The system table.\r
119\r
120 @retval EFI_SUCEESS BDS has finished initializing.\r
121 Rerun the\r
122 dispatcher and recall BDS.Entry\r
123 @retval Other Return value from AllocatePool()\r
124 or gBS->InstallProtocolInterface\r
125\r
126**/\r
93e3992d 127EFI_STATUS\r
128EFIAPI\r
129BdsInitialize (\r
130 IN EFI_HANDLE ImageHandle,\r
131 IN EFI_SYSTEM_TABLE *SystemTable\r
132 );\r
133\r
b30312ba 134/**\r
135\r
136 Service routine for BdsInstance->Entry(). Devices are connected, the\r
137 consoles are initialized, and the boot options are tried.\r
138\r
b30312ba 139 @param This - Protocol Instance structure.\r
140\r
b30312ba 141**/\r
93e3992d 142VOID\r
143EFIAPI\r
144BdsEntry (\r
145 IN EFI_BDS_ARCH_PROTOCOL *This\r
146 );\r
147\r
148#endif\r