• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*++
2 
3 Copyright (c) 2006, Intel Corporation. All rights reserved.<BR>
4 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   MiscDevicePath.h
15 
16 Abstract:
17 
18   Misc class required EFI Device Path definitions (Ports, slots &
19   onboard devices)
20 
21 **/
22 
23 #ifndef _MISC_DEVICE_PATH_H
24 #define _MISC_DEVICE_PATH_H
25 
26 
27 #pragma pack(1)
28 //
29 // USB
30 //
31 
32 /* For reference:
33 #define USB1_1_STR  "ACPI(PNP0A03,0)/PCI(1D,0)."
34 #define USB1_2_STR  "ACPI(PNP0A03,0)/PCI(1D,1)."
35 #define USB1_3_STR  "ACPI(PNP0A03,0)/PCI(1D,2)."
36 #define USB2_1_STR  "ACPI(PNP0A03,0)/PCI(1D,7)."
37 */
38 
39 //
40 // #define acpi { 0x02, 0x01, 0x00, 0x0C, 0x0a0341d0, 0x00000000 }
41 // #define pci( device,function)  { 0x01, 0x01, 0x00, 0x06, device, function }
42 // #define end  { 0xFF, 0xFF, 0x00, 0x04 }
43 //
44 #define DP_ACPI \
45   { \
46       {ACPI_DEVICE_PATH, ACPI_DP, {(UINT8) (sizeof (ACPI_HID_DEVICE_PATH)), (UINT8) \
47       ((sizeof (ACPI_HID_DEVICE_PATH)) >> 8)}}, EISA_PNP_ID (0x0A03), 0 \
48   }
49 #define DP_PCI(device, function) \
50   { \
51       {HARDWARE_DEVICE_PATH, HW_PCI_DP, {(UINT8) (sizeof (PCI_DEVICE_PATH)), (UINT8) \
52        ((sizeof (PCI_DEVICE_PATH)) >> 8)}}, function, device \
53   }
54 #define DP_END \
55   { \
56     END_DEVICE_PATH_TYPE, END_ENTIRE_DEVICE_PATH_SUBTYPE, {END_DEVICE_PATH_LENGTH, 0} \
57   }
58 
59 #define DP_LPC(eisaid, function) \
60   { \
61     {ACPI_DEVICE_PATH, ACPI_DP, {(UINT8) (sizeof (ACPI_HID_DEVICE_PATH)), (UINT8) \
62      ((sizeof (ACPI_HID_DEVICE_PATH)) >> 8)}}, EISA_PNP_ID (eisaid), function \
63   }
64 
65 //
66 // Shanmu >> moved to TianoDevicePath.h
67 //
68 
69 /*
70 typedef struct _USB_PORT_DEVICE_PATH
71 {
72   ACPI_HID_DEVICE_PATH    PciRootBridgeDevicePath;
73   PCI_DEVICE_PATH      PciBusDevicePath;
74   EFI_DEVICE_PATH_PROTOCOL  EndDevicePath;
75 } USB_PORT_DEVICE_PATH;
76 
77 
78 //IDE ??I am not sure. Should this be ATAPI_DEVICE_PATH
79 typedef struct _IDE_DEVICE_PATH
80 {
81   ACPI_HID_DEVICE_PATH    PciRootBridgeDevicePath;
82   PCI_DEVICE_PATH      PciBusDevicePath;
83   EFI_DEVICE_PATH_PROTOCOL  EndDevicePath;
84 } IDE_DEVICE_PATH;
85 
86 //RMC Connector
87 typedef struct _RMC_CONN_DEVICE_PATH
88 {
89   ACPI_HID_DEVICE_PATH    PciRootBridgeDevicePath;
90   PCI_DEVICE_PATH      PciBridgeDevicePath;
91   PCI_DEVICE_PATH      PciBusDevicePath;
92   EFI_DEVICE_PATH_PROTOCOL  EndDevicePath;
93 } RMC_CONN_DEVICE_PATH;
94 
95 //static RMC_CONN_DEVICE_PATH mRmcConnDevicePath = { acpi, pci( 0x1E,0x00 ),pci( 0x0A,0x00 ), end };
96 
97 //RIDE
98 typedef struct _RIDE_DEVICE_PATH
99 {
100   ACPI_HID_DEVICE_PATH    PciRootBridgeDevicePath;
101   PCI_DEVICE_PATH      PciBridgeDevicePath;
102   PCI_DEVICE_PATH      PciBusDevicePath;
103   EFI_DEVICE_PATH_PROTOCOL  EndDevicePath;
104 } RIDE_DEVICE_PATH;
105 
106 //static RIDE_DEVICE_PATH mRideDevicePath = { acpi, pci( 0x1E,0x00 ),pci( 0x02,0x00 ), end };
107 
108 //Gigabit NIC
109 //typedef struct _GB_NIC_DEVICE_PATH
110 //{
111 //  ACPI_HID_DEVICE_PATH      PciRootBridgeDevicePath;
112 //  PCI_DEVICE_PATH            PciBridgeDevicePath;
113 //  PCI_DEVICE_PATH            PciXBridgeDevicePath;
114 //  PCI_DEVICE_PATH            PciXBusDevicePath;
115 //  EFI_DEVICE_PATH_PROTOCOL  EndDevicePath;
116 //} GB_NIC_DEVICE_PATH;
117 
118 //static GB_NIC_DEVICE_PATH mGbNicDevicePath = { acpi, pci( 0x03,0x00 ),pci( 0x1F,0x00 ),pci( 0x07,0x00 ), end };
119 
120 
121 //P/S2 Connector
122 typedef struct _PS2_CONN_DEVICE_PATH
123 {
124   ACPI_HID_DEVICE_PATH    PciRootBridgeDevicePath;
125   PCI_DEVICE_PATH      LpcBridgeDevicePath;
126   ACPI_HID_DEVICE_PATH    LpcBusDevicePath;
127   EFI_DEVICE_PATH_PROTOCOL  EndDevicePath;
128 } PS2_CONN_DEVICE_PATH;
129 
130 //static PS2_CONN_DEVICE_PATH mPs2KeyboardDevicePath   = { acpi, pci( 0x1F,0x00 ),lpc( 0x0303,0 ), end };
131 //static PS2_CONN_DEVICE_PATH mPs2MouseDevicePath      = { acpi, pci( 0x1F,0x00 ),lpc( 0x0303,1 ), end };
132 
133 //Serial Port Connector
134 typedef struct _SERIAL_CONN_DEVICE_PATH
135 {
136   ACPI_HID_DEVICE_PATH    PciRootBridgeDevicePath;
137   PCI_DEVICE_PATH      LpcBridgeDevicePath;
138   ACPI_HID_DEVICE_PATH    LpcBusDevicePath;
139   EFI_DEVICE_PATH_PROTOCOL  EndDevicePath;
140 } SERIAL_CONN_DEVICE_PATH;
141 
142 //static SERIAL_CONN_DEVICE_PATH mCom1DevicePath   = { acpi, pci( 0x1F,0x00 ),lpc( 0x0501,0 ), end };
143 //static SERIAL_CONN_DEVICE_PATH mCom2DevicePath   = { acpi, pci( 0x1F,0x00 ),lpc( 0x0501,1 ), end };
144 
145 //Parallel Port Connector
146 typedef struct _PARALLEL_CONN_DEVICE_PATH
147 {
148   ACPI_HID_DEVICE_PATH    PciRootBridgeDevicePath;
149   PCI_DEVICE_PATH      LpcBridgeDevicePath;
150   ACPI_HID_DEVICE_PATH    LpcBusDevicePath;
151   EFI_DEVICE_PATH_PROTOCOL  EndDevicePath;
152 } PARALLEL_CONN_DEVICE_PATH;
153 
154 //static PARALLEL_CONN_DEVICE_PATH mLpt1DevicePath   = { acpi, pci( 0x1F,0x00 ),lpc( 0x0401,0 ), end };
155 
156 //Floopy Connector
157 typedef struct _FLOOPY_CONN_DEVICE_PATH
158 {
159   ACPI_HID_DEVICE_PATH    PciRootBridgeDevicePath;
160   PCI_DEVICE_PATH      LpcBridgeDevicePath;
161   ACPI_HID_DEVICE_PATH    LpcBusDevicePath;
162   EFI_DEVICE_PATH_PROTOCOL  EndDevicePath;
163 } FLOOPY_CONN_DEVICE_PATH;
164 
165 //static FLOOPY_CONN_DEVICE_PATH mFloopyADevicePath   = { acpi, pci( 0x1F,0x00 ),lpc( 0x0604,0 ), end };
166 //static FLOOPY_CONN_DEVICE_PATH mFloopyBDevicePath   = { acpi, pci( 0x1F,0x00 ),lpc( 0x0604,1 ), end };
167 
168 */
169 
170 //
171 // End Shanmu
172 //
173 #pragma pack()
174 
175 #endif
176