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
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.
18 Head file for BDS Platform specific code
22 #ifndef _BDS_PLATFORM_H
23 #define _BDS_PLATFORM_H
26 // Include common header file for this module.
28 #include "CommonHeader.h"
30 #include "IndustryStandard/Pci22.h"
32 extern BDS_CONSOLE_CONNECT_ENTRY gPlatformConsole
[];
33 extern EFI_DEVICE_PATH_PROTOCOL
*gPlatformConnectSequence
[];
34 extern EFI_DEVICE_PATH_PROTOCOL
*gPlatformDriverOption
[];
38 END_DEVICE_PATH_TYPE,\
39 END_ENTIRE_DEVICE_PATH_SUBTYPE,\
40 END_DEVICE_PATH_LENGTH,\
45 VENDOR_DEVICE_PATH VendorDevicePath
;
47 } WIN_NT_VENDOR_DEVICE_PATH_NODE
;
50 // Below is the platform console device path
53 VENDOR_DEVICE_PATH NtBus
;
54 WIN_NT_VENDOR_DEVICE_PATH_NODE SerialDevice
;
55 UART_DEVICE_PATH Uart
;
56 VENDOR_DEVICE_PATH TerminalType
;
57 EFI_DEVICE_PATH_PROTOCOL End
;
58 } NT_ISA_SERIAL_DEVICE_PATH
;
61 VENDOR_DEVICE_PATH NtBus
;
62 WIN_NT_VENDOR_DEVICE_PATH_NODE NtUgaDevice
;
63 EFI_DEVICE_PATH_PROTOCOL End
;
64 } NT_PLATFORM_UGA_DEVICE_PATH
;
67 VENDOR_DEVICE_PATH NtBus
;
68 WIN_NT_VENDOR_DEVICE_PATH_NODE NtGopDevice
;
69 EFI_DEVICE_PATH_PROTOCOL End
;
70 } NT_PLATFORM_GOP_DEVICE_PATH
;
73 VENDOR_DEVICE_PATH NtBus
;
74 WIN_NT_VENDOR_DEVICE_PATH_NODE NtCpuModelDevice
;
75 EFI_DEVICE_PATH_PROTOCOL End
;
76 } NT_PLATFORM_CPU_MODEL_VIRTUAL_DEVICE_PATH
;
79 VENDOR_DEVICE_PATH NtBus
;
80 WIN_NT_VENDOR_DEVICE_PATH_NODE NtCpuSpeedDevice
;
81 EFI_DEVICE_PATH_PROTOCOL End
;
82 } NT_PLATFORM_CPU_SPEED_VIRTUAL_DEVICE_PATH
;
85 VENDOR_DEVICE_PATH NtBus
;
86 WIN_NT_VENDOR_DEVICE_PATH_NODE NtMemoryDeivce
;
87 EFI_DEVICE_PATH_PROTOCOL End
;
88 } NT_PLATFORM_MEMORY_VIRTUAL_DEVICE_PATH
;
91 // Platform BDS Functions
95 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE
*PrivateData
100 PlatformBdsPolicyBehavior (
101 IN EFI_BDS_ARCH_PROTOCOL_INSTANCE
*PrivateData
,
102 IN LIST_ENTRY
*DriverOptionList
,
103 IN LIST_ENTRY
*BootOptionList
108 PlatformBdsGetDriverOption (
109 IN LIST_ENTRY
*BdsDriverLists
115 EXTENDMEM_COVERAGE_LEVEL Level
120 PlatformBdsShowProgress (
121 EFI_GRAPHICS_OUTPUT_BLT_PIXEL TitleForeground
,
122 EFI_GRAPHICS_OUTPUT_BLT_PIXEL TitleBackground
,
124 EFI_GRAPHICS_OUTPUT_BLT_PIXEL ProgressColor
,
131 PlatformBdsConnectSequence (
137 PlatformBdsBootFail (
138 IN BDS_COMMON_OPTION
*Option
,
139 IN EFI_STATUS Status
,
141 IN UINTN ExitDataSize
146 PlatformBdsBootSuccess (
147 IN BDS_COMMON_OPTION
*Option
153 EFI_BOOT_MODE BootMode
158 PlatformBdsConnectConsole (
159 IN BDS_CONSOLE_CONNECT_ENTRY
*PlatformConsole
164 PlatformBdsNoConsoleAction (
169 #endif // _BDS_PLATFORM_H