--- /dev/null
+/*++\r
+ \r
+Copyright (c) 2006, Intel Corporation \r
+All rights reserved. This program and the accompanying materials \r
+are licensed and made available under the terms and conditions of the BSD License \r
+which accompanies this distribution. The full text of the license may be found at \r
+http://opensource.org/licenses/bsd-license.php \r
+ \r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+\r
+Module Name:\r
+\r
+ MiscDevicePath.h\r
+\r
+Abstract:\r
+\r
+ Misc class required EFI Device Path definitions (Ports, slots & \r
+ onboard devices)\r
+\r
+--*/\r
+\r
+#ifndef _MISC_DEVICE_PATH_H\r
+#define _MISC_DEVICE_PATH_H\r
+\r
+\r
+#pragma pack(1)\r
+//\r
+// USB\r
+//\r
+\r
+/* For reference:\r
+#define USB1_1_STR "ACPI(PNP0A03,0)/PCI(1D,0)."\r
+#define USB1_2_STR "ACPI(PNP0A03,0)/PCI(1D,1)."\r
+#define USB1_3_STR "ACPI(PNP0A03,0)/PCI(1D,2)."\r
+#define USB2_1_STR "ACPI(PNP0A03,0)/PCI(1D,7)." \r
+*/\r
+\r
+//\r
+// #define acpi { 0x02, 0x01, 0x00, 0x0C, 0x0a0341d0, 0x00000000 }\r
+// #define pci( device,function) { 0x01, 0x01, 0x00, 0x06, device, function }\r
+// #define end { 0xFF, 0xFF, 0x00, 0x04 }\r
+//\r
+#define DP_ACPI \\r
+ { \\r
+ ACPI_DEVICE_PATH, ACPI_DP, (UINT8) (sizeof (ACPI_HID_DEVICE_PATH)), (UINT8) \\r
+ ((sizeof (ACPI_HID_DEVICE_PATH)) >> 8), EISA_PNP_ID (0x0A03), 0 \\r
+ }\r
+#define DP_PCI(device, function) \\r
+ { \\r
+ HARDWARE_DEVICE_PATH, HW_PCI_DP, (UINT8) (sizeof (PCI_DEVICE_PATH)), (UINT8) \\r
+ ((sizeof (PCI_DEVICE_PATH)) >> 8), function, device \\r
+ }\r
+#define DP_END \\r
+ { \\r
+ END_DEVICE_PATH_TYPE, END_ENTIRE_DEVICE_PATH_SUBTYPE, END_DEVICE_PATH_LENGTH, 0 \\r
+ }\r
+\r
+#define DP_LPC(eisaid, function) \\r
+ { \\r
+ ACPI_DEVICE_PATH, ACPI_DP, (UINT8) (sizeof (ACPI_HID_DEVICE_PATH)), (UINT8) \\r
+ ((sizeof (ACPI_HID_DEVICE_PATH)) >> 8), EISA_PNP_ID (eisaid), function \\r
+ }\r
+\r
+//\r
+// Shanmu >> moved to TianoDevicePath.h\r
+//\r
+\r
+/*\r
+typedef struct _USB_PORT_DEVICE_PATH\r
+{\r
+ ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
+ PCI_DEVICE_PATH PciBusDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
+} USB_PORT_DEVICE_PATH;\r
+\r
+\r
+//IDE ??I am not sure. Should this be ATAPI_DEVICE_PATH\r
+typedef struct _IDE_DEVICE_PATH\r
+{\r
+ ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
+ PCI_DEVICE_PATH PciBusDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
+} IDE_DEVICE_PATH;\r
+\r
+//RMC Connector\r
+typedef struct _RMC_CONN_DEVICE_PATH\r
+{\r
+ ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
+ PCI_DEVICE_PATH PciBridgeDevicePath;\r
+ PCI_DEVICE_PATH PciBusDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
+} RMC_CONN_DEVICE_PATH;\r
+\r
+//static RMC_CONN_DEVICE_PATH mRmcConnDevicePath = { acpi, pci( 0x1E,0x00 ),pci( 0x0A,0x00 ), end };\r
+\r
+//RIDE\r
+typedef struct _RIDE_DEVICE_PATH\r
+{\r
+ ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
+ PCI_DEVICE_PATH PciBridgeDevicePath;\r
+ PCI_DEVICE_PATH PciBusDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
+} RIDE_DEVICE_PATH;\r
+\r
+//static RIDE_DEVICE_PATH mRideDevicePath = { acpi, pci( 0x1E,0x00 ),pci( 0x02,0x00 ), end };\r
+\r
+//Gigabit NIC\r
+//typedef struct _GB_NIC_DEVICE_PATH\r
+//{\r
+// ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
+// PCI_DEVICE_PATH PciBridgeDevicePath;\r
+// PCI_DEVICE_PATH PciXBridgeDevicePath;\r
+// PCI_DEVICE_PATH PciXBusDevicePath;\r
+// EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
+//} GB_NIC_DEVICE_PATH;\r
+\r
+//static GB_NIC_DEVICE_PATH mGbNicDevicePath = { acpi, pci( 0x03,0x00 ),pci( 0x1F,0x00 ),pci( 0x07,0x00 ), end };\r
+\r
+\r
+//P/S2 Connector\r
+typedef struct _PS2_CONN_DEVICE_PATH\r
+{\r
+ ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
+ PCI_DEVICE_PATH LpcBridgeDevicePath;\r
+ ACPI_HID_DEVICE_PATH LpcBusDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
+} PS2_CONN_DEVICE_PATH;\r
+\r
+//static PS2_CONN_DEVICE_PATH mPs2KeyboardDevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0303,0 ), end };\r
+//static PS2_CONN_DEVICE_PATH mPs2MouseDevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0303,1 ), end };\r
+\r
+//Serial Port Connector\r
+typedef struct _SERIAL_CONN_DEVICE_PATH\r
+{\r
+ ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
+ PCI_DEVICE_PATH LpcBridgeDevicePath;\r
+ ACPI_HID_DEVICE_PATH LpcBusDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
+} SERIAL_CONN_DEVICE_PATH;\r
+\r
+//static SERIAL_CONN_DEVICE_PATH mCom1DevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0501,0 ), end };\r
+//static SERIAL_CONN_DEVICE_PATH mCom2DevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0501,1 ), end };\r
+\r
+//Parallel Port Connector\r
+typedef struct _PARALLEL_CONN_DEVICE_PATH\r
+{\r
+ ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
+ PCI_DEVICE_PATH LpcBridgeDevicePath;\r
+ ACPI_HID_DEVICE_PATH LpcBusDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
+} PARALLEL_CONN_DEVICE_PATH;\r
+\r
+//static PARALLEL_CONN_DEVICE_PATH mLpt1DevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0401,0 ), end };\r
+\r
+//Floopy Connector\r
+typedef struct _FLOOPY_CONN_DEVICE_PATH\r
+{\r
+ ACPI_HID_DEVICE_PATH PciRootBridgeDevicePath;\r
+ PCI_DEVICE_PATH LpcBridgeDevicePath;\r
+ ACPI_HID_DEVICE_PATH LpcBusDevicePath;\r
+ EFI_DEVICE_PATH_PROTOCOL EndDevicePath;\r
+} FLOOPY_CONN_DEVICE_PATH;\r
+\r
+//static FLOOPY_CONN_DEVICE_PATH mFloopyADevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0604,0 ), end };\r
+//static FLOOPY_CONN_DEVICE_PATH mFloopyBDevicePath = { acpi, pci( 0x1F,0x00 ),lpc( 0x0604,1 ), end };\r
+\r
+*/\r
+\r
+//\r
+// End Shanmu\r
+//\r
+#pragma pack()\r
+\r
+#endif\r