|
ReactOS 0.4.17-dev-116-ga4b6fe9
|
#include <ntddk.h>#include <ntstrsafe.h>#include <ntintsafe.h>#include <wmilib.h>#include <initguid.h>#include <wdmguid.h>#include <wmistr.h>#include <wmidata.h>#include <ata.h>#include <ide.h>#include <scsi.h>#include <ntddscsi.h>#include <ntdddisk.h>#include <sptilib.h>#include <section_attribs.h>#include <debug/driverdbg.h>#include <reactos/drivers/ata/ata_shared.h>#include <reactos/drivers/ata/ata_user.h>#include <reactos/drivers/ata/identify_funcs.h>#include "debug.h"#include "scsiex.h"

Go to the source code of this file.
Classes | |
| union | _ATA_SCSI_ADDRESS |
| struct | _ATAPORT_IO_CONTEXT |
| struct | _ATA_WORKER_CONTEXT |
| struct | _ATA_WORKER_DEVICE_CONTEXT |
| struct | _REQUEST_QUEUE_ENTRY |
| struct | _ATAPORT_PORT_DATA |
| struct | _ATAPORT_COMMON_EXTENSION |
| struct | _ATAPORT_CHANNEL_EXTENSION |
| struct | _ATAPORT_DEVICE_EXTENSION |
Enumerations | |
| enum | _ATA_PORT_ACTION { ACTION_PORT_RESET = (1 << 0) , ACTION_ENUM_PORT = (1 << 1) , ACTION_ENUM_DEVICE_NEW = (1 << 2) , ACTION_ENUM_DEVICE = (1 << 3) , ACTION_PORT_TIMING = (1 << 4) , ACTION_DEVICE_CONFIG = (1 << 5) , ACTION_DEVICE_ERROR = (1 << 6) , ACTION_DEVICE_POWER = (1 << 7) } |
| enum | _ATA_DEVICE_STATUS { DEV_STATUS_NO_DEVICE , DEV_STATUS_NEW_DEVICE , DEV_STATUS_SAME_DEVICE , DEV_STATUS_FAILED } |
| enum | _ATA_ERROR_LOG_VALUE { EVENT_CODE_CRC_ERROR = 100 , EVENT_CODE_BAD_STATE , EVENT_CODE_TIMEOUT , EVENT_CODE_DOWNSHIFT , EVENT_CODE_DMA_DISABLE , EVENT_CODE_NCQ_DISABLE } |
| enum | DEVICE_TYPE_NAME { GetDeviceType , GetGenericType , GetPeripheralId } |
Variables | |
| UNICODE_STRING | AtapDriverRegistryPath |
| BOOLEAN | AtapInPEMode |
| DRIVER_ADD_DEVICE | AtaAddChannel |
| DRIVER_UNLOAD | AtaUnload |
| DRIVER_INITIALIZE | DriverEntry |
| IO_WORKITEM_ROUTINE | AtaStorageNotificationWorker |
| KDEFERRED_ROUTINE | AtaStorageNotificationlDpc |
| IO_COMPLETION_ROUTINE | AtaPdoCompletionRoutine |
| KSTART_ROUTINE | AtaPortWorkerThread |
| KDEFERRED_ROUTINE | AtaPortWorkerSignalDpc |
| REQUEST_COMPLETION_ROUTINE | AtaPortCompleteInternalRequest |
| PORT_NOTIFICATION | AtaPortNotification |
| IO_TIMER_ROUTINE | AtaPortIoTimer |
| KDEFERRED_ROUTINE | AtaReqCompletionDpc |
| SLIST_HEADER | AtapCompletionQueueList |
| KDPC | AtapCompletionDpc |
| #define ASSUME | ( | cond | ) |
| #define ATAPORT_FN_FIELD 40 |
The maximum length of identifier strings for ATA devices excluding the terminating NULL.
and IDENTIFY_DEVICE_DATA.SerialNumber IDENTIFY_DEVICE_DATA.ModelNumber IDENTIFY_DEVICE_DATA.FirmwareRevision
| #define IRP_FROM_QUEUE_ENTRY | ( | QueueEntry | ) | (PIRP)CONTAINING_RECORD(QueueEntry, IRP, Tail.Overlay.DriverContext[0]) |
| #define IS_ATAPI | ( | Device | ) | (((Device)->TransportFlags & DEVICE_IS_ATAPI) != 0) |
| #define NUM_TO_BITMAP | ( | num | ) | (0xFFFFFFFF >> (RTL_BITS_OF(ULONG) - (num))) |
| #define QUEUE_ENTRY_FROM_IRP | ( | Irp | ) | ((PREQUEST_QUEUE_ENTRY)&(((PIRP)(Irp))->Tail.Overlay.DriverContext[0])) |
| #define QUEUE_FLAGS_FROZEN |
| #define QUEUE_FLAGS_FROZEN_NOT_BYPASS (QUEUE_FLAGS_FROZEN & ~(QUEUE_FLAG_FROZEN_QUEUE_FREEZE | QUEUE_FLAG_FROZEN_QUEUE_LOCK)) |
| typedef enum _ATA_DEVICE_STATUS ATA_DEVICE_STATUS |
| typedef enum _ATA_PORT_ACTION ATA_PORT_ACTION |
| typedef union _ATA_SCSI_ADDRESS ATA_SCSI_ADDRESS |
| typedef union _ATA_SCSI_ADDRESS * PATA_SCSI_ADDRESS |
| typedef struct _ATA_WORKER_CONTEXT * PATA_WORKER_CONTEXT |
| typedef struct _ATAPORT_IO_CONTEXT * PATAPORT_IO_CONTEXT |
| typedef struct _ATAPORT_PORT_DATA * PATAPORT_PORT_DATA |
| typedef struct _REQUEST_QUEUE_ENTRY * PREQUEST_QUEUE_ENTRY |
| typedef STOP_IO_CALLBACK* PSTOP_IO_CALLBACK |
| typedef VOID() STOP_IO_CALLBACK(_In_ PATAPORT_IO_CONTEXT Device) |
| Enumerator | |
|---|---|
| DEV_STATUS_NO_DEVICE | |
| DEV_STATUS_NEW_DEVICE | |
| DEV_STATUS_SAME_DEVICE | |
| DEV_STATUS_FAILED | |
Definition at line 253 of file atapi.h.
| Enumerator | |
|---|---|
| EVENT_CODE_CRC_ERROR | |
| EVENT_CODE_BAD_STATE | |
| EVENT_CODE_TIMEOUT | |
| EVENT_CODE_DOWNSHIFT | |
| EVENT_CODE_DMA_DISABLE | |
| EVENT_CODE_NCQ_DISABLE | |
Definition at line 261 of file atapi.h.
| Enumerator | |
|---|---|
| ACTION_PORT_RESET | |
| ACTION_ENUM_PORT | |
| ACTION_ENUM_DEVICE_NEW | |
| ACTION_ENUM_DEVICE | |
| ACTION_PORT_TIMING | |
| ACTION_DEVICE_CONFIG | |
| ACTION_DEVICE_ERROR | |
| ACTION_DEVICE_POWER | |
Definition at line 241 of file atapi.h.
| Enumerator | |
|---|---|
| GetDeviceType | |
| GetGenericType | |
| GetPeripheralId | |
| _Dispatch_type_ | ( | IRP_MJ_CREATE | ) |
| _Dispatch_type_ | ( | IRP_MJ_DEVICE_CONTROL | ) |
Definition at line 1376 of file isapnp.c.
| _Dispatch_type_ | ( | IRP_MJ_PNP | ) |
Definition at line 1331 of file isapnp.c.
| _Dispatch_type_ | ( | IRP_MJ_POWER | ) |
| _Dispatch_type_ | ( | IRP_MJ_SCSI | ) |
| _Dispatch_type_ | ( | IRP_MJ_SYSTEM_CONTROL | ) |
Definition at line 5748 of file btrfs.c.
| PCHAR AtaCopyIdStringSafe | ( | _Out_writes_bytes_all_(MaxLength) PCHAR | Destination, |
| _In_reads_bytes_(MaxLength) PUCHAR | Source, | ||
| _In_ ULONG | MaxLength, | ||
| _In_ CHAR | DefaultCharacter | ||
| ) |
Definition at line 35 of file enum.c.
Referenced by AtaCreateAtapiStandardInquiryData(), AtaPdoFillIdentificationStrings(), and AtaPdoQueryId().
| PUCHAR AtaCopyIdStringUnsafe | ( | _Out_writes_bytes_all_(Length) PUCHAR | Destination, |
| _In_reads_bytes_(Length) PUCHAR | Source, | ||
| _In_ ULONG | Length | ||
| ) |
Definition at line 15 of file enum.c.
Referenced by AtaCreateStandardInquiryData(), AtaDeviceIsXboxDrive(), AtaReqScsiInquiryDeviceIdentifiers(), and AtaReqScsiInquirySerialNumber().
| VOID AtaCreateStandardInquiryData | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ) |
Definition at line 1166 of file satl.c.
Referenced by AtaPdoInit().
| VOID AtaDeviceFlushPowerIrpQueue | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ) |
Definition at line 37 of file dev_power.c.
Referenced by AtaPortExitStateMachine().
| UCHAR AtaDeviceGetFlushCacheCommand | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ) |
Definition at line 63 of file dev_power.c.
Referenced by AtaDeviceFlushCache(), and AtaReqScsiSynchronizeCache().
| DECLSPEC_NOINLINE_FROM_PAGED VOID AtaDeviceQueueEvent | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_opt_ PATAPORT_DEVICE_EXTENSION | DevExt, | ||
| _In_ ATA_PORT_ACTION | Action | ||
| ) |
Definition at line 992 of file portstate.c.
Referenced by AtaFdoEnumeratePort(), AtaFdoQueryDeviceCount(), AtaFdoQueryDeviceStatus(), AtaPdoQueuePowerIrp(), and AtaPdoStartDevice().
| NTSTATUS AtaDeviceSendIdentify | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_ PATAPORT_DEVICE_EXTENSION | DevExt, | ||
| _In_ UCHAR | Command | ||
| ) |
Definition at line 45 of file dev_identify.c.
Referenced by AtaPortDeviceProcessConfig(), and AtaPortIdentifyDevice().
| VOID AtaDeviceSetAddressingMode | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ) |
Definition at line 182 of file enum.c.
Referenced by AtaPdoInit(), and AtaReqCompleteReadCapacity().
| DECLSPEC_NOINLINE_FROM_PAGED VOID AtaFdoDeviceListInsert | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _In_ PATAPORT_DEVICE_EXTENSION | DevExt, | ||
| _In_ BOOLEAN | DoInsert | ||
| ) |
Definition at line 699 of file fdo.c.
Referenced by AtaFdoEnumeratePort(), and AtaPdoRemoveDevice().
| DECLSPEC_NOINLINE_FROM_PAGED PATAPORT_DEVICE_EXTENSION AtaFdoFindDeviceByPath | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _In_ ATA_SCSI_ADDRESS | AtaScsiAddress, | ||
| _In_ PVOID | ReferenceTag | ||
| ) |
Definition at line 614 of file fdo.c.
Referenced by AtaFdoEnumeratePort(), AtaFdoHandleScsiMiniport(), AtaFdoHandleScsiPassthrough(), AtaPdoHandleMiniportSmartVersion(), AtaPortSelectTimings(), and AtaStorageNotificationlDpc().
| DECLSPEC_NOINLINE_FROM_PAGED PATAPORT_DEVICE_EXTENSION AtaFdoFindNextDeviceByPath | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _Inout_ PATA_SCSI_ADDRESS | AtaScsiAddress, | ||
| _In_ BOOLEAN | SearchRemoveDev, | ||
| _In_ PVOID | ReferenceTag | ||
| ) |
Definition at line 654 of file fdo.c.
Referenced by AtaFdoHandleGetScsiInquiryData(), AtaFdoInitializeDeviceRelations(), AtaFdoQueryBusRelations(), AtaFdoRemoveDevice(), AtaPortEnterStateMachine(), AtaPortEnumeratePort(), AtaPortExitStateMachine(), and AtaPortOnResetNotification().
| NTSTATUS AtaFdoPnp | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _Inout_ PIRP | Irp | ||
| ) |
Definition at line 510 of file fdo.c.
Referenced by AtaDispatchPnp().
| NTSTATUS AtaFdoQueryBusRelations | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _In_ PIRP | Irp | ||
| ) |
Definition at line 566 of file enum.c.
Referenced by AtaFdoPnp().
| NTSTATUS AtaFdoStartDevice | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _In_ PCM_RESOURCE_LIST | ResourcesTranslated | ||
| ) |
Definition at line 229 of file fdo.c.
Referenced by AtaFdoPnp().
| VOID AtaGetRegistryKey | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _In_ UCHAR | TargetId, | ||
| _In_ PCWSTR | KeyName, | ||
| _Out_ PULONG | KeyValue, | ||
| _In_ ULONG | DefaultValue | ||
| ) |
Definition at line 113 of file atapi.c.
Referenced by AtaFdoEnumeratePort(), AtaFdoQueryBusRelations(), and AtaPdoInit().
| FORCEINLINE ATA_SCSI_ADDRESS AtaMarshallScsiAddress | ( | _In_ ULONG | PathId, |
| _In_ ULONG | TargetId, | ||
| _In_ ULONG | Lun | ||
| ) |
Definition at line 585 of file atapi.h.
Referenced by AtaFdoEnumeratePort(), AtaFdoHandleScsiMiniport(), AtaFdoHandleScsiPassthrough(), AtaPdoHandleMiniportSmartVersion(), AtaPortSelectTimings(), and AtaStorageNotificationlDpc().
| NTSTATUS AtaOpenRegistryKey | ( | _Out_ PHANDLE | KeyHandle, |
| _In_ HANDLE | RootKey, | ||
| _In_ PUNICODE_STRING | KeyName, | ||
| _In_ BOOLEAN | Create | ||
| ) |
Definition at line 75 of file atapi.c.
Referenced by AtaGetRegistryKey(), and AtaSetRegistryKey().
| FORCEINLINE BOOLEAN AtaPacketCommandUseDma | ( | _In_ UCHAR | OpCode | ) |
| PATAPORT_DEVICE_EXTENSION AtaPdoCreateDevice | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _In_ ATA_SCSI_ADDRESS | AtaScsiAddress | ||
| ) |
Definition at line 685 of file pdo.c.
Referenced by AtaFdoEnumeratePort().
| VOID AtaPdoFreeDevice | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ) |
Definition at line 658 of file pdo.c.
Referenced by AtaFdoEnumeratePort(), AtaFdoRemoveDevice(), AtaPdoCreateDevice(), and AtaPdoRemoveDevice().
| NTSTATUS AtaPdoHandleMiniportIdentify | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt, |
| _In_ PSCSI_REQUEST_BLOCK | Srb | ||
| ) |
Definition at line 207 of file smart.c.
Referenced by AtaPdoHandleIoControl().
| NTSTATUS AtaPdoHandleMiniportSmartVersion | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt, |
| _In_ PSCSI_REQUEST_BLOCK | Srb | ||
| ) |
Definition at line 246 of file smart.c.
Referenced by AtaPdoHandleIoControl().
| NTSTATUS AtaPdoWmiRegistration | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt, |
| _In_ BOOLEAN | Register | ||
| ) |
Definition at line 189 of file wmi.c.
Referenced by AtaPdoRemoveDevice(), and AtaPdoStartDevice().
| VOID AtaPnpInitializeCommonExtension | ( | _In_ PATAPORT_COMMON_EXTENSION | CommonExt, |
| _In_ PDEVICE_OBJECT | SelfDeviceObject, | ||
| _In_ ULONG | Flags | ||
| ) |
Definition at line 572 of file atapi.c.
Referenced by AtaAddChannel(), and AtaPdoCreateDevice().
| NTSTATUS AtaPnpQueryDeviceUsageNotification | ( | _In_ PATAPORT_COMMON_EXTENSION | CommonExt, |
| _In_ PIRP | Irp | ||
| ) |
Definition at line 503 of file atapi.c.
Referenced by AtaFdoPnp(), and AtaPdoPnp().
| NTSTATUS AtaPnpQueryInterface | ( | _In_ PATAPORT_COMMON_EXTENSION | CommonExt, |
| _In_ const GUID * | Guid, | ||
| _Out_ PVOID | Interface, | ||
| _In_ ULONG | Version, | ||
| _In_ ULONG | Size | ||
| ) |
Definition at line 396 of file atapi.c.
Referenced by AtaFdoStartDevice().
| NTSTATUS AtaPnpQueryPnpDeviceState | ( | _In_ PATAPORT_COMMON_EXTENSION | CommonExt, |
| _In_ PIRP | Irp | ||
| ) |
Definition at line 555 of file atapi.c.
Referenced by AtaFdoPnp(), and AtaPdoPnp().
| NTSTATUS AtaPnpRepeatRequest | ( | _In_ PATAPORT_COMMON_EXTENSION | CommonExt, |
| _In_ PIRP | Irp, | ||
| _In_opt_ PDEVICE_CAPABILITIES | DeviceCapabilities | ||
| ) |
Definition at line 445 of file atapi.c.
Referenced by AtaPdoQueryCapabilities(), and AtaPnpQueryDeviceUsageNotification().
| NTSTATUS AtaPortCheckDevicePowerState | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ||
| ) |
Definition at line 218 of file dev_power.c.
Referenced by AtaPortIdentifyDevice().
| NTSTATUS AtaPortDeviceProcessConfig | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ||
| ) |
Definition at line 341 of file dev_config.c.
Referenced by AtaPortConfigureDevice().
| NTSTATUS AtaPortDeviceProcessError | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ||
| ) |
Definition at line 642 of file dev_error.c.
Referenced by AtaPortRecoveryFromError().
| NTSTATUS AtaPortDeviceProcessPowerChange | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ||
| ) |
Definition at line 151 of file dev_power.c.
Referenced by AtaPortDeviceChangePower().
| ATA_DEVICE_STATUS AtaPortIdentifyDevice | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ||
| ) |
Definition at line 213 of file dev_identify.c.
Referenced by AtaPortEnumerateDevice().
| FORCEINLINE BOOLEAN AtaPortQueueEmpty | ( | _In_ PATAPORT_PORT_DATA | PortData | ) |
Definition at line 573 of file atapi.h.
Referenced by AtaPortWaitForIdle(), and AtaReqCompleteRequest().
| VOID AtaPortSelectTimings | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_ BOOLEAN | ForceCompatibleTimings | ||
| ) |
Definition at line 258 of file dev_timings.c.
Referenced by AtaPortResetPort(), and AtaPortSetTransferMode().
| NTSTATUS AtaPortSendRequest | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_ PATAPORT_DEVICE_EXTENSION | DevExt | ||
| ) |
Definition at line 831 of file portstate.c.
Referenced by AtaDeviceEnableMsnFeature(), AtaDeviceExecuteAcpiTaskFile(), AtaDeviceFlushCache(), AtaDeviceLockDeviceParameters(), AtaDeviceLockSecurityModeFeatureCommands(), AtaDeviceSendIdentify(), AtaDeviceSendInquiry(), AtaDeviceSendReadNcqCommandErrorLog(), AtaDeviceSendRequestSense(), AtaDeviceSendRequestSenseExt(), AtaDeviceSetDmaTransferMode(), AtaDeviceSetGeometry(), AtaDeviceSetIdleMode(), AtaDeviceSetMultipleMode(), AtaDeviceSetPioTransferMode(), AtaDeviceSetStandbyMode(), and AtaDeviceSpinUp().
| DECLSPEC_NOINLINE_FROM_PAGED VOID AtaPortSignalWorkerThread | ( | _In_ PATAPORT_PORT_DATA | PortData | ) |
Definition at line 963 of file portstate.c.
Referenced by AtaFdoDestroyPortThread(), and AtaPortWorkerSignalDpc().
| VOID AtaPortTimeout | ( | _In_ PATAPORT_PORT_DATA | PortData, |
| _In_ ULONG | Slot | ||
| ) |
Definition at line 905 of file portstate.c.
Referenced by AtaPortIoTimer().
| BOOLEAN AtaReqAllocateMdl | ( | _In_ PATA_DEVICE_REQUEST | Request | ) |
| VOID AtaReqBuildReadLogTaskFile | ( | _In_ PATA_DEVICE_REQUEST | Request, |
| _In_ UCHAR | LogAddress, | ||
| _In_ UCHAR | PageNumber, | ||
| _In_ USHORT | LogPageCount | ||
| ) |
Definition at line 399 of file satl.c.
Referenced by AtaDeviceSendReadNcqCommandErrorLog().
| VOID AtaReqCompleteFailedRequest | ( | _In_ PATA_DEVICE_REQUEST | Request | ) |
| BOOLEAN AtaReqDmaTransferToPioTransfer | ( | _In_ PATA_DEVICE_REQUEST | Request | ) |
Definition at line 78 of file satl.c.
Referenced by AtaReqSendRequest().
| UCHAR AtaReqExecuteScsi | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt, |
| _In_ PATA_DEVICE_REQUEST | Request, | ||
| _In_ PSCSI_REQUEST_BLOCK | Srb | ||
| ) |
Definition at line 2054 of file satl.c.
Referenced by AtaReqTranslateRequest().
| DECLSPEC_NOINLINE_FROM_PAGED VOID AtaReqFlushDeviceQueue | ( | _In_ PATAPORT_IO_CONTEXT | Device | ) |
Definition at line 1451 of file scsi.c.
Referenced by AtaFdoRemoveDevice(), AtaPdoDispatchScsi(), AtaPdoRemoveDevice(), and AtaPortExitStateMachine().
| DECLSPEC_NOINLINE_FROM_PAGED VOID AtaReqFreezeQueue | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt, |
| _In_ ULONG | ReasonFlags | ||
| ) |
Definition at line 1351 of file scsi.c.
Referenced by AtaPdoDispatchScsi(), AtaPdoInit(), AtaPdoRemoveDevice(), AtaPdoStopDevice(), AtaPortDeviceProcessPowerChange(), AtaPortEnterStateMachine(), AtaPortEnumerateDevice(), and AtaPortExitStateMachine().
| VOID AtaReqSendRequest | ( | _In_ PATA_DEVICE_REQUEST | Request | ) |
Definition at line 632 of file scsi.c.
Referenced by AtaPortSendRequest(), AtaReqCallSendRequestSerialized(), and AtaReqDispatchRequest().
| UCHAR AtaReqSetFixedAtaSenseData | ( | _In_ PATA_DEVICE_REQUEST | Request | ) |
Definition at line 248 of file satl.c.
Referenced by AtaDeviceGenericRecovery(), AtaDeviceHandleRequestSense(), and AtaDeviceNcqRecovery().
| UCHAR AtaReqSetFixedSenseData | ( | _In_ PSCSI_REQUEST_BLOCK | Srb, |
| _In_ SCSI_SENSE_CODE | SenseCode | ||
| ) |
Definition at line 411 of file scsi.c.
Referenced by AtaDeviceHandleRequestSense(), AtaDeviceNcqRecovery(), AtaReqCompleteReadCapacity(), AtaReqScsiRequestSense(), AtaReqSetFixedAtaSenseData(), AtaReqTerminateInvalidField(), AtaReqTerminateInvalidFieldParameter(), AtaReqTerminateInvalidOpCode(), and AtaReqTerminateInvalidRange().
| VOID AtaReqSetLbaInformation | ( | _In_ PSCSI_REQUEST_BLOCK | Srb, |
| _In_ ULONG64 | Lba | ||
| ) |
Definition at line 442 of file scsi.c.
Referenced by AtaDeviceNcqRecovery(), and AtaReqSetFixedAtaSenseData().
| UCHAR AtaReqSmartIoControl | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt, |
| _In_ PATA_DEVICE_REQUEST | Request, | ||
| _In_ PSCSI_REQUEST_BLOCK | Srb | ||
| ) |
Definition at line 92 of file smart.c.
Referenced by AtaReqTranslateRequest().
| VOID AtaReqStartCompletionDpc | ( | _In_ PATA_DEVICE_REQUEST | Request | ) |
Definition at line 777 of file scsi.c.
Referenced by AtaPortGetNextEvent(), AtaPortQueueEvent(), AtaReqSendRequest(), AtaReqStartIo(), and AtaReqStartRequest().
| DECLSPEC_NOINLINE_FROM_PAGED VOID AtaReqThawQueue | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt, |
| _In_ ULONG | ReasonFlags | ||
| ) |
Definition at line 1365 of file scsi.c.
Referenced by AtaPdoDispatchScsi(), AtaPdoStartDevice(), AtaPortDeviceProcessPowerChange(), and AtaPortExitStateMachine().
| DECLSPEC_NOINLINE_FROM_PAGED VOID AtaReqWaitForOutstandingIoToComplete | ( | _In_ PATAPORT_IO_CONTEXT | Device, |
| _In_ PSCSI_REQUEST_BLOCK | Srb | ||
| ) |
Definition at line 1395 of file scsi.c.
Referenced by AtaPdoHandleQuiesceDevice(), and AtaPdoStopDevice().
| VOID AtaSetPortRegistryKey | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _In_ PCWSTR | KeyName, | ||
| _In_ ULONG | KeyValue | ||
| ) |
Definition at line 236 of file atapi.c.
Referenced by AtaFdoStartDevice().
| VOID AtaSetRegistryKey | ( | _In_ PATAPORT_CHANNEL_EXTENSION | ChanExt, |
| _In_ UCHAR | TargetId, | ||
| _In_ PCWSTR | KeyName, | ||
| _In_ ULONG | KeyValue | ||
| ) |
Definition at line 180 of file atapi.c.
Referenced by AtaFdoInitializeDeviceRelations(), and AtaPdoInit().
| VOID AtaSwapIdString | ( | _Inout_updates_bytes_(WordCount *sizeof(USHORT)) PVOID | Buffer, |
| _In_range_(>, 0) ULONG | WordCount | ||
| ) |
Definition at line 64 of file enum.c.
Referenced by AtaCreateAtapiStandardInquiryData(), and AtaPdoFillIdentificationStrings().
| PCSTR AtaTypeCodeToName | ( | _In_ PATAPORT_DEVICE_EXTENSION | DevExt, |
| _In_ DEVICE_TYPE_NAME | Type | ||
| ) |
Definition at line 42 of file atapi.c.
Referenced by AtaPdoQueryId().
| C_ASSERT | ( | QUEUE_FLAG_FROZEN_QUEUE_FREEZE | = =SRB_FLAGS_BYPASS_FROZEN_QUEUE | ) |
| C_ASSERT | ( | QUEUE_FLAG_FROZEN_QUEUE_LOCK | = =SRB_FLAGS_BYPASS_LOCKED_QUEUE | ) |
| C_ASSERT | ( | REQUEST_FLAG_DATA_IN | = =SRB_FLAGS_DATA_IN | ) |
| C_ASSERT | ( | REQUEST_FLAG_DATA_OUT | = =SRB_FLAGS_DATA_OUT | ) |
| C_ASSERT | ( | REQUEST_FLAG_NO_KEEP_AWAKE | = =SRB_FLAGS_NO_KEEP_AWAKE | ) |
| C_ASSERT | ( | sizeof(REQUEST_QUEUE_ENTRY)<=4 *sizeof(PVOID) | ) |
| FORCEINLINE BOOLEAN IsPowerOfTwo | ( | _In_ ULONG | x | ) |
Definition at line 604 of file atapi.h.
Referenced by AtaAhciHandleFatalError(), and AtaReqAllocateSlot().
| DRIVER_ADD_DEVICE AtaAddChannel |
Definition at line 646 of file atapi.h.
Referenced by DriverEntry().
|
extern |
Definition at line 15 of file scsi.c.
Referenced by AtaPortOnRequestComplete(), AtaReqStartCompletionDpc(), and DriverEntry().
|
extern |
Definition at line 14 of file scsi.c.
Referenced by AtaPortOnRequestComplete(), AtaReqCompletionDpc(), AtaReqStartCompletionDpc(), and DriverEntry().
| IO_COMPLETION_ROUTINE AtaPdoCompletionRoutine |
Definition at line 859 of file atapi.h.
Referenced by AtaPnpRepeatRequest().
|
extern |
Definition at line 14 of file atapi.c.
Referenced by AtaQueryWmiRegInfo(), AtaUnload(), and DriverEntry().
|
extern |
Definition at line 15 of file atapi.c.
Referenced by AtaDeviceLockSecurityModeFeatureCommands(), and DriverEntry().
| REQUEST_COMPLETION_ROUTINE AtaPortCompleteInternalRequest |
Definition at line 880 of file atapi.h.
Referenced by AtaFdoStartDevice().
| IO_TIMER_ROUTINE AtaPortIoTimer |
Definition at line 938 of file atapi.h.
Referenced by AtaFdoStartDevice().
| PORT_NOTIFICATION AtaPortNotification |
Definition at line 881 of file atapi.h.
Referenced by AtaFdoStartDevice().
| KDEFERRED_ROUTINE AtaPortWorkerSignalDpc |
Definition at line 879 of file atapi.h.
Referenced by AtaFdoStartDevice().
| KSTART_ROUTINE AtaPortWorkerThread |
Definition at line 878 of file atapi.h.
Referenced by AtaFdoCreatePortThread(), AtaPortEnterStateMachine(), and AtaPortExitStateMachine().
| KDEFERRED_ROUTINE AtaReqCompletionDpc |
Definition at line 939 of file atapi.h.
Referenced by DriverEntry().
| KDEFERRED_ROUTINE AtaStorageNotificationlDpc |
Definition at line 655 of file atapi.h.
Referenced by AtaFdoStartDevice(), and AtaStorageNotificationlDpc().
| IO_WORKITEM_ROUTINE AtaStorageNotificationWorker |
Definition at line 654 of file atapi.h.
Referenced by AtaStorageNotificationlDpc().
| DRIVER_UNLOAD AtaUnload |
Definition at line 649 of file atapi.h.
Referenced by DriverEntry().