4 typedef struct _PCIIDEX_DRIVER_EXTENSION
6 PCONTROLLER_PROPERTIES HwGetControllerProperties
;
7 ULONG MiniControllerExtensionSize
;
8 PCIIDE_UDMA_MODES_SUPPORTED HwUdmaModesSupported
;
9 } PCIIDEX_DRIVER_EXTENSION
, *PPCIIDEX_DRIVER_EXTENSION
;
11 typedef struct _COMMON_DEVICE_EXTENSION
14 } COMMON_DEVICE_EXTENSION
, *PCOMMON_DEVICE_EXTENSION
;
16 typedef struct _FDO_DEVICE_EXTENSION
18 COMMON_DEVICE_EXTENSION Common
;
20 PBUS_INTERFACE_STANDARD BusInterface
;
21 IDE_CONTROLLER_PROPERTIES Properties
;
22 PHYSICAL_ADDRESS BusMasterPortBase
;
23 PDEVICE_OBJECT LowerDevice
;
24 PDEVICE_OBJECT Pdo
[MAX_IDE_CHANNEL
];
27 PUCHAR MiniControllerExtension
[0];
28 } FDO_DEVICE_EXTENSION
, *PFDO_DEVICE_EXTENSION
;
30 typedef struct _PDO_DEVICE_EXTENSION
32 COMMON_DEVICE_EXTENSION Common
;
35 PDEVICE_OBJECT ControllerFdo
;
36 } PDO_DEVICE_EXTENSION
, *PPDO_DEVICE_EXTENSION
;
40 DRIVER_ADD_DEVICE PciIdeXAddDevice
;
43 IN PDRIVER_OBJECT DriverObject
,
44 IN PDEVICE_OBJECT Pdo
);
47 PciIdeXFdoPnpDispatch(
48 IN PDEVICE_OBJECT DeviceObject
,
53 IO_COMPLETION_ROUTINE PciIdeXGenericCompletion
;
55 PciIdeXGenericCompletion(
56 IN PDEVICE_OBJECT DeviceObject
,
62 IN PDEVICE_OBJECT DeviceObject
,
67 IN PDEVICE_OBJECT DeviceObject
,
71 DuplicateUnicodeString(
73 IN PCUNICODE_STRING SourceString
,
74 OUT PUNICODE_STRING DestinationString
);
79 PciIdeXPdoPnpDispatch(
80 IN PDEVICE_OBJECT DeviceObject
,