]> git.proxmox.com Git - mirror_edk2.git/blame - UnixPkg/Library/UnixBdsLib/BdsPlatform.h
retried graphics library class from MdePkg
[mirror_edk2.git] / UnixPkg / Library / UnixBdsLib / BdsPlatform.h
CommitLineData
804405e7 1/*++\r
2\r
3Copyright (c) 2006, Intel Corporation \r
4All rights reserved. This program and the accompanying materials \r
5are licensed and made available under the terms and conditions of the BSD License \r
6which accompanies this distribution. The full text of the license may be found at \r
7http://opensource.org/licenses/bsd-license.php \r
8 \r
9THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
10WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
11\r
12Module Name: \r
13\r
14 BdsPlatform.h\r
15\r
16Abstract:\r
17\r
18 Head file for BDS Platform specific code\r
19\r
20--*/\r
21\r
22#ifndef _BDS_PLATFORM_H\r
23#define _BDS_PLATFORM_H\r
24\r
25#include <PiDxe.h>\r
26\r
27#include <Library/DebugLib.h>\r
28#include <Library/BaseMemoryLib.h>\r
29#include <Library/UefiBootServicesTableLib.h>\r
30#include <Library/MemoryAllocationLib.h>\r
31#include <Library/BaseLib.h>\r
32#include <Library/PcdLib.h>\r
33#include <Library/GenericBdsLib.h>\r
34#include <Library/PlatformBdsLib.h>\r
c5085e11 35#include <Library/DevicePathLib.h>\r
804405e7 36\r
37#include <Protocol/UnixThunk.h>\r
38#include <Protocol/UnixIo.h>\r
39#include <Guid/Bmp.h>\r
40\r
41extern BDS_CONSOLE_CONNECT_ENTRY gPlatformConsole[];\r
42extern EFI_DEVICE_PATH_PROTOCOL *gPlatformConnectSequence[];\r
43extern EFI_DEVICE_PATH_PROTOCOL *gPlatformDriverOption[];\r
44\r
45#define gEndEntire \\r
46 { \\r
47 END_DEVICE_PATH_TYPE,\\r
48 END_ENTIRE_DEVICE_PATH_SUBTYPE,\\r
49 END_DEVICE_PATH_LENGTH,\\r
50 0\\r
51 }\r
52\r
53typedef struct {\r
54 VENDOR_DEVICE_PATH VendorDevicePath;\r
55 UINT32 Instance;\r
56} UNIX_VENDOR_DEVICE_PATH_NODE;\r
57\r
58//\r
59// Below is the platform console device path\r
60//\r
61typedef struct {\r
62 VENDOR_DEVICE_PATH UnixBus;\r
63 UNIX_VENDOR_DEVICE_PATH_NODE SerialDevice;\r
64 UART_DEVICE_PATH Uart;\r
65 VENDOR_DEVICE_PATH TerminalType;\r
66 EFI_DEVICE_PATH_PROTOCOL End;\r
67} UNIX_ISA_SERIAL_DEVICE_PATH;\r
68\r
69typedef struct {\r
70 VENDOR_DEVICE_PATH UnixBus;\r
71 UNIX_VENDOR_DEVICE_PATH_NODE UnixUgaDevice;\r
72 EFI_DEVICE_PATH_PROTOCOL End;\r
73} UNIX_PLATFORM_UGA_DEVICE_PATH;\r
74\r
75typedef struct {\r
76 VENDOR_DEVICE_PATH UnixBus;\r
77 UNIX_VENDOR_DEVICE_PATH_NODE ConsoleDevice;\r
78 EFI_DEVICE_PATH_PROTOCOL End;\r
79} UNIX_CONSOLE_DEVICE_PATH;\r
80//\r
81// Platform BDS Functions\r
82//\r
83VOID\r
84PlatformBdsInit (\r
85 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE *PrivateData\r
86 )\r
87;\r
88\r
89VOID\r
90PlatformBdsPolicyBehavior (\r
91 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE *PrivateData,\r
92 IN LIST_ENTRY *DriverOptionList,\r
93 IN LIST_ENTRY *BootOptionList\r
94 )\r
95;\r
96\r
97VOID\r
98PlatformBdsGetDriverOption (\r
99 IN LIST_ENTRY *BdsDriverLists\r
100 )\r
101;\r
102\r
103EFI_STATUS\r
104BdsMemoryTest (\r
105 EXTENDMEM_COVERAGE_LEVEL Level\r
106 )\r
107;\r
108\r
109EFI_STATUS\r
110PlatformBdsShowProgress (\r
111 EFI_GRAPHICS_OUTPUT_BLT_PIXEL TitleForeground,\r
112 EFI_GRAPHICS_OUTPUT_BLT_PIXEL TitleBackground,\r
113 CHAR16 *Title,\r
114 EFI_GRAPHICS_OUTPUT_BLT_PIXEL ProgressColor,\r
115 UINTN Progress,\r
116 UINTN PreviousValue\r
117 )\r
118;\r
119\r
120VOID\r
121PlatformBdsConnectSequence (\r
122 VOID\r
123 )\r
124;\r
125\r
126VOID\r
127PlatformBdsBootFail (\r
128 IN BDS_COMMON_OPTION *Option,\r
129 IN EFI_STATUS Status,\r
130 IN CHAR16 *ExitData,\r
131 IN UINTN ExitDataSize\r
132 )\r
133;\r
134\r
135VOID\r
136PlatformBdsBootSuccess (\r
137 IN BDS_COMMON_OPTION *Option\r
138 )\r
139;\r
140\r
141EFI_STATUS\r
142ProcessCapsules (\r
143 EFI_BOOT_MODE BootMode\r
144 )\r
145;\r
146\r
147EFI_STATUS\r
148PlatformBdsConnectConsole (\r
149 IN BDS_CONSOLE_CONNECT_ENTRY *PlatformConsole\r
150 )\r
151;\r
152\r
153EFI_STATUS\r
154PlatformBdsNoConsoleAction (\r
155 VOID\r
156 )\r
157;\r
158\r
159VOID\r
160PlatformBdsEnterFrontPage (\r
161 IN UINT16 TimeoutDefault,\r
162 IN BOOLEAN ConnectAllHappened\r
163 );\r
164\r
165#endif // _BDS_PLATFORM_H\r