19#define TAG_PCIIDEX 'XedI'
21#define IS_FDO(p) (((PCOMMON_DEVICE_EXTENSION)(p))->IsFDO)
23#define IS_PRIMARY_CHANNEL(PdoExtension) (PdoExtension->Channel == 0)
28#define PCIIDE_LEGACY_RESOURCE_COUNT 3
29#define PCIIDE_LEGACY_COMMAND_IO_RANGE_LENGTH 8
30#define PCIIDE_LEGACY_CONTROL_IO_RANGE_LENGTH 1
31#define PCIIDE_LEGACY_PRIMARY_COMMAND_BASE 0x1F0
32#define PCIIDE_LEGACY_PRIMARY_CONTROL_BASE 0x3F6
33#define PCIIDE_LEGACY_PRIMARY_IRQ 14
34#define PCIIDE_LEGACY_SECONDARY_COMMAND_BASE 0x170
35#define PCIIDE_LEGACY_SECONDARY_CONTROL_BASE 0x376
36#define PCIIDE_LEGACY_SECONDARY_IRQ 15
41#define PCIIDE_PROGIF_PRIMARY_CHANNEL_NATIVE_MODE 0x01
42#define PCIIDE_PROGIF_PRIMARY_CHANNEL_NATIVE_MODE_CAPABLE 0x02
43#define PCIIDE_PROGIF_SECONDARY_CHANNEL_NATIVE_MODE 0x04
44#define PCIIDE_PROGIF_SECONDARY_CHANNEL_NATIVE_MODE_CAPABLE 0x08
45#define PCIIDE_PROGIF_DMA_CAPABLE 0x80
47#define BM_SECONDARY_CHANNEL_OFFSET 8
63 volatile LONG PageFiles;
66 volatile LONG HibernateFiles;
69 volatile LONG DumpFiles;
#define _Dispatch_type_(a)
NTSTATUS NTAPI PciIdeXDispatchPower(_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp)
NTSTATUS(NTAPI * PCONTROLLER_PROPERTIES)(_In_ PVOID DeviceExtension, _In_ PIDE_CONTROLLER_PROPERTIES ControllerProperties)
NTSTATUS NTAPI PciIdeXDispatchWmi(_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp)
struct _FDO_DEVICE_EXTENSION FDO_DEVICE_EXTENSION
IDE_CHANNEL_STATE PciIdeXChannelState(_In_ PFDO_DEVICE_EXTENSION FdoExtension, _In_ ULONG Channel)
NTSTATUS PciIdeXFdoDispatchPnp(_In_ PFDO_DEVICE_EXTENSION FdoExtension, _Inout_ PIRP Irp)
DRIVER_UNLOAD PciIdeXUnload
NTSTATUS PciIdeXStartMiniport(_In_ PFDO_DEVICE_EXTENSION FdoExtension)
struct _FDO_DEVICE_EXTENSION * PFDO_DEVICE_EXTENSION
DRIVER_INITIALIZE DriverEntry
DRIVER_ADD_DEVICE PciIdeXAddDevice
struct _PDO_DEVICE_EXTENSION PDO_DEVICE_EXTENSION
struct _PDO_DEVICE_EXTENSION * PPDO_DEVICE_EXTENSION
struct _PCIIDEX_DRIVER_EXTENSION PCIIDEX_DRIVER_EXTENSION
struct _PCIIDEX_DRIVER_EXTENSION * PPCIIDEX_DRIVER_EXTENSION
struct _COMMON_DEVICE_EXTENSION COMMON_DEVICE_EXTENSION
struct _COMMON_DEVICE_EXTENSION * PCOMMON_DEVICE_EXTENSION
NTSTATUS NTAPI PciIdeXDispatchPnp(_In_ PDEVICE_OBJECT DeviceObject, _Inout_ PIRP Irp)
_Write_guarded_by_(_Global_interlock_) volatile LONG PageFiles
_Write_guarded_by_(_Global_interlock_) volatile LONG DumpFiles
_Write_guarded_by_(_Global_interlock_) volatile LONG HibernateFiles
IDE_CONTROLLER_PROPERTIES Properties
_Guarded_by_(DeviceSyncMutex) PPDO_DEVICE_EXTENSION Channels[MAX_IDE_CHANNEL]
COMMON_DEVICE_EXTENSION Common
PDRIVER_OBJECT DriverObject
FAST_MUTEX DeviceSyncMutex
PUCHAR MiniControllerExtension[0]
BUS_INTERFACE_STANDARD BusInterface
ULONG MiniControllerExtensionSize
PCONTROLLER_PROPERTIES HwGetControllerProperties
PFDO_DEVICE_EXTENSION ParentController
COMMON_DEVICE_EXTENSION Common
DRIVER_DISPATCH DRIVER_DISPATCH_RAISED
#define IRP_MJ_SYSTEM_CONTROL