124{
128
129
131
132
135 {
136
137 DPRINT1(
"Cannot disable decodes on this device, ignoring PM request...\n");
139 }
140
141
143 {
144
146 DeviceExtension->CapabilitiesPtr,
152
153
155 {
156
158
159
161 {
162
164 }
165 }
166 else
167 {
168
170 }
171
172
177
178
181 }
182 else
183 {
184
185 DPRINT1(
"No PM on this device, ignoring request\n");
186 }
187
188
189 if (IrpSet)
190 {
191
192 if (DeviceState < DeviceExtension->
PowerState.CurrentDeviceState)
193 {
194
197 }
198 }
199
200
202}
#define STATUS_NOT_IMPLEMENTED
#define NT_SUCCESS(StatCode)
VOID NTAPI PciWriteDeviceConfig(IN PPCI_PDO_EXTENSION DeviceExtension, IN PVOID Buffer, IN ULONG Offset, IN ULONG Length)
UCHAR NTAPI PciReadDeviceCapability(IN PPCI_PDO_EXTENSION DeviceExtension, IN UCHAR Offset, IN ULONG CapabilityId, OUT PPCI_CAPABILITIES_HEADER Buffer, IN ULONG Length)
BOOLEAN NTAPI PciCanDisableDecodes(IN PPCI_PDO_EXTENSION DeviceExtension, IN PPCI_COMMON_HEADER Config, IN ULONGLONG HackFlags, IN BOOLEAN ForPowerDown)
NTSTATUS NTAPI PciStallForPowerChange(IN PPCI_PDO_EXTENSION PdoExtension, IN DEVICE_POWER_STATE PowerState, IN ULONG_PTR CapOffset)
#define UNIMPLEMENTED_DBGBREAK(...)
#define PCI_HACK_NO_PM_CAPS
struct _PCI_PMC::_PM_SUPPORT Support
PCI_CAPABILITIES_HEADER Header
union _PCI_PM_CAPABILITY::@4325 PMCSR
union _PCI_PM_CAPABILITY::@4324 PMC
#define FIELD_OFFSET(t, f)
_In_ WDFDEVICE _Out_ PWDF_DEVICE_STATE DeviceState
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_ WDF_DEVICE_POWER_STATE PowerState
#define PCI_CAPABILITY_ID_POWER_MANAGEMENT