2 Defined the platform specific device path which will be used by
3 platform Bbd to perform the platform policy connect.
5 Copyright (c) 2020, Rebecca Cran <rebecca@bsdio.com>
6 Copyright (c) 2004 - 2017, Intel Corporation. All rights reserved.<BR>
7 SPDX-License-Identifier: BSD-2-Clause-Patent
11 #include "BdsPlatform.h"
12 #include <Guid/QemuRamfb.h>
15 // Debug Agent UART Device Path structure
19 VENDOR_DEVICE_PATH VendorHardware
;
20 UART_DEVICE_PATH Uart
;
21 VENDOR_DEVICE_PATH TerminalType
;
22 EFI_DEVICE_PATH_PROTOCOL End
;
23 } VENDOR_UART_DEVICE_PATH
;
27 // USB Keyboard Device Path structure
31 USB_CLASS_DEVICE_PATH Keyboard
;
32 EFI_DEVICE_PATH_PROTOCOL End
;
33 } USB_KEYBOARD_DEVICE_PATH
;
37 // QemuRamfb Device Path structure
41 VENDOR_DEVICE_PATH Vendor
;
42 ACPI_ADR_DEVICE_PATH AcpiAdr
;
43 EFI_DEVICE_PATH_PROTOCOL End
;
44 } VENDOR_RAMFB_DEVICE_PATH
;
47 ACPI_HID_DEVICE_PATH gPnpPs2KeyboardDeviceNode
= gPnpPs2Keyboard
;
48 ACPI_HID_DEVICE_PATH gPnp16550ComPortDeviceNode
= gPnp16550ComPort
;
49 UART_DEVICE_PATH gUartDeviceNode
= gUart
;
50 VENDOR_DEVICE_PATH gTerminalTypeDeviceNode
= gPcAnsiTerminal
;
53 // Platform specific keyboard device path
58 // Debug Agent UART Device Path
60 VENDOR_UART_DEVICE_PATH gDebugAgentUartDevicePath
= {
66 (UINT8
) (sizeof (VENDOR_DEVICE_PATH
)),
67 (UINT8
) ((sizeof (VENDOR_DEVICE_PATH
)) >> 8)
74 MESSAGING_DEVICE_PATH
,
77 (UINT8
) (sizeof (UART_DEVICE_PATH
)),
78 (UINT8
) ((sizeof (UART_DEVICE_PATH
)) >> 8)
82 0, // BaudRate - Default
83 0, // DataBits - Default
84 0, // Parity - Default
85 0, // StopBits - Default
91 STATIC USB_KEYBOARD_DEVICE_PATH gUsbKeyboardDevicePath
= {
94 MESSAGING_DEVICE_PATH
,
97 (UINT8
)sizeof (USB_CLASS_DEVICE_PATH
),
98 (UINT8
)(sizeof (USB_CLASS_DEVICE_PATH
) >> 8)
101 0xFFFF, // VendorId: any
102 0xFFFF, // ProductId: any
103 3, // DeviceClass: HID
104 1, // DeviceSubClass: boot
105 1 // DeviceProtocol: keyboard
110 STATIC VENDOR_RAMFB_DEVICE_PATH gQemuRamfbDevicePath
= {
113 HARDWARE_DEVICE_PATH
,
116 (UINT8
) (sizeof (VENDOR_DEVICE_PATH
)),
117 (UINT8
) ((sizeof (VENDOR_DEVICE_PATH
)) >> 8)
127 (UINT8
) (sizeof (ACPI_ADR_DEVICE_PATH
)),
128 (UINT8
) ((sizeof (ACPI_ADR_DEVICE_PATH
)) >> 8)
137 ACPI_ADR_DISPLAY_TYPE_EXTERNAL_DIGITAL
, // Type
146 // Predefined platform default console device path
148 PLATFORM_CONSOLE_CONNECT_ENTRY gPlatformConsole
[] = {
150 (EFI_DEVICE_PATH_PROTOCOL
*) &gDebugAgentUartDevicePath
,
151 (CONSOLE_OUT
| CONSOLE_IN
| STD_ERROR
)
154 (EFI_DEVICE_PATH_PROTOCOL
*)&gUsbKeyboardDevicePath
,
158 (EFI_DEVICE_PATH_PROTOCOL
*)&gQemuRamfbDevicePath
,
168 // Predefined platform connect sequence
170 EFI_DEVICE_PATH_PROTOCOL
*gPlatformConnectSequence
[] = { NULL
};