Fixed EDKT419.
[mirror_edk2.git] / EdkNt32Pkg / Dxe / PlatformBds / BdsPlatform.h
1 /*++
2
3 Copyright (c) 2006, Intel Corporation
4 All rights reserved. This program and the accompanying materials
5 are licensed and made available under the terms and conditions of the BSD License
6 which accompanies this distribution. The full text of the license may be found at
7 http://opensource.org/licenses/bsd-license.php
8
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
11
12 Module Name:
13
14 BdsPlatform.h
15
16 Abstract:
17
18 Head file for BDS Platform specific code
19
20 --*/
21
22 #ifndef _BDS_PLATFORM_H
23 #define _BDS_PLATFORM_H
24
25 #include "IndustryStandard/Pci22.h"
26
27 extern BDS_CONSOLE_CONNECT_ENTRY gPlatformConsole[];
28 extern EFI_DEVICE_PATH_PROTOCOL *gPlatformConnectSequence[];
29 extern EFI_DEVICE_PATH_PROTOCOL *gPlatformDriverOption[];
30
31 #define gEndEntire \
32 { \
33 END_DEVICE_PATH_TYPE,\
34 END_ENTIRE_DEVICE_PATH_SUBTYPE,\
35 END_DEVICE_PATH_LENGTH,\
36 0\
37 }
38
39 typedef struct {
40 VENDOR_DEVICE_PATH VendorDevicePath;
41 UINT32 Instance;
42 } WIN_NT_VENDOR_DEVICE_PATH_NODE;
43
44 //
45 // Below is the platform console device path
46 //
47 typedef struct {
48 VENDOR_DEVICE_PATH NtBus;
49 WIN_NT_VENDOR_DEVICE_PATH_NODE SerialDevice;
50 UART_DEVICE_PATH Uart;
51 VENDOR_DEVICE_PATH TerminalType;
52 EFI_DEVICE_PATH_PROTOCOL End;
53 } NT_ISA_SERIAL_DEVICE_PATH;
54
55 typedef struct {
56 VENDOR_DEVICE_PATH NtBus;
57 WIN_NT_VENDOR_DEVICE_PATH_NODE NtUgaDevice;
58 EFI_DEVICE_PATH_PROTOCOL End;
59 } NT_PLATFORM_UGA_DEVICE_PATH;
60
61 //
62 // Platform BDS Functions
63 //
64 VOID
65 PlatformBdsInit (
66 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE *PrivateData
67 )
68 ;
69
70 VOID
71 PlatformBdsPolicyBehavior (
72 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE *PrivateData,
73 IN LIST_ENTRY *DriverOptionList,
74 IN LIST_ENTRY *BootOptionList
75 )
76 ;
77
78 VOID
79 PlatformBdsGetDriverOption (
80 IN LIST_ENTRY *BdsDriverLists
81 )
82 ;
83
84 EFI_STATUS
85 BdsMemoryTest (
86 EXTENDMEM_COVERAGE_LEVEL Level
87 )
88 ;
89
90 EFI_STATUS
91 PlatformBdsShowProgress (
92 EFI_UGA_PIXEL TitleForeground,
93 EFI_UGA_PIXEL TitleBackground,
94 CHAR16 *Title,
95 EFI_UGA_PIXEL ProgressColor,
96 UINTN Progress,
97 UINTN PreviousValue
98 )
99 ;
100
101 VOID
102 PlatformBdsConnectSequence (
103 VOID
104 )
105 ;
106
107 VOID
108 PlatformBdsBootFail (
109 IN BDS_COMMON_OPTION *Option,
110 IN EFI_STATUS Status,
111 IN CHAR16 *ExitData,
112 IN UINTN ExitDataSize
113 )
114 ;
115
116 VOID
117 PlatformBdsBootSuccess (
118 IN BDS_COMMON_OPTION *Option
119 )
120 ;
121
122 EFI_STATUS
123 ProcessCapsules (
124 EFI_BOOT_MODE BootMode
125 )
126 ;
127
128 EFI_STATUS
129 PlatformBdsConnectConsole (
130 IN BDS_CONSOLE_CONNECT_ENTRY *PlatformConsole
131 )
132 ;
133
134 EFI_STATUS
135 PlatformBdsNoConsoleAction (
136 VOID
137 )
138 ;
139
140 #endif // _BDS_PLATFORM_H