1 | /**
|
---|
2 | * This file is part of the mingw-w64 runtime package.
|
---|
3 | * No warranty is given; refer to the file DISCLAIMER within this package.
|
---|
4 | */
|
---|
5 |
|
---|
6 | #ifndef _PCIPROP_
|
---|
7 | #define _PCIPROP_
|
---|
8 |
|
---|
9 | #include <winapifamily.h>
|
---|
10 | #include <devpropdef.h>
|
---|
11 |
|
---|
12 | #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
|
---|
13 |
|
---|
14 | #define DEFINE_PCI_ROOT_BUS_DEVPKEY(_DPKNAME, _PID) DEFINE_DEVPROPKEY ((_DPKNAME), 0xd817fc28, 0x793e, 0x4b9e, 0x99, 0x70, 0x46, 0x9d, 0x8b, 0xe6, 0x30, 0x73, (_PID))
|
---|
15 | #define DEFINE_PCI_DEVICE_DEVPKEY(_DPKNAME, _PID) DEFINE_DEVPROPKEY ((_DPKNAME), 0x3ab22e31, 0x8264, 0x4b4e, 0x9a, 0xf5, 0xa8, 0xd2, 0xd8, 0xe3, 0x3e, 0x62, (_PID))
|
---|
16 |
|
---|
17 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_SecondaryInterface, 1);
|
---|
18 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_CurrentSpeedAndMode, 2);
|
---|
19 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_SupportedSpeedsAndModes, 3);
|
---|
20 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_DeviceIDMessagingCapable, 4);
|
---|
21 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_SecondaryBusWidth, 5);
|
---|
22 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_ExtendedConfigAvailable, 6);
|
---|
23 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_ExtendedPCIConfigOpRegionSupport, 7);
|
---|
24 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_ASPMSupport, 8);
|
---|
25 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_ClockPowerManagementSupport, 9);
|
---|
26 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_PCISegmentGroupsSupport, 10);
|
---|
27 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_MSISupport, 11);
|
---|
28 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_PCIExpressNativeHotPlugControl, 12);
|
---|
29 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_SHPCNativeHotPlugControl, 13);
|
---|
30 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_PCIExpressNativePMEControl, 14);
|
---|
31 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_PCIExpressAERControl, 15);
|
---|
32 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_PCIExpressCapabilityControl, 16);
|
---|
33 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_NativePciExpressControl, 17);
|
---|
34 | DEFINE_PCI_ROOT_BUS_DEVPKEY (DEVPKEY_PciRootBus_SystemMsiSupport, 18);
|
---|
35 |
|
---|
36 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_DeviceType, 1);
|
---|
37 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_CurrentSpeedAndMode, 2);
|
---|
38 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_BaseClass, 3);
|
---|
39 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_SubClass, 4);
|
---|
40 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_ProgIf, 5);
|
---|
41 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_CurrentPayloadSize, 6);
|
---|
42 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_MaxPayloadSize, 7);
|
---|
43 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_MaxReadRequestSize, 8);
|
---|
44 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_CurrentLinkSpeed, 9);
|
---|
45 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_CurrentLinkWidth, 10);
|
---|
46 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_MaxLinkSpeed, 11);
|
---|
47 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_MaxLinkWidth, 12);
|
---|
48 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_ExpressSpecVersion, 13);
|
---|
49 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_InterruptSupport, 14);
|
---|
50 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_InterruptMessageMaximum, 15);
|
---|
51 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_BarTypes, 16);
|
---|
52 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_AERCapabilityPresent, 17);
|
---|
53 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_FirmwareErrorHandling, 18);
|
---|
54 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_Uncorrectable_Error_Mask, 19);
|
---|
55 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_Uncorrectable_Error_Severity, 20);
|
---|
56 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_Correctable_Error_Mask, 21);
|
---|
57 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_ECRC_Errors, 22);
|
---|
58 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_Error_Reporting, 23);
|
---|
59 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_RootError_Reporting, 24);
|
---|
60 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_S0WakeupSupported, 25);
|
---|
61 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_SriovSupport, 26);
|
---|
62 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_Label_Id, 27);
|
---|
63 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_Label_String, 28);
|
---|
64 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_AcsSupport, 29);
|
---|
65 | DEFINE_PCI_DEVICE_DEVPKEY (DEVPKEY_PciDevice_AriSupport, 30);
|
---|
66 |
|
---|
67 | #define DevProp_PciRootBus_SecondaryInterface_PciConventional 0
|
---|
68 | #define DevProp_PciRootBus_SecondaryInterface_PciXMode1 1
|
---|
69 | #define DevProp_PciRootBus_SecondaryInterface_PciXMode2 2
|
---|
70 | #define DevProp_PciRootBus_SecondaryInterface_PciExpress 3
|
---|
71 |
|
---|
72 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_Conventional_33Mhz 0
|
---|
73 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_Conventional_66Mhz 1
|
---|
74 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_66Mhz 2
|
---|
75 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_100Mhz 3
|
---|
76 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_133Mhz 4
|
---|
77 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_ECC_66Mhz 5
|
---|
78 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_ECC_100Mhz 6
|
---|
79 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_Mode1_ECC_133Mhz 7
|
---|
80 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_266_Mode2_66Mhz 8
|
---|
81 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_266_Mode2_100Mhz 9
|
---|
82 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_266_Mode2_133Mhz 10
|
---|
83 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_533_Mode2_66Mhz 11
|
---|
84 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_533_Mode2_100Mhz 12
|
---|
85 | #define DevProp_PciRootBus_CurrentSpeedAndMode_Pci_X_533_Mode2_133Mhz 13
|
---|
86 |
|
---|
87 | #define DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_Conventional_33Mhz 1
|
---|
88 | #define DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_Conventional_66Mhz 2
|
---|
89 | #define DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_66Mhz 4
|
---|
90 | #define DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_133Mhz 8
|
---|
91 | #define DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_266Mhz 16
|
---|
92 | #define DevProp_PciRootBus_SupportedSpeedsAndModes_Pci_X_533Mhz 32
|
---|
93 |
|
---|
94 | #define DevProp_PciRootBus_BusWidth_32Bits 0
|
---|
95 | #define DevProp_PciRootBus_BusWidth_64Bits 1
|
---|
96 |
|
---|
97 | #define DevProp_PciDevice_DeviceType_PciConventional 0
|
---|
98 | #define DevProp_PciDevice_DeviceType_PciX 1
|
---|
99 | #define DevProp_PciDevice_DeviceType_PciExpressEndpoint 2
|
---|
100 | #define DevProp_PciDevice_DeviceType_PciExpressLegacyEndpoint 3
|
---|
101 | #define DevProp_PciDevice_DeviceType_PciExpressRootComplexIntegratedEndpoint 4
|
---|
102 | #define DevProp_PciDevice_DeviceType_PciExpressTreatedAsPci 5
|
---|
103 | #define DevProp_PciDevice_BridgeType_PciConventional 6
|
---|
104 | #define DevProp_PciDevice_BridgeType_PciX 7
|
---|
105 | #define DevProp_PciDevice_BridgeType_PciExpressRootPort 8
|
---|
106 | #define DevProp_PciDevice_BridgeType_PciExpressUpstreamSwitchPort 9
|
---|
107 | #define DevProp_PciDevice_BridgeType_PciExpressDownstreamSwitchPort 10
|
---|
108 | #define DevProp_PciDevice_BridgeType_PciExpressToPciXBridge 11
|
---|
109 | #define DevProp_PciDevice_BridgeType_PciXToExpressBridge 12
|
---|
110 | #define DevProp_PciDevice_BridgeType_PciExpressTreatedAsPci 13
|
---|
111 |
|
---|
112 | #define DevProp_PciDevice_CurrentSpeedAndMode_Pci_Conventional_33MHz 0
|
---|
113 | #define DevProp_PciDevice_CurrentSpeedAndMode_Pci_Conventional_66MHz 1
|
---|
114 |
|
---|
115 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode_Conventional_Pci 0x0
|
---|
116 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_66Mhz 0x1
|
---|
117 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_100Mhz 0x2
|
---|
118 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_133MHZ 0x3
|
---|
119 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_ECC_66Mhz 0x5
|
---|
120 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_ECC_100Mhz 0x6
|
---|
121 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode1_ECC_133Mhz 0x7
|
---|
122 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_266_66MHz 0x9
|
---|
123 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_266_100MHz 0xa
|
---|
124 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_266_133MHz 0xb
|
---|
125 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_533_66MHz 0xd
|
---|
126 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_533_100MHz 0xe
|
---|
127 | #define DevProp_PciDevice_CurrentSpeedAndMode_PciX_Mode2_533_133MHz 0xf
|
---|
128 |
|
---|
129 | #define DevProp_PciExpressDevice_PayloadOrRequestSize_128Bytes 0
|
---|
130 | #define DevProp_PciExpressDevice_PayloadOrRequestSize_256Bytes 1
|
---|
131 | #define DevProp_PciExpressDevice_PayloadOrRequestSize_512Bytes 2
|
---|
132 | #define DevProp_PciExpressDevice_PayloadOrRequestSize_1024Bytes 3
|
---|
133 | #define DevProp_PciExpressDevice_PayloadOrRequestSize_2048Bytes 4
|
---|
134 | #define DevProp_PciExpressDevice_PayloadOrRequestSize_4096Bytes 5
|
---|
135 |
|
---|
136 | #define DevProp_PciExpressDevice_LinkSpeed_TwoAndHalf_Gbps 1
|
---|
137 | #define DevProp_PciExpressDevice_LinkSpeed_Five_Gbps 2
|
---|
138 |
|
---|
139 | #define DevProp_PciExpressDevice_LinkWidth_By_1 1
|
---|
140 | #define DevProp_PciExpressDevice_LinkWidth_By_2 2
|
---|
141 | #define DevProp_PciExpressDevice_LinkWidth_By_4 4
|
---|
142 | #define DevProp_PciExpressDevice_LinkWidth_By_8 8
|
---|
143 | #define DevProp_PciExpressDevice_LinkWidth_By_12 12
|
---|
144 | #define DevProp_PciExpressDevice_LinkWidth_By_16 16
|
---|
145 | #define DevProp_PciExpressDevice_LinkWidth_By_32 32
|
---|
146 |
|
---|
147 | #define DevProp_PciExpressDevice_LinkSpeed_TwoAndHalf_Gbps 1
|
---|
148 |
|
---|
149 | #define DevProp_PciExpressDevice_Spec_Version_10 1
|
---|
150 | #define DevProp_PciExpressDevice_Spec_Version_11 2
|
---|
151 |
|
---|
152 | #define DevProp_PciDevice_InterruptType_LineBased 1
|
---|
153 | #define DevProp_PciDevice_InterruptType_Msi 2
|
---|
154 | #define DevProp_PciDevice_InterruptType_MsiX 4
|
---|
155 |
|
---|
156 | #define DevProp_PciDevice_IoBarCount(_PD) ((_PD) & 0xff)
|
---|
157 | #define DevProp_PciDevice_NonPrefetchable_MemoryBarCount(_PD) (((_PD) >> 8) & 0xff)
|
---|
158 | #define DevProp_PciDevice_32BitPrefetchable_MemoryBarCount(_PD) (((_PD) >> 16) & 0xff)
|
---|
159 | #define DevProp_PciDevice_64BitPrefetchable_MemoryBarCount(_PD) (((_PD) >> 24) & 0xff)
|
---|
160 |
|
---|
161 | #define DevProp_PciDevice_SriovSupport_Ok 0x0
|
---|
162 | #define DevProp_PciDevice_SriovSupport_MissingAcs 0x1
|
---|
163 | #define DevProp_PciDevice_SriovSupport_MissingPfDriver 0x2
|
---|
164 | #define DevProp_PciDevice_SriovSupport_NoBusResource 0x3
|
---|
165 | #define DevProp_PciDevice_SriovSupport_DidntGetVfBarSpace 0x4
|
---|
166 |
|
---|
167 | #define DevProp_PciDevice_AcsSupport_Present 0x0
|
---|
168 | #define DevProp_PciDevice_AcsSupport_NotNeeded 0x1
|
---|
169 | #define DevProp_PciDevice_AcsSupport_Missing 0x2
|
---|
170 |
|
---|
171 | #endif
|
---|
172 | #endif
|
---|