2011-05-11 20:31:20 +02:00
|
|
|
/*++
|
2011-06-28 18:50:26 +02:00
|
|
|
|
2011-05-11 20:31:20 +02:00
|
|
|
Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>
|
2019-04-04 01:03:44 +02:00
|
|
|
SPDX-License-Identifier: BSD-2-Clause-Patent
|
2011-05-11 20:31:20 +02:00
|
|
|
|
|
|
|
Module Name:
|
|
|
|
|
|
|
|
MiscDevicePath.h
|
|
|
|
|
|
|
|
Abstract:
|
|
|
|
|
2011-06-28 18:50:26 +02:00
|
|
|
Misc class required EFI Device Path definitions (Ports, slots &
|
2011-05-11 20:31:20 +02:00
|
|
|
onboard devices)
|
|
|
|
|
|
|
|
**/
|
|
|
|
|
|
|
|
#ifndef _MISC_DEVICE_PATH_H
|
|
|
|
#define _MISC_DEVICE_PATH_H
|
|
|
|
|
|
|
|
|
|
|
|
#pragma pack(1)
|
|
|
|
//
|
|
|
|
// USB
|
|
|
|
//
|
|
|
|
|
|
|
|
/* For reference:
|
|
|
|
#define USB1_1_STR "ACPI(PNP0A03,0)/PCI(1D,0)."
|
|
|
|
#define USB1_2_STR "ACPI(PNP0A03,0)/PCI(1D,1)."
|
|
|
|
#define USB1_3_STR "ACPI(PNP0A03,0)/PCI(1D,2)."
|
2011-06-28 18:50:26 +02:00
|
|
|
#define USB2_1_STR "ACPI(PNP0A03,0)/PCI(1D,7)."
|
2011-05-11 20:31:20 +02:00
|
|
|
*/
|
|
|
|
|
|
|
|
//
|
|
|
|
// #define acpi { 0x02, 0x01, 0x00, 0x0C, 0x0a0341d0, 0x00000000 }
|
|
|
|
// #define pci( device,function) { 0x01, 0x01, 0x00, 0x06, device, function }
|
|
|
|
// #define end { 0xFF, 0xFF, 0x00, 0x04 }
|
|
|
|
//
|
|
|
|
#define DP_ACPI \
|
|
|
|
{ \
|
|
|
|
{ACPI_DEVICE_PATH, ACPI_DP, {(UINT8) (sizeof (ACPI_HID_DEVICE_PATH)), (UINT8) \
|
|
|
|
((sizeof (ACPI_HID_DEVICE_PATH)) >> 8)}}, EISA_PNP_ID (0x0A03), 0 \
|
|
|
|
}
|
|
|
|
#define DP_PCI(device, function) \
|
|
|
|
{ \
|
|
|
|
{HARDWARE_DEVICE_PATH, HW_PCI_DP, {(UINT8) (sizeof (PCI_DEVICE_PATH)), (UINT8) \
|
|
|
|
((sizeof (PCI_DEVICE_PATH)) >> 8)}}, function, device \
|
|
|
|
}
|
|
|
|
#define DP_END \
|
|
|
|
{ \
|
|
|
|
END_DEVICE_PATH_TYPE, END_ENTIRE_DEVICE_PATH_SUBTYPE, {END_DEVICE_PATH_LENGTH, 0} \
|
|
|
|
}
|
|
|
|
|
|
|
|
#define DP_LPC(eisaid, function) \
|
|
|
|
{ \
|
|
|
|
{ACPI_DEVICE_PATH, ACPI_DP, {(UINT8) (sizeof (ACPI_HID_DEVICE_PATH)), (UINT8) \
|
|
|
|
((sizeof (ACPI_HID_DEVICE_PATH)) >> 8)}}, EISA_PNP_ID (eisaid), function \
|
|
|
|
}
|
|
|
|
|
|
|
|
//
|
|
|
|
// Shanmu >> moved to TianoDevicePath.h
|
|
|
|
//
|
|
|
|
|
|
|
|
/*
|
|
|
|
typedef struct _USB_PORT_DEVICE_PATH
|
|
|
|
{
|
|
|
|
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH PciBusDevicePath;
|
|
|
|
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
|
|
|
|
} USB_PORT_DEVICE_PATH;
|
|
|
|
|
|
|
|
|
|
|
|
//IDE ??I am not sure. Should this be ATAPI_DEVICE_PATH
|
|
|
|
typedef struct _IDE_DEVICE_PATH
|
|
|
|
{
|
|
|
|
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH PciBusDevicePath;
|
|
|
|
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
|
|
|
|
} IDE_DEVICE_PATH;
|
|
|
|
|
|
|
|
//RMC Connector
|
|
|
|
typedef struct _RMC_CONN_DEVICE_PATH
|
|
|
|
{
|
|
|
|
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH PciBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH PciBusDevicePath;
|
|
|
|
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
|
|
|
|
} RMC_CONN_DEVICE_PATH;
|
|
|
|
|
|
|
|
//static RMC_CONN_DEVICE_PATH mRmcConnDevicePath = { acpi, pci( 0x1E,0x00 ),pci( 0x0A,0x00 ), end };
|
|
|
|
|
|
|
|
//RIDE
|
|
|
|
typedef struct _RIDE_DEVICE_PATH
|
|
|
|
{
|
|
|
|
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH PciBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH PciBusDevicePath;
|
|
|
|
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
|
|
|
|
} RIDE_DEVICE_PATH;
|
|
|
|
|
|
|
|
//static RIDE_DEVICE_PATH mRideDevicePath = { acpi, pci( 0x1E,0x00 ),pci( 0x02,0x00 ), end };
|
|
|
|
|
|
|
|
//Gigabit NIC
|
|
|
|
//typedef struct _GB_NIC_DEVICE_PATH
|
|
|
|
//{
|
|
|
|
// ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;
|
|
|
|
// PCI_DEVICE_PATH PciBridgeDevicePath;
|
|
|
|
// PCI_DEVICE_PATH PciXBridgeDevicePath;
|
|
|
|
// PCI_DEVICE_PATH PciXBusDevicePath;
|
|
|
|
// EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
|
|
|
|
//} GB_NIC_DEVICE_PATH;
|
|
|
|
|
|
|
|
//static GB_NIC_DEVICE_PATH mGbNicDevicePath = { acpi, pci( 0x03,0x00 ),pci( 0x1F,0x00 ),pci( 0x07,0x00 ), end };
|
|
|
|
|
|
|
|
|
|
|
|
//P/S2 Connector
|
|
|
|
typedef struct _PS2_CONN_DEVICE_PATH
|
|
|
|
{
|
|
|
|
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH LpcBridgeDevicePath;
|
|
|
|
ACPI_HID_DEVICE_PATH LpcBusDevicePath;
|
|
|
|
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
|
|
|
|
} PS2_CONN_DEVICE_PATH;
|
|
|
|
|
|
|
|
//static PS2_CONN_DEVICE_PATH mPs2KeyboardDevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0303,0 ), end };
|
|
|
|
//static PS2_CONN_DEVICE_PATH mPs2MouseDevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0303,1 ), end };
|
|
|
|
|
|
|
|
//Serial Port Connector
|
|
|
|
typedef struct _SERIAL_CONN_DEVICE_PATH
|
|
|
|
{
|
|
|
|
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH LpcBridgeDevicePath;
|
|
|
|
ACPI_HID_DEVICE_PATH LpcBusDevicePath;
|
|
|
|
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
|
|
|
|
} SERIAL_CONN_DEVICE_PATH;
|
|
|
|
|
|
|
|
//static SERIAL_CONN_DEVICE_PATH mCom1DevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0501,0 ), end };
|
|
|
|
//static SERIAL_CONN_DEVICE_PATH mCom2DevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0501,1 ), end };
|
|
|
|
|
|
|
|
//Parallel Port Connector
|
|
|
|
typedef struct _PARALLEL_CONN_DEVICE_PATH
|
|
|
|
{
|
|
|
|
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH LpcBridgeDevicePath;
|
|
|
|
ACPI_HID_DEVICE_PATH LpcBusDevicePath;
|
|
|
|
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
|
|
|
|
} PARALLEL_CONN_DEVICE_PATH;
|
|
|
|
|
|
|
|
//static PARALLEL_CONN_DEVICE_PATH mLpt1DevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0401,0 ), end };
|
|
|
|
|
|
|
|
//Floopy Connector
|
|
|
|
typedef struct _FLOOPY_CONN_DEVICE_PATH
|
|
|
|
{
|
|
|
|
ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;
|
|
|
|
PCI_DEVICE_PATH LpcBridgeDevicePath;
|
|
|
|
ACPI_HID_DEVICE_PATH LpcBusDevicePath;
|
|
|
|
EFI_DEVICE_PATH_PROTOCOL EndDevicePath;
|
|
|
|
} FLOOPY_CONN_DEVICE_PATH;
|
|
|
|
|
|
|
|
//static FLOOPY_CONN_DEVICE_PATH mFloopyADevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0604,0 ), end };
|
|
|
|
//static FLOOPY_CONN_DEVICE_PATH mFloopyBDevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0604,1 ), end };
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
//
|
|
|
|
// End Shanmu
|
|
|
|
//
|
|
|
|
#pragma pack()
|
|
|
|
|
|
|
|
#endif
|