Can't sleep so write more source codes! add scan bus functions to get power caps...
[reactos.git] / reactos / drivers / bus / pcix / pci.h
index 82eed32..327cce1 100644 (file)
 //
 #define MAX_DEBUGGING_DEVICES_SUPPORTED     0x04
 
+//
+// PCI Driver Verifier Failures
+//
+#define PCI_VERIFIER_CODES                  0x04
 //
 // Device Extension, Interface, Translator and Arbiter Signatures
 //
@@ -375,6 +380,17 @@ typedef struct PCI_ARBITER_INSTANCE
     //ARBITER_INSTANCE CommonInstance; FIXME: Need Arbiter Headers
 } PCI_ARBITER_INSTANCE, *PPCI_ARBITER_INSTANCE;
 
+//
+// PCI Verifier Data
+//
+typedef struct _PCI_VERIFIER_DATA
+{
+    ULONG FailureCode;
+    VF_FAILURE_CLASS FailureClass;
+    ULONG AssertionControl;
+    PCHAR DebuggerMessageText;
+} PCI_VERIFIER_DATA, *PPCI_VERIFIER_DATA;
+
 //
 // IRP Dispatch Routines
 //
@@ -442,6 +458,14 @@ PciFdoIrpQueryPower(
     IN PPCI_FDO_EXTENSION DeviceExtension
 );
 
+NTSTATUS
+NTAPI
+PciSetPowerManagedDevicePowerState(
+    IN PPCI_PDO_EXTENSION DeviceExtension,
+    IN DEVICE_POWER_STATE DeviceState,
+    IN BOOLEAN IrpSet
+);
+
 //
 // Bus FDO Routines
 //
@@ -778,6 +802,12 @@ PciVerifierInit(
     IN PDRIVER_OBJECT DriverObject
 );
 
+PPCI_VERIFIER_DATA
+NTAPI
+PciVerifierRetrieveFailureData(
+    IN ULONG FailureCode
+);
+
 //
 // Utility Routines
 //
@@ -925,6 +955,25 @@ PciSaveBiosConfig(
     OUT PPCI_COMMON_HEADER PciData
 );
 
+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
+);
+
 //
 // Configuration Routines
 //
@@ -953,6 +1002,15 @@ PciWriteDeviceConfig(
     IN ULONG Length
 );
 
+VOID
+NTAPI
+PciReadDeviceConfig(
+    IN PPCI_PDO_EXTENSION DeviceExtension,
+    IN PVOID Buffer,
+    IN ULONG Offset,
+    IN ULONG Length
+);
+
 UCHAR
 NTAPI
 PciGetAdjustedInterruptLine(