Migrate GOP driver from R8.6 for NT32. Add a new PCD "PcdWinNtGop". Setting NT32...
[mirror_edk2.git] / EdkNt32Pkg / Dxe / PlatformBds / BdsPlatform.h
CommitLineData
878ddf1f 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 "IndustryStandard/Pci22.h"\r
26\r
27extern BDS_CONSOLE_CONNECT_ENTRY gPlatformConsole[];\r
28extern EFI_DEVICE_PATH_PROTOCOL *gPlatformConnectSequence[];\r
29extern EFI_DEVICE_PATH_PROTOCOL *gPlatformDriverOption[];\r
30\r
31#define gEndEntire \\r
32 { \\r
33 END_DEVICE_PATH_TYPE,\\r
34 END_ENTIRE_DEVICE_PATH_SUBTYPE,\\r
35 END_DEVICE_PATH_LENGTH,\\r
36 0\\r
37 }\r
38\r
39typedef struct {\r
40 VENDOR_DEVICE_PATH VendorDevicePath;\r
41 UINT32 Instance;\r
42} WIN_NT_VENDOR_DEVICE_PATH_NODE;\r
43\r
44//\r
45// Below is the platform console device path\r
46//\r
47typedef struct {\r
48 VENDOR_DEVICE_PATH NtBus;\r
49 WIN_NT_VENDOR_DEVICE_PATH_NODE SerialDevice;\r
50 UART_DEVICE_PATH Uart;\r
51 VENDOR_DEVICE_PATH TerminalType;\r
52 EFI_DEVICE_PATH_PROTOCOL End;\r
53} NT_ISA_SERIAL_DEVICE_PATH;\r
54\r
55typedef struct {\r
56 VENDOR_DEVICE_PATH NtBus;\r
57 WIN_NT_VENDOR_DEVICE_PATH_NODE NtUgaDevice;\r
58 EFI_DEVICE_PATH_PROTOCOL End;\r
59} NT_PLATFORM_UGA_DEVICE_PATH;\r
60\r
72b695f3 61typedef struct {\r
62 VENDOR_DEVICE_PATH NtBus;\r
63 WIN_NT_VENDOR_DEVICE_PATH_NODE NtGopDevice;\r
64 EFI_DEVICE_PATH_PROTOCOL End;\r
65} NT_PLATFORM_GOP_DEVICE_PATH;\r
66\r
878ddf1f 67//\r
68// Platform BDS Functions\r
69//\r
70VOID\r
71PlatformBdsInit (\r
72 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE *PrivateData\r
73 )\r
74;\r
75\r
76VOID\r
77PlatformBdsPolicyBehavior (\r
78 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE *PrivateData,\r
79 IN LIST_ENTRY *DriverOptionList,\r
80 IN LIST_ENTRY *BootOptionList\r
81 )\r
82;\r
83\r
84VOID\r
85PlatformBdsGetDriverOption (\r
86 IN LIST_ENTRY *BdsDriverLists\r
87 )\r
88;\r
89\r
90EFI_STATUS\r
91BdsMemoryTest (\r
92 EXTENDMEM_COVERAGE_LEVEL Level\r
93 )\r
94;\r
95\r
96EFI_STATUS\r
97PlatformBdsShowProgress (\r
406adcd1 98 EFI_GRAPHICS_OUTPUT_BLT_PIXEL TitleForeground,\r
99 EFI_GRAPHICS_OUTPUT_BLT_PIXEL TitleBackground,\r
100 CHAR16 *Title,\r
101 EFI_GRAPHICS_OUTPUT_BLT_PIXEL ProgressColor,\r
102 UINTN Progress,\r
103 UINTN PreviousValue\r
878ddf1f 104 )\r
105;\r
106\r
107VOID\r
108PlatformBdsConnectSequence (\r
109 VOID\r
110 )\r
111;\r
112\r
113VOID\r
114PlatformBdsBootFail (\r
115 IN BDS_COMMON_OPTION *Option,\r
116 IN EFI_STATUS Status,\r
117 IN CHAR16 *ExitData,\r
118 IN UINTN ExitDataSize\r
119 )\r
120;\r
121\r
122VOID\r
123PlatformBdsBootSuccess (\r
124 IN BDS_COMMON_OPTION *Option\r
125 )\r
126;\r
127\r
128EFI_STATUS\r
129ProcessCapsules (\r
130 EFI_BOOT_MODE BootMode\r
131 )\r
132;\r
133\r
134EFI_STATUS\r
135PlatformBdsConnectConsole (\r
136 IN BDS_CONSOLE_CONNECT_ENTRY *PlatformConsole\r
137 )\r
138;\r
139\r
140EFI_STATUS\r
141PlatformBdsNoConsoleAction (\r
142 VOID\r
143 )\r
144;\r
145\r
146#endif // _BDS_PLATFORM_H\r