#include <pci.h>
#include <debug.h>
Go to the source code of this file.
◆ NDEBUG
◆ PciArbiterDestructor()
◆ PciInitializeArbiterRanges()
Definition at line 128 of file arb_comn.c.
130{
132
135
137
138
139 if (DeviceExtension->ArbitersInitialized)
140 {
141
142 DPRINT1(
"PCI Warning hot start FDOx %p, resource ranges not checked.\n", DeviceExtension);
144 }
145
146
148 {
149
152
153
155 {
156
157 DPRINT1(
"PCI Skipping arbiter initialization for subtractive bridge FDOX %p\n", DeviceExtension);
159 }
160 }
161
162
164 {
165
167 {
168
169
170 }
172 {
173
174
175 }
176 else
177 {
178
179 continue;
180 }
181
182
184 ArbiterType);
186 {
187
188
189
190
192
193 }
194 else
195 {
196
197 DPRINT1(
"PCI - FDO ext 0x%p %s arbiter (REQUIRED) is missing.\n",
198 DeviceExtension,
200 }
201 }
202
203
204 DeviceExtension->ArbitersInitialized =
TRUE;
206}
PPCI_SECONDARY_EXTENSION NTAPI PciFindNextSecondaryExtension(IN PSINGLE_LIST_ENTRY ListHead, IN PCI_SIGNATURE ExtensionType)
enum _PCI_SIGNATURE PCI_SIGNATURE
struct _PCI_PDO_EXTENSION * PPCI_PDO_EXTENSION
#define PCI_IS_ROOT_FDO(x)
#define STATUS_INVALID_DEVICE_REQUEST
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_WMI_INSTANCE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_opt_ WDFWMIINSTANCE * Instance
Referenced by PciFdoIrpStartDevice().
◆ PciInitializeArbiters()
Definition at line 40 of file arb_comn.c.
41{
48
49
51 {
52
54 {
55
58
59
61 {
62 DPRINT1(
"PCI Not creating arbiters for subtractive bus %u\n",
64 continue;
65 }
66 }
67
68
70 while (*Interfaces)
71 {
72
73 CurrentInterface = *Interfaces;
74 if (CurrentInterface->
Signature == ArbiterType)
break;
75 Interfaces++;
76 }
77
78
79 if (!*Interfaces)
80 {
81
82 DPRINT1(
"PCI - FDO ext 0x%p no %s arbiter.\n",
85 continue;
86 }
87
88
93 if (!ArbiterInterface) break;
94
95
97 ArbiterInterface->
Interface = CurrentInterface;
102
103
106
107
110 &ArbiterInterface->
Header,
111 ArbiterType,
113
114
115 DPRINT1(
"PCI - FDO ext 0x%p %S arbiter initialized (context 0x%p).\n",
117 L"ARBITER HEADER MISSING",
118 ArbiterInterface);
120 }
121
122
124}
VOID NTAPI PciArbiterDestructor(IN PPCI_ARBITER_INSTANCE Arbiter)
#define NT_SUCCESS(StatCode)
VOID NTAPI PcipLinkSecondaryExtension(IN PSINGLE_LIST_ENTRY List, IN PVOID Lock, IN PPCI_SECONDARY_EXTENSION SecondaryExtension, IN PCI_SIGNATURE ExtensionType, IN PVOID Destructor)
#define ExAllocatePoolWithTag(hernya, size, tag)
PPCI_INTERFACE PciInterfaces[]
PPCI_FDO_EXTENSION BusFdoExtension
PCI_SECONDARY_EXTENSION Header
PCI_INTERFACE_INITIALIZER Initializer
#define STATUS_INSUFFICIENT_RESOURCES
Referenced by PciAddDevice().
◆ PciArbiterNames