Data Structures |
| struct | PDISK_DATA |
| struct | PBAD_CONTROLLER_INFORMATION |
Defines |
| #define | NDEBUG |
| #define | IO_WRITE_CACHE_ENABLED ((NTSTATUS)0x80040020L) |
| #define | IO_WRITE_CACHE_DISABLED ((NTSTATUS)0x80040022L) |
| #define | NUMBER_OF_BAD_CONTROLLERS (sizeof(ScsiDiskBadControllers) / sizeof(BAD_CONTROLLER_INFORMATION)) |
| #define | DEVICE_EXTENSION_SIZE sizeof(DEVICE_EXTENSION) + sizeof(DISK_DATA) |
| #define | MODE_DATA_SIZE 192 |
| #define | VALUE_BUFFER_SIZE 2048 |
| #define | SCSI_DISK_TIMEOUT 10 |
| #define | PARTITION0_LIST_SIZE 4 |
Enumerations |
| enum | PARTITION_LIST_STATE { NotInitialized,
Initializing,
Initialized
} |
Functions |
| NTSTATUS NTAPI | DriverEntry (IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath) |
| BOOLEAN NTAPI | ScsiDiskDeviceVerification (IN PINQUIRYDATA InquiryData) |
| BOOLEAN NTAPI | FindScsiDisks (IN PDRIVER_OBJECT DriveObject, IN PUNICODE_STRING RegistryPath, IN PCLASS_INIT_DATA InitializationData, IN PDEVICE_OBJECT PortDeviceObject, IN ULONG PortNumber) |
| NTSTATUS NTAPI | ScsiDiskCreateClose (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) |
| NTSTATUS NTAPI | ScsiDiskReadWriteVerification (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) |
| NTSTATUS NTAPI | ScsiDiskDeviceControl (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) |
| VOID NTAPI | ScsiDiskProcessError (PDEVICE_OBJECT DeviceObject, PSCSI_REQUEST_BLOCK Srb, NTSTATUS *Status, BOOLEAN *Retry) |
| NTSTATUS NTAPI | ScsiDiskShutdownFlush (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) |
| VOID NTAPI | DisableWriteCache (IN PDEVICE_OBJECT DeviceObject, IN PSCSI_INQUIRY_DATA LunInfo) |
| BOOLEAN NTAPI | ScsiDiskModeSelect (IN PDEVICE_OBJECT DeviceObject, IN PCHAR ModeSelectBuffer, IN ULONG Length, IN BOOLEAN SavePage) |
| BOOLEAN NTAPI | IsFloppyDevice (IN PDEVICE_OBJECT DeviceObject) |
| BOOLEAN NTAPI | CalculateMbrCheckSum (IN PDEVICE_EXTENSION DeviceExtension, OUT PULONG Checksum) |
| BOOLEAN NTAPI | EnumerateBusKey (IN PDEVICE_EXTENSION DeviceExtension, HANDLE BusKey, PULONG DiskNumber) |
| VOID NTAPI | UpdateGeometry (IN PDEVICE_EXTENSION DeviceExtension) |
| NTSTATUS NTAPI | UpdateRemovableGeometry (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) |
| NTSTATUS NTAPI | CreateDiskDeviceObject (IN PDRIVER_OBJECT DriverObject, IN PUNICODE_STRING RegistryPath, IN PDEVICE_OBJECT PortDeviceObject, IN ULONG PortNumber, IN PULONG DeviceCount, IN PIO_SCSI_CAPABILITIES PortCapabilities, IN PSCSI_INQUIRY_DATA LunInfo, IN PCLASS_INIT_DATA InitData) |
| NTSTATUS NTAPI | CreatePartitionDeviceObjects (IN PDEVICE_OBJECT PhysicalDeviceObject, IN PUNICODE_STRING RegistryPath) |
| VOID NTAPI | UpdateDeviceObjects (IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp) |
| VOID NTAPI | ScanForSpecial (PDEVICE_OBJECT DeviceObject, PSCSI_INQUIRY_DATA LunInfo, PIO_SCSI_CAPABILITIES PortCapabilities) |
| VOID NTAPI | ResetScsiBus (IN PDEVICE_OBJECT DeviceObject) |
| NTSTATUS NTAPI | ScsiDiskDeviceControl (PDEVICE_OBJECT DeviceObject, PIRP Irp) |
| BOOLEAN NTAPI | IsFloppyDevice (PDEVICE_OBJECT DeviceObject) |
Variables |
| BAD_CONTROLLER_INFORMATION const | ScsiDiskBadControllers [] |