storport.h header

This header is used by storage. For more information, see:

storport.h contains the following programming interfaces:

IOCTLs

 
IOCTL_SCSI_MINIPORT_DSM

Learn how a Data Set Management (DSM) notification is transferred to a miniport driver in a IOCTL_SCSI_MINIPORT_DSM control code request.

Functions

 
FIELD_OFFSET

The FIELD_OFFSET macro (storport.h) returns the byte offset of the specified field in the specified known structure type.
RtlZeroMemory

The RtlZeroMemory macro (storport.h) fills a block of memory with zeros, given a pointer to the block and the length, in bytes, to be filled.
ScsiPortReadPortBufferUchar

Learn how the ScsiPortReadPortBufferUchar routine transfers a given number of unsigned byte values from the HBA to a buffer.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadPortBufferUlong

Learn how the ScsiPortReadPortBufferUlong routine transfers a given number of ULONG values from the HBA to a buffer.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadPortBufferUshort

Learn how the ScsiPortReadPortBufferUshort routine transfers a given number of USHORT values from the HBA to a buffer.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadPortUchar

Learn how the ScsiPortReadPortUchar routine reads an unsigned byte value from the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadPortUlong

Learn how the ScsiPortReadPortUlong routine reads a ULONG value from the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadPortUshort

Learn how the ScsiPortReadPortUshort routine reads a USHORT value from the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadRegisterBufferUchar

Learn how the ScsiPortReadRegisterBufferUchar routine transfers a specified number of unsigned bytes from the HBA to a buffer.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadRegisterBufferUlong

Learn how the ScsiPortReadRegisterBufferUlong routine transfers a specified number of ULONG values from the HBA to a buffer.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadRegisterBufferUshort

Learn how the ScsiPortReadRegisterBufferUshort routine transfers a specified number of USHORT values from the HBA to a buffer.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadRegisterUchar

Learn how the ScsiPortReadRegisterUchar routine reads an unsigned byte value from the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadRegisterUlong

Learn how the ScsiPortReadRegisterUlong routine reads a ULONG value from the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortReadRegisterUshort

Learn how the ScsiPortReadRegisterUshort routine reads a USHORT value from the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWritePortBufferUchar

Learn how the ScsiPortWritePortBufferUchar routine transfers a given number of unsigned bytes from a buffer to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWritePortBufferUlong

Learn how the ScsiPortWritePortBufferUlong routine transfers a given number of ULONG values from a buffer to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWritePortBufferUshort

Learn how the ScsiPortWritePortBufferUshort routine transfers a given number of USHORT values from a buffer to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWritePortUchar

Learn how the ScsiPortWritePortUchar routine transfers an unsigned byte to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWritePortUlong

Learn how the ScsiPortWritePortUlong routine transfers a ULONG value to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWritePortUshort

Learn how the ScsiPortWritePortUshort routine transfers a USHORT value to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWriteRegisterBufferUchar

Learn how the ScsiPortWriteRegisterBufferUchar routine transfers a given number of unsigned bytes from a buffer to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWriteRegisterBufferUlong

Learn how the ScsiPortWriteRegisterBufferUlong routine transfers a given number of ULONG values from a buffer to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWriteRegisterBufferUshort

Learn how the ScsiPortWriteRegisterBufferUshort routine transfers a given number of USHORT values from a buffer to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWriteRegisterUchar

Learn how the ScsiPortWriteRegisterUchar routine transfers an unsigned byte value to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWriteRegisterUlong

Learn how the ScsiPortWriteRegisterUlong routine transfers a ULONG value to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
ScsiPortWriteRegisterUshort

Learn how the ScsiPortWriteRegisterUshort routine transfers a USHORT value to the HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
StorPortAcquireMSISpinLock

The StorPortAcquireMSISpinLock routine acquires the message signaled interrupt (MSI) spin lock that is associated with the specified message.
StorPortAcquireSpinLock

Learn more abut the StorPortAcquireSpinLock function.
StorPortAcquireSpinLockEx

Learn more about the StorPortAcquireSpinLockEx function.
StorPortAllocateContiguousMemorySpecifyCacheNode

The StorPortAllocateContiguousMemorySpecifyCacheNode routine allocates a range of physically contiguous noncached, nonpaged memory.
StorPortAllocateDmaMemory

This function is the extended version of the StorPortAllocateContiguousMemorySpecifyCacheNode function. It allocates a range of physically contiguous noncached, nonpaged memory, and returns the physical address of the allocated buffer.
StorPortAllocateHostMemoryBuffer

This function allocates one or more ranges of physically contiguous memory to be used as a Host Memory Buffer (HMB).
StorPortAllocateMdl

The StorPortAllocateMdl routine allocates an MDL to describe the given non-paged pool memory.
StorPortAllocatePool

The StorPortAllocatePool routine allocates a block of non-contiguous, non-paged pool memory.
StorPortAllocateRegistryBuffer

The StorPortAllocateRegistryBuffer routine is called by the miniport driver to allocate a buffer that can be used to read and write registry data.
StorPortAsyncNotificationDetected

A storage miniport driver calls StorPortAsyncNotificationDetected to notify the Storport driver of a storage device status change event.
StorPortBuildMdlForNonPagedPool

The StorPortBuildMdlForNonPagedPool routine updates the MDL to describe the associated non-paged memory.
StorPortBuildScatterGatherList

The StorPortBuildScatterGatherList routine creates a scatter/gather list for the specified data buffer.
StorPortBusy

The StorPortBusy routine notifies the port driver that the adapter is currently busy, handling outstanding requests.
StorPortCancelDpc

StorPortCancelDpc attempts to cancel the execution of a StorPort deferred procedure call (DPC).
StorPortCaptureLiveDump

StorPortCaptureLiveDump captures a live dump file.
StorPortCompleteRequest

The StorPortCompleteRequest routine completes all outstanding requests setting the SRB status value to SrbStatus.
StorPortCompleteServiceIrp

The StorPortCompleteServiceIrp routine is called by a Storport virtual miniport driver when it needs to complete a request that it received in its HwStorProcessServiceRequest callback routine.
StorPortConvertUlongToPhysicalAddress

The StorPortConvertUlongToPhysicalAddress routine converts an unsigned long address into a physical address.
StorPortCreateSystemThread

StorPortCreateSystemThread creates a system thread and supplies a pointer to a context for the thread.
StorPortDebugPrint

The StorPortDebugPrint routine prints a debug string to the kernel debugger, if the debugger is attached.
StorPortDelayExecution

The StorPortDelayExecution function delays the current thread by the given amount of time, in microseconds. If the current IRQL is lower than DISPATCH_LEVEL then the current thread is simply put in the wait state and other threads are allowed to run. Otherwise, this routine performs a busy-wait.
StorPortDeviceBusy

The StorPortDeviceBusy routine notifies the port driver that the specified logical unit is currently busy, handling outstanding requests.
StorPortDeviceReady

The StorPortDeviceReady routine notifies the port driver that the indicated logical unit is ready to handle new requests.
StorPortEnablePassiveInitialization

The StorPortEnablePassiveInitialization routine enables the miniport's HwStorPassiveInitializeRoutine callback routine to execute at PASSIVE_LEVEL during miniport initialization.
StorPortEnableRegistryKeyNotification

Learn more about the StorPortEnableRegistryKeyNotification function.
StorPortEtwChannelEvent2

Learn more about the StorPortEtwChannelEvent2 function.
StorPortEtwChannelEvent4

StorPortEtwChannelEvent8

StorPortEtwEvent2

Learn more about the StorPortEtwEvent2 function.
StorPortEtwEvent4

Learn more about the StorPortEtwEvent4 function.
StorPortEtwEvent8

Learn more about the StorPortEtwEvent8 function.
StorPortEtwLogByteStream

StorPortEtwLogByteStream logs an Event Tracing for Windows (ETW) event with a general purpose byte stream parameter to the specified channel.
StorPortEtwLogError

StorPortEtwLogError logs an Event Tracing for Windows (ETW) event for a hardware protocol error.
StorPortFreeContiguousMemorySpecifyCache

The StorPortFreeContiguousMemorySpecifyCache routine deallocates a range of noncached memory in the nonpaged portion of the system address space.
StorPortFreeDeviceBase

StorPortFreeDeviceBase frees a range of device I/O memory that was mapped by StorPortGetDeviceBase.
StorPortFreeDmaMemory

This function is the extended version of the StorPortFreeContiguousMemorySpecifyCache function. It deallocates a range of noncached memory in the nonpaged portion of the system address space.
StorPortFreeHostMemoryBuffer

The StorPortFreeHostMemoryBuffer routine frees the physically contiguous memory that was allocated to be used for a Host Memory Buffer (HMB).
StorPortFreeMdl

The StorPortFreeMdl routine frees a memory descriptor list (MDL) describing non-paged pool memory.
StorPortFreePool

The StorPortFreePool routine frees a block of memory that was previously allocated by a call to the StorPortAllocatePool routine.
StorPortFreeRegistryBuffer

The StorPortFreeRegistryBuffer routine frees the buffer that was allocated for storing registry data.
StorPortFreeTimer

Frees a Storport timer context object previously created by the StorPortInitializeTimer routine.
StorPortFreeWorker

Frees a Storport work item previously allocated by the StorPortInitializeWorker routine.
StorPortGetActiveGroupCount

The StorPortGetActiveGroupCount routine returns the number of processor groups that are present in the system.
StorPortGetActiveNodeCount

The StorPortGetActiveNodeCount routine returns the number of nodes that are present in the system.
StorPortGetActivityIdSrb

Retrieves the Event Tracing for Windows (ETW) activity ID associated with a request block.
StorPortGetBusData

The StorPortGetBusData routine retrieves the bus-specific configuration information necessary to initialize the HBA.
StorPortGetCurrentIrql

StorPortGetCurrentIrql retrieves the current interrupt request level (IRQL).
StorPortGetCurrentProcessorNumber

Learn more about the StorPortGetCurrentProcessorNumber function.
StorPortGetDataInBufferMdl

Returns an MDL associated with the input data buffer of a SCSI request block (SRB).
StorPortGetDataInBufferScatterGatherList

Returns the scatter-gather list associated with the input data buffer of a SCSI request block (SRB).
StorPortGetDataInBufferSystemAddress

Returns the system address for the input data buffer of a SCSI request block (SRB).
StorPortGetDeviceBase

The StorPortGetDeviceBase routine maps an I/O address to system address space.
StorPortGetDeviceBase2

The StorPortGetDeviceBase2 function is like StorPortGetDeviceBase, but the Flags parameter allows for additional optional behavior.
StorPortGetDeviceObjects

The StorPortGetDeviceObjects routine returns the device objects that are associated with the adapter device stack.
StorPortGetDriverProxyEndpointWrapper

Learn more about the StorPortGetDriverProxyEndpointWrapper function.
StorPortGetGroupAffinity

The StorPortGetGroupAffinity routine constructs a mask of the active processors in a requested group.
StorPortGetHighestNodeNumber

The StorPortGetHighestNodeNumber routine returns the largest possible node number on the system.
StorPortGetLogicalProcessorRelationship

The StorPortGetLogicalProcessorRelationship routine returns relationship information for one or more specified types.
StorPortGetLogicalUnit

The StorPortGetLogicalUnit routine returns a pointer to the miniport driver's per-logical-unit storage area.
StorPortGetMessageInterruptIDFromProcessorIndex

Learn more about the StorPortGetMessageInterruptIDFromProcessorIndex function.
StorPortGetMSIInfo

The StorPortGetMSIInfo routine retrieves the message signaled interrupt (MSI) information for the specified message.
StorPortGetNodeAffinity

The StorPortGetNodeAffinity routine constructs a mask of the active processors in a requested non-uniform memory access (NUMA) node.
StorPortGetNodeAffinity2

Learn more about the StorPortGetNodeAffinity2 function.
StorPortGetOriginalMdl

The StorPortGetOriginalMdl routine returns the MDL associated with the given SRB.
StorPortGetPfns

Learn more about the StorPortGetPfns function.
StorPortGetPhysicalAddress

The StorPortGetPhysicalAddress routine converts a given virtual address range to a physical address range for a DMA operation.
StorPortGetProcessorCount

Learn more about the StorPortGetProcessorCount function.
StorPortGetRequestCryptoInfo

Microsoft reserves the StorPortGetRequestCryptoInfo function for internal use only. Don't use this function in your code.
StorPortGetRequestInfo

The StorPortGetRequestInfo routine retrieves the IO request information associated with a SCSI request block (SRB) and returns it in a STOR_REQUEST_INFO structure.
StorPortGetScatterGatherList

The StorPortGetScatterGatherList routine retrieves the associated scatter/gather list for the specified SCSI request block (SRB).
StorPortGetStartIoPerfParams

The StorPortGetStartIoPerfParams routine places the performance parameters for a given I/O request in a STARTIO_PERFORMANCE_PARAMETERS structure.
StorPortGetSystemAddress

The StorPortGetSystemAddress routine returns a virtual address in system space for the data buffer of the specified SCSI request block (SRB).
StorPortGetSystemPortNumber

The StorPortGetSystemPortNumber routine retrieves the system assigned port number for a storage adapter.
StorPortGetUncachedExtension

The StorPortGetUncachedExtension routine allocates an uncached common buffer to be shared by the CPU and the device.
StorPortGetVirtualAddress

The StorPortGetVirtualAddress routine obtains a virtual address that maps to the indicated physical address.
StorPortHardwareReset

A miniport can call StorPortHardwareReset to issue a hardware reset.
StorPortInitialize

The StorPortInitialize routine initializes the port driver parameters and extension data. StorPortInitialize also saves the adapter information provided from the miniport driver.
StorPortInitializeCryptoEngine

Microsoft reserves the StorPortInitializeCryptoEngine function for internal use only. Don't use this function in your code.
StorPortInitializeDpc

The StorPortInitializeDpc routine initializes a StorPort DPC.
StorPortInitializeEvent

StorPortInitializeEvent initializes an event object as a synchronization or notification type event, and sets it to a signaled or not-signaled state.
StorPortInitializeListHead

The StorPortInitializeListHead routine initializes a STOR_LIST_ENTRY structure that represents the head of a doubly linked list.
StorPortInitializePerfOpts

The StorPortInitializePerfOpts function initializes the performance optimizations that both the miniport driver and the Storport driver support using a PERF_CONFIGURATION_DATA structure.
StorPortInitializePoFxPower

A miniport driver calls StorPortInitializePoFxPower to register a storage device with the power management framework (PoFx).
StorPortInitializeSListHead

Initializes the head of a Storport managed singly linked list.
StorPortInitializeSpinlock

The StorPortInitializeSpinLock routine initializes a variable of type STOR_KSPIN_LOCK.
StorPortInitializeTimer

Creates a Storport timer context object.
StorPortInitializeWorker

Creates a new Storport work item that runs in a system worker thread.
StorPortInterlockedFlushSList

Removes all items from a Storport managed singly linked list. Access to the list is synchronized on a multiprocessor system.
StorPortInterlockedInsertHeadList

The StorPortInterlockedInsertHeadList routine atomically inserts an entry at the beginning of a doubly linked list of STOR_LIST_ENTRY structures.
StorPortInterlockedInsertTailList

The StorPortInterlockedInsertTailList routine atomically inserts an entry at the end of a doubly linked list of STOR_LIST_ENTRY structures.
StorPortInterlockedPopEntrySList

Removes an item from the front of a Storport managed singly linked list. Access to the list is synchronized on a multiprocessor system. Syntax.
StorPortInterlockedPushEntrySList

Inserts an item at the front of a Storport managed singly linked list. Access to the list is synchronized on a multiprocessor system.
StorPortInterlockedRemoveHeadList

The StorPortInterlockedRemoveHeadList routine removes an entry from the beginning of a doubly linked list of STOR_LIST_ENTRY structures.
StorPortInvokeAcpiMethod

The StorPortInvokeAcpiMethod routine executes an ACPI method for a storage device.
StorPortIsCurrentOsInstallationUpgrade

The StorPortIsCurrentOsInstallationUpgrade routine checks if the current installation of Windows is an upgrade from a previous version or not.
StorPortIsDeviceOperationAllowed

A miniport driver can call the StorPortIsDeviceOperationAllowedminiport routine to determine if operations for a certain device management class are allowed.
StorPortIsDriverHotSwapEnabled

Learn more about the StorPortIsDriverHotSwapEnabled function.
StorPortIssueDpc

The StorPortIssueDpc routine issues a deferred procedure call (DPC).
StorPortLogError

The StorPortLogError routine notifies the port driver that an error occurred.
StorPortLogSystemEvent

The StorPortLogSystemEvent routine gives miniport drivers full access to the capabilities of the Windows kernel event facility, enabling miniport drivers to create event log entries that are truly useful in troubleshooting storage issues.
StorPortLogTelemetry

The StorPortLogTelemetry routine logs a miniport telemetry event to help diagnose or collect any useful information.
StorPortLogTelemetryEx

Learn how the StorPortLogTelemetry routine logs a miniport telemetry event to help diagnose or collect any useful information.
StorPortMarkDeviceFailed

The StorPortMarkDeviceFailed routine marks a device with failed status.
StorPortMarkDeviceFailedEx

The StorPortMarkDeviceFailedEx routine marks a device with failed status and provides data that might be needed for diagnosis.
StorPortMarkDumpMemory

A miniport should mark memory used for the dump file or the hibernation file.
StorPortMaskMsixInterrupt

StorPortMaskMsixInterrupt masks or unmasks the specified MSI-X interrupt.
StorPortMoveMemory

The StorPortMoveMemory routine copies memory from one buffer to another.
StorPortNotification

The miniport driver uses the StorPortNotification routine to notify the Storport driver of certain events and conditions.
StorPortNvmeIceIoComplete

Learn more about the StorPortNvmeIceIoComplete function.
StorPortNvmeIceIoStart

Learn more about the StorPortNvmeIceIoStart function.
StorPortNvmeLogTelemetry

Learn more about the StorPortNvmeLogTelemetry function.
StorPortNvmeMiniportEvent

Learn more about the StorPortNvmeMiniportEvent function.
StorPortPause

The StorPortPause routine pauses an adapter for the specified period of time.
StorPortPauseDevice

The StorPortPauseDevice routine pauses a specific logical unit device for the specified period of time.
StorPortPoFxActivateComponent

The StorPortPoFxActivateComponent routine increments the activation reference count on the specified component of a storage device.
StorPortPoFxIdleComponent

The StorPortPoFxIdleComponent routine decrements the activation reference count of a specified component of a storage device.
StorPortPoFxPowerControl

The StorPortPoFxPowerControl routine sends a power control request to the power management framework (PoFx) to forward to the power engine plug-in (PEP).
StorPortPoFxSetComponentLatency

The StorPortPoFxSetComponentLatency routine specifies the maximum latency that can be tolerated in the transition from the idle condition to the active condition in the specified storage device component.
StorPortPoFxSetComponentResidency

The StorPortPoFxSetComponentResidency routine sets the estimated time for how long a storage device component is likely to remain idle after the component enters the idle condition.
StorPortPoFxSetIdleTimeout

Learn more about the StorPortPoFxSetIdleTimeout function.
StorPortPoFxSetPerfState

StorPortPoFxSetPerfState sets a component's P-state.
StorPortPutScatterGatherList

The StorPortPutScatterGatherList routine releases any resources associated with a scatter/gather list that was previously created by a call to the StorPortBuildScatterGatherList routine.
StorPortQueryConfiguration

A miniport can call StorPortQueryConfiguration to get the specific configuration of the platform.
StorPortQueryDepthSList

Retrieves the number of entries in a Storport managed singly linked list.
StorPortQueryDpcWatchdogInformation

StorPortQueryDpcWatchdogInformation queries DPC watchdog timer values for the current processor.
StorPortQueryPerformanceCounter

The current system performance counter value is queried is returned by the StorPortQueryPerformanceCounter routine.
StorPortQuerySystemTime

The StoriPortQuerySystemTime routine obtains the current system time.
StorPortQueryTimerMinInterval

StorPortQueryTimerMinInterval queries the minimum timer resolution that is supported by the system clock.
StorPortQueueWorkItem

Schedules a Storport work item to execute within the context of a system worker thread.
StorPortReadDriverRegistry

The StorPortReadDriverRegistry function is used by the miniport to read the registry data for a given driver object.
StorPortReadPortBufferUchar

The StorPortReadPortBufferUchar routine reads a value from a specified port address
StorPortReadPortBufferUlong

The StorPortReadPortBufferUlong routine reads a value from a specified port address.
StorPortReadPortBufferUshort

The StorPortReadPortBufferUshort routine reads a value from a specified port address.
StorPortReadPortUchar

The StorPortReadPortUchar routine reads a value from a specified port address
StorPortReadPortUlong

The StorPortReadPortUlong routine reads a value from a specified port address.
StorPortReadPortUshort

The StorPortReadPortUshort routine reads a value from a specified port address.
StorPortReadRegisterBufferUchar

The StorPortReadRegisterBufferUchar routine reads a value from a specified register address.
StorPortReadRegisterBufferUlong

The StorPortReadRegisterBufferUlong routine reads a value from a specified register address.
StorPortReadRegisterBufferUlong64

This StorPortReadRegisterBufferUlong64 routine reads a number of ULONG64 values from the specified 64-bit register address into a buffer.
StorPortReadRegisterBufferUshort

The StorPortReadRegisterBufferUshort routine reads a value from a specified register address.
StorPortReadRegisterUchar

The StorPortReadRegisterUchar routine reads a value from a specified register address.
StorPortReadRegisterUlong

The StorPortReadRegisterUlong routine reads a value from a specified register address.
StorPortReadRegisterUlong64

The StorPortReadRegisterUlong64 routine reads a 64-bit value from a specified 64-bit register address.
StorPortReadRegisterUshort

The StorPortReadRegisterUshort routine reads a value from a specified register address.
StorPortReadRegistryKey

The StorPortReadRegistryKey function is used by the miniport to read the specified registry key. The caller provides the absolute path to the key to be read.
StorPortReady

The StorPortReady routine notifies the port driver that the adapter is no longer busy.
StorPortRegisterDriverProxy

Learn more about the StorPortRegisterDriverProxy function.
StorPortRegisterDriverProxyEndpoints

Learn more about the StorPortRegisterDriverProxyEndpoints function.
StorPortRegistryRead

The StorPortRegistryRead routine reads the registry data for the indicated device and value.
StorPortRegistryReadAdapterKey

The StorPortRegistryReadAdapterKey routine is called by the miniport driver to read the hardware or device registry adapter keys located in registry at HKLM/CurrentControlSet/Enum/<Instance path>/DeviceParameters/...
StorPortRegistryWrite

The StorPortRegistryWrite routine is called by the miniport driver to convert the registry data contained in a specified buffer from ASCII to Unicode and to then write the data to the miniport driver's per-HBA storage area.
StorPortRegistryWriteAdapterKey

The StorPortRegistryReadAdapterKey routine is called by the miniport driver to read the hardware or device registry adapter keys located in registry at HKLM/CurrentControlSet/Enum/<Instance path>/DeviceParameters/....
StorPortReleaseMSISpinLock

The StorPortReleaseMSISpinLock routine releases a previously acquired message signaled interrupt (MSI) spin lock for the specified message.
StorPortReleaseSpinLock

The StorPortReleaseSpinLock routine releases a spinlock acquired by StorPortAcquireSpinLock.
StorPortRequestTimer

Schedules a callback event for a Storport timer context object.
StorPortResume

The StorPortResume routine resumes a paused adapter.
StorPortResumeDevice

The StorPortResumeDevice routine resumes a previously paused logical unit.
StorPortRevertToUserGroupAffinityThread

Learn more about: StorPortRevertToUserGroupAffinityThread
StorPortSecureCopyMemory

StorPortSecureCopyMemory securely copies bytes between buffers.
StorPortSetAdapterBusType

StorPortSetAdapterBusType is used to adjust the bus type of the adapter depending on its current configuration.
StorPortSetBusDataByOffset

The StorPortSetBusDataByOffset routine writes bus-specific configuration information.
StorPortSetDeviceQueueDepth

The StorPortSetDeviceQueueDepth routine sets the maximum depth of the device queue for the indicated device.
StorPortSetEvent

A miniport can call StorPortSetEvent to set an event object to the signaled state.
StorPortSetFeatureList

StorPortSetFeatureList sets the Storport features that a miniport supports.
StorPortSetPowerSettingNotificationGuids

The StorPortSetPowerSettingNotificationGuids routine enables a miniport to receive power setting notifications. The miniport registers an array of GUIDs which identify the power settings to receive power change notifications for.
StorPortSetPriorityThread

StorPortSetPriorityThread sets the run-time priority of a miniport-created thread.
StorPortSetSystemGroupAffinityThread

StorPortSetSystemGroupAffinityThread changes the group number and affinity mask of the calling thread.
StorPortSetUnitAttributes

Learn more about the StorPortSetUnitAttributes routine.
StorPortStallExecution

The StorPortStallExecution routine stalls the miniport driver.
StorPortStateChangeDetected

Notifies the Storport port driver of a state change for a logical unit number (LUN), host bus adapter (HBA) port, or target device.
StorPortSynchronizeAccess

The StorPortSynchronizeAccess routine provides synchronized access to a miniport driver's device extension.
StorPortTerminateSystemThread

StorPortTerminateSystemThread terminates the current system thread.
StorPortUpdateAdapterMaxIO

Learn more about the StorPortUpdateAdapterMaxIO function.
StorPortUpdatePortConfigMaxIOInfo

Learn more about the StorPortUpdatePortConfigMaxIOInfo function.
StorPortValidateRange

The StorPortValidateRange routine determines whether a specified range of I/O addresses is in use by another adapter. This routine is obsolete in Windows NT 4.0 and later operating systems.
StorPortWaitForSingleObject

A miniport can call StorPortWaitForSingleObject function to put the current thread into a wait state until the given dispatcher object is set to signaled state or optionally times out.
StorPortWritePortBufferUchar

The StorPortWritePortBufferUchar routine writes a value to a specified register address.
StorPortWritePortBufferUlong

The StorPortWritePortBufferUlong routine writes a value to a specified register address.
StorPortWritePortBufferUshort

The StorPortWritePortBufferUshort routine writes a value to a specified register address.
StorPortWritePortUchar

The StorPortWritePortUchar routine writes a value to a specified register address.
StorPortWritePortUlong

The StorPortWritePortUlong routine writes a value to a specified register address.
StorPortWritePortUshort

The StorPortWritePortUshort routine writes a value to a specified register address.
StorPortWriteRegisterBufferUchar

The StorPortWriteRegisterBufferUchar routine transfers a given number of unsigned bytes from a buffer to the HBA.
StorPortWriteRegisterBufferUlong

The StorPortWriteRegisterBufferUlong routine transfers a given number of ULONG values from a buffer to the HBA.
StorPortWriteRegisterBufferUlong64

This StorPortWriteRegisterBufferUlong64 routine writes a number of ULONG64 values from a specified 64-bit register address.
StorPortWriteRegisterBufferUshort

The StorPortWriteRegisterBufferUshort routine transfers a given number of USHORT values from a buffer to the HBA.
StorPortWriteRegisterUchar

The StorPortWriteRegisterBufferUshort routine transfers a given number of character values from a buffer to the indicated HBA register address.
StorPortWriteRegisterUlong

The StorPortWriteRegisterUlong routine transfers a ULONG value to the indicated HBA register address.
StorPortWriteRegisterUlong64

This StorPortWriteRegisterUlong64 routine writes a ULONG64 value to the specified register address.
StorPortWriteRegisterUshort

The StorPortWriteRegisterUshort routine transfers a ULONG value to the indicated HBA register address.

Callback functions

 
HW_ADAPTER_CONTROL

A miniport driver's HwStorAdapterControl routine is called to perform synchronous operations to control the state or behavior of an adapter, such as stopping or restarting the HBA for power management.
HW_BUILDIO

The HwStorBuildIo routine processes the SRB with unsynchronized access to shared system data structures before passing it to HwStorStartIo.
HW_CLEANUP_TRACING

The HwStorCleanupTracing callback routine allows the Storport virtual miniport driver to stop tracing and to free any related resources.
HW_COMPLETE_SERVICE_IRP

The HwStorCompleteServiceIrp routine is called when the virtual adapter is being removed. When this happens, the Storport virtual miniport can complete any reverse-callback IRPs received in HwStorCompleteServiceIrp.
HW_DPC_ROUTINE

The HwStorDpcRoutine routine is a routine that is deferred for execution at DISPATCH IRQL by means of the deferred procedure call (DPC) mechanism.
HW_FIND_ADAPTER

The HwStorFindAdapter routine uses the supplied configuration to determine whether a specific HBA is supported and, if it is, to return configuration information about that adapter.
HW_FREE_ADAPTER_RESOURCES

The HwStorFreeAdapterResources callback routine allows the Storport virtual miniport driver to free resources when the virtual adapter is being removed. This is the last callback routine for the adapter.
HW_INITIALIZE

The HwStorInitialize routine initializes the miniport driver after a system reboot or power failure occurs.
HW_INITIALIZE_TRACING

The HwStorInitializeTracing callback routine allows the Storport virtual miniport driver to set up tracing and any related resources.
HW_INTERRUPT

The Storport driver calls the HwStorInterrupt routine after the HBA generates an interrupt request.
HW_MESSAGE_SIGNALED_INTERRUPT_ROUTINE

The HwMSInterruptRoutine routine handles a message signaled interrupt (MSI).
HW_PASSIVE_INITIALIZE_ROUTINE

The HwStorPassiveInitializeRoutine callback routine is called after the HwStorInitialize routine when the current IRQL is at PASSIVE_LEVEL.
HW_PROCESS_SERVICE_REQUEST

The HwStorProcessServiceRequest callback routine receives the device control IRP that contains the IOCTL_MINIPORT_PROCESS_SERVICE_IRP request when a caller, such as a user-mode application or kernel-mode driver, requires a "reverse callback" operation.
HW_REGISTRY_NOTIFICATION_ROUTINE

Learn more about the HW_REGISTRY_NOTIFICATION_ROUTINE callback.
HW_RESET_BUS

The HwStorResetBus routine is called by the port driver to clear error conditions.
HW_STARTIO

The Storport driver calls the HwStorStartIo routine one time for each incoming I/O request.
HW_STATE_CHANGE

A miniport-provided callback that is called after a notification from StorPortStateChangeDetected is processed.
HW_TIMER

The HwStorTimer routine is called after the interval that is specified when the miniport driver called StorPortNotification with the RequestTimerCall NotificationType value.
HW_TRACING_ENABLED

The HwStorTracingEnabled callback routine enables the Storport to notify a miniport that event tracing is enabled.
HW_UNIT_CONTROL

A miniport driver's HwStorUnitControl routine is called to perform synchronous operations to control the state of storage unit device.
HW_WORKITEM

A miniport-provided callback function for processing a Storport work item request.
STOR_THREAD_START_ROUTINE

STOR_THREAD_START_ROUTINE provides an entry point for a storage miniport-created system thread.
VIRTUAL_HW_FIND_ADAPTER

The Storport virtual miniport uses configuration information supplied to the VirtualHwStorFindAdapter routine to further initialize itself.

Structures

 
ACCESS_RANGE

Learn how an ACCESS_RANGE describes a memory or I/O port range used by an HBA.Note  The SCSI port driver and SCSI miniport driver models may be altered or unavailable in the future.
BLOCK_DEVICE_RANGE_DESCRIPTOR

The BLOCK_DEVICE_RANGE_DESCRIPTOR structure describes a range of logical blocks associated with various fragments of a file for an offload copy operation.
BLOCK_DEVICE_TOKEN_DESCRIPTOR

The BLOCK_DEVICE_TOKEN_DESCRIPTOR structure (scsi.h) contains the token returned from the POPULATE TOKEN command for an offload read data operation.
CURRENT_INTERNAL_STATUS_PARAMETER_DATA

Learn more about: _CURRENT_INTERNAL_STATUS_PARAMETER_DATA structure (storport.h)
ERROR_HISTORY_DIRECTORY

Learn more about: _ERROR_HISTORY_DIRECTORY structure (storport.h)
ERROR_HISTORY_DIRECTORY_ENTRY

Learn more about: _ERROR_HISTORY_DIRECTORY_ENTRY structure (storport.h)
HW_INITIALIZATION_DATA

The HW_INITIALIZATION_DATA (Storport) structure contains information particular to each miniport driver and the hardware that the miniport driver manages.
INQUIRYDATA

The _INQUIRYDATA structure (storport.h) contains information about the SCSI inquiry data associated with a tape device.
MEMORY_REGION

The MEMORY_REGION structure describes a region of physically contiguous memory.
MESSAGE_INTERRUPT_INFORMATION

The MESSAGE_INTERRUPT_INFORMATION structure describes a message signaled interrupt (MSI).
MINIPORT_DUMP_POINTERS

A Storport miniport driver uses this structure to support the SCSI_REQUEST_BLOCK (SRB) function code SRB_FUNCTION_DUMP_POINTERS.
MODE_COMMAND_DURATION_LIMIT_PAGE_T2A_SUBPAGE

Learn more about the MODE_COMMAND_DURATION_LIMIT_PAGE_T2A_SUBPAGE (storport.h) structure.
MODE_COMMAND_DURATION_LIMIT_PAGE_T2B_SUBPAGE

Learn more about the MODE_COMMAND_DURATION_LIMIT_PAGE_T2B_SUBPAGE (storport.h) structure.
MODE_PAGE_SUBPAGE_HEADER

Learn more about the MODE_PAGE_SUBPAGE_HEADER (storport.h) structure.
PERF_CONFIGURATION_DATA

The PERF_CONFIGURATION_DATA structure describes the performance optimizations that are supported by the StorPortInitializePerfOpts routine.
POPULATE_TOKEN_HEADER

The POPULATE_TOKEN_HEADER structure (storport.h) contains the header for the parameters in a command data block (CDB) of the POPULATE TOKEN command.
PORT_CONFIGURATION_INFORMATION

PORT_CONFIGURATION_INFORMATION contains configuration information for a host bus adapter (HBA).
PRI_FULL_STATUS_DESCRIPTOR

The PRI_FULL_STATUS_DESCRIPTOR structure is used to construct the PRI_FULL_STATUS_LIST structure that is returned in response to a Persistent Reserve In command.
PRI_FULL_STATUS_DESCRIPTOR_HEADER

The PRI_FULL_STATUS_DESCRIPTOR_HEADER structure is the first member of a PRI_FULL_STATUS_DESCRIPTOR structure, which is used to populate a PRI_FULL_STATUS_LIST.
PRI_FULL_STATUS_LIST

The PRI_FULL_STATUS_LIST structure is returned in response to a Persistent Reserve In command with ServiceAction=RESERVATION_ACTION_READ_FULL_STATUS.
PRI_FULL_STATUS_LIST_HEADER

The PRI_FULL_STATUS_LIST_HEADER structure is the first member of a PRI_FULL_STATUS_LIST that is returned in response to a Persistent Reserve In command with ServiceAction=RESERVATION_ACTION_READ_FULL_STATUS.
PRI_REGISTRATION_LIST

The PRI_REGISTRATION_LIST structure (storport.h) contains information about persistent reservations and reservation keys that are active within a device server.
PRI_REPORT_CAPABILITIES

The PRI_REPORT_CAPABILITIES structure contains information on persistent reservation features.
PRI_RESERVATION_DESCRIPTOR

The PRI_RESERVATION_DESCRIPTOR structure (storport.h) describes a persistent reservation that is active within a device server.
PRI_RESERVATION_LIST

The PRI_RESERVATION_LIST structure (storport.h) contains a list of persistent reservations that are active within a device server.
PRO_PARAMETER_LIST

The PRO_PARAMETER_LIST structure (storport.h) contains reservation information that is sent in a Persistent Reserve Out (PRO) command to a device server.
RECEIVE_TOKEN_INFORMATION_HEADER

The RECEIVE_TOKEN_INFORMATION_HEADER structure (storport.h) contains information that describes the status of an offload data transfer operation.
RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER

The RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER structure (storport.h) contains a token that is created as a representation of data (ROD).
REPORT_ZONES_DATA

Don't use this structure in your code. Microsoft reserves the REPORT_ZONES_DATA structure for internal use only. Don't use this structure in your code.
RS_ALL_COMMANDS_PARAMETER_DATA

The RS_ALL_COMMANDS_PARAMETER_DATA structure contains a list of RS_COMMAND_DESCRIPTOR structures.
RS_COMMAND_DESCRIPTOR

The RS_COMMAND_DESCRIPTOR structure contains information about a single supported command descriptor block (CDB).
RS_COMMAND_TIMEOUTS_DESCRIPTOR

The RS_COMMAND_TIMEOUTS_DESCRIPTOR structure contains command timeout information from the start of processing a command to its reported completion.
RS_ONE_COMMAND_PARAMETER_DATA

The RS_ONE_COMMAND_PARAMETER_DATA structure contains information about the command data block (CDB) and a usage map for bits in the CDB.
RT_PARAMETER_DATA

The RT_PARAMETER_DATA structure (storport.h) contains the parameter data for the report timestamp command.
SAVED_INTERNAL_STATUS_PARAMETER_DATA

Learn more about: _SAVED_INTERNAL_STATUS_PARAMETER_DATA structure (storport.h)
SCSI_PNP_REQUEST_BLOCK

The _SCSI_PNP_REQUEST_BLOCK structure (storport.h) contains information for SCSI plug and play (PNP) requests.
SCSI_POWER_REQUEST_BLOCK

The _SCSI_POWER_REQUEST_BLOCK structure (storport.h) contains information for SCSI power management requests.
SCSI_REQUEST_BLOCK

The _SCSI_REQUEST_BLOCK structure (storport.h) contains information for SCSI Request Block (SRB) functions.
SCSI_SUPPORTED_CONTROL_TYPE_LIST

SCSI_SUPPORTED_CONTROL_TYPE_LIST is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiQuerySupportedUnitControlTypes or HwStorAdapterControl routine is called with a ControlType of ScsiQuerySupportedControlTypes.
SCSI_WMI_REQUEST_BLOCK

The _SCSI_WMI_REQUEST_BLOCK structure (storport.h) contains information about a SCSI_REQUEST_BLOCK for use with WMI commands.
SES_CONFIGURATION_DIAGNOSTIC_PAGE

Learn more about: SES_CONFIGURATION_DIAGNOSTIC_PAGE structure (storport.h)
SES_DOWNLOAD_MICROCODE_CONTROL_DIAGNOSTIC_PAGE

The _SES_DOWNLOAD_MICROCODE_CONTROL_DIAGNOSTIC_PAGE structure (storport.h) contains a vendor specific microcode image used by the enclosure services process.
SES_DOWNLOAD_MICROCODE_STATUS_DESCRIPTOR

The _SES_DOWNLOAD_MICROCODE_STATUS_DESCRIPTOR structure (storport.h) specifies the status and additional status of a download microcode.
SES_DOWNLOAD_MICROCODE_STATUS_DIAGNOSTIC_PAGE

The _SES_DOWNLOAD_MICROCODE_STATUS_DIAGNOSTIC_PAGE structure (storport.h) contains information about the status of one or more download microcode operations.
SRBEX_DATA

The _SRBEX_DATA structure (storport.h) describes the generalized format for containing extended SCSI Request Block (SRB) data.
SRBEX_DATA_BIDIRECTIONAL

The _SRBEX_DATA_BIDIRECTIONAL structure (storport.h) contains the extended SCSI Request Block (SRB) data for bi-directional transfer commands.
SRBEX_DATA_IO_INFO

The _SRBEX_DATA_IO_INFO structure (storport.h) contains additional information related to a read or write request in an extended SCSI Request Block (SRB).
SRBEX_DATA_NVME_COMMAND

The SRBEX_DATA_NVME_COMMAND (storport.h) structure enables the user to frame and issue a command in NVMe format.
SRBEX_DATA_NVMEOF_OPERATION

For internal use only. Do not use.
SRBEX_DATA_PNP

The _SRBEX_DATA_PNP structure (storport.h) contains the request data for an extended plug and play (PNP) SCSI Request Block (SRB).
SRBEX_DATA_POWER

The _SRBEX_DATA_POWER structure (storport.h) contains the request data for an extended power SCSI Request Block (SRB).
SRBEX_DATA_SCSI_CDB_VAR

The _SRBEX_DATA_SCSI_CDB_VAR structure (storport.h) contains the extended SRB data for a variable length SCSI command data block (CDB).
SRBEX_DATA_SCSI_CDB16

The _SRBEX_DATA_SCSI_CDB16 structure (storport.h) contains the extended SRB data for a 16-byte SCSI command data block (CDB).
SRBEX_DATA_SCSI_CDB32

The _SRBEX_DATA_SCSI_CDB32 structure (storport.h) contains the extended SRB data for a 32-byte SCSI command data block (CDB).
SRBEX_DATA_WMI

The _SRBEX_DATA_WMI structure (storport.h) contains the request data for an extended WMI SCSI Request Block (SRB).
ST_PARAMETER_DATA

The ST_PARAMETER_DATA structure (storport.h) contains the parameter list for the set timestamp command.
STARTIO_PERFORMANCE_PARAMETERS

The STARTIO_PERFORMANCE_PARAMETERS structure describes the performance parameters that are returned to the miniport driver by the StorPortGetStartIoPerfParams routine.
STOR_ADAPTER_CONTROL_POWER

STOR_ADAPTER_CONTROL_POWER is the structure pointed to by the Parameters parameter when a miniport's HwStorAdapterControl routine is called with a ControlType of ScsiAdapterPower.
STOR_ADDR_BTL8

The _STOR_ADDR_BTL8 structure (storport.h) contains the addressing information for an 8-bit Bus-Target-LUN (BTL8) address.
STOR_ADDRESS

The _STOR_ADDRESS structure (storport.h) contains general information that describes a storage device address.
STOR_CRYPTO_CAPABILITIES_DATA

Microsoft reserves the STOR_CRYPTO_CAPABILITIES_DATA structure for internal use only. Don't use this structure in your code.
STOR_CRYPTO_CAPABILITY

Microsoft reserves the STOR_CRYPTO_CAPABILITY structure for internal use only. Don't use this structure in your code.
STOR_CRYPTO_KEY_INFO

Microsoft reserves the STOR_CRYPTO_KEY_INFO structure for internal use only. Don't use this structure in your code.
STOR_CRYPTO_OPERATION

Microsoft reserves the STOR_CRYPTO_OPERATION structure for internal use only. Don't use this structure in your code.
STOR_CRYPTO_OPERATION_INSERT_KEY

Microsoft reserves the STOR_CRYPTO_OPERATION_INSERT_KEY structure for internal use only. Don't use this structure in your code.
STOR_DEVICE_CAPABILITIES

The _STOR_DEVICE_CAPABILITIES structure (storport.h) contains device capabilities information relevant to storage devices.
STOR_DEVICE_CAPABILITIES_EX

The _STOR_DEVICE_CAPABILITIES_EX structure (storport.h) contains extended device capabilities information relevant to storage devices.
STOR_DISPATCHER_HEADER

The STOR_DISPATCHER_HEADER structure is an opaque structure that describes a dispatcher object.
STOR_DPC

The STOR_DPC structure is an opaque structure that represents a DPC object. Do not set the members of this structure directly.
STOR_DPC_WATCHDOG_INFORMATION

STOR_DPC_WATCHDOG_INFORMATION holds time-out information about the current deferred procedure call (DPC).
STOR_DRIVER_PROXY_ENDPOINT_INFORMATION

Learn more about the STOR_DRIVER_PROXY_ENDPOINT_INFORMATION structure.
STOR_EVENT

The STOR_EVENT structure describes an event object.
STOR_FILTER_RESOURCE_REQUIREMENTS

STOR_FILTER_RESOURCE_REQUIREMENTS is the structure pointed to by the Parameters parameter when a miniport's HwStorAdapterControl routine is called with a ControlType of ScsiAdapterFilterResourceRequirements.
STOR_FRU_ID_DESCRIPTION

STOR_FRU_ID_DESCRIPTION is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitQueryFruId or HwStorAdapterControl routine is called with a ControlType of ScsiAdapterQueryFruId.
STOR_GROUP_AFFINITY

The STOR_GROUP_AFFINITY structure specifies a group number and the processor affinity within that group.
STOR_LIST_ENTRY

A STOR_LIST_ENTRY structure describes an entry in a doubly linked list or serves as the header for such a list.
STOR_LOG_EVENT_DETAILS

The STOR_LOG_EVENT_DETAILS structure provides details pertaining to Storport-specific error log events and system log events.
STOR_MAX_OPERATIONAL_POWER

STOR_MAX_OPERATIONAL_POWER is the structure pointed to by the Parameters parameter when a miniport's HwStorAdapterControl routine is called with a ControlType of ScsiAdapterPoFxMaxOperationalPower.
STOR_POFX_ACTIVE_CONTEXT

STOR_POFX_ACTIVE_CONTEXT is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitPoFxPowerActive or a miniport's HwStorAdapterControl routine is called with a ControlType of ScsiAdapterPoFxPowerActive.
STOR_POFX_COMPONENT

The STOR_POFX_COMPONENT structure describes the power state attributes of a storage device component.
STOR_POFX_COMPONENT_IDLE_STATE

The STOR_POFX_COMPONENT_IDLE_STATE structure specifies the attributes of a functional power state (F-state) of a component in a storage device.
STOR_POFX_COMPONENT_V2

The STOR_POFX_COMPONENT_V2 structure describes the power state attributes of a storage device component.
STOR_POFX_DEVICE

The STOR_POFX_DEVICE structure describes the power attributes of a storage device to the power management framework (PoFx).
STOR_POFX_DEVICE_V2

The STOR_POFX_DEVICE_V2 structure describes the power attributes of a storage device to the power management framework (PoFx).
STOR_POFX_DEVICE_V3

The STOR_POFX_DEVICE_V3 structure describes the power attributes of a storage device to the power management framework (PoFx).
STOR_POFX_FSTATE_CONTEXT

STOR_POFX_FSTATE_CONTEXT is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitPoFxPowerSetFState or HwStorAdapterControl routine is called with a ControlType of ScsiAdapterPoFxPowerSetFState.
STOR_POFX_PERF_STATE_CONTEXT

STOR_POFX_PERF_STATE_CONTEXT is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitPoFxPowerSetFState or HwStorAdapterControl routine is called with a ControlType of ScsiAdapterPoFxSetPerfState.
STOR_POFX_POWER_CONTROL

STOR_POFX_POWER_CONTROL is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitPoFxPowerControl or HwStorAdapterControl routine is called with a ControlType of ScsiAdapterPoFxPowerControl.
STOR_POFX_POWER_REQUIRED_CONTEXT

STOR_POFX_POWER_REQUIRED_CONTEXT is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitPoFxPowerRequired.
STOR_POFX_UNIT_POWER_INFO

STOR_POFX_UNIT_POWER_INFO is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitPoFxPowerInfo.
STOR_POWER_CONTROL_HEADER

STOR_POWER_CONTROL_HEADER is a common power control header for both adapter and unit power-related control parameters.
STOR_POWER_SETTING_INFO

STOR_POWER_SETTING_INFO is the structure pointed to by the Parameters parameter when a miniport's HwStorAdapterControl routine is called with a ControlType of ScsiPowerSettingNotification.
STOR_REQUEST_INFO_V1

The _STOR_REQUEST_INFO_V1 structure contains details about the storage driver IO request associated with a SCSI request block (SRB). _STOR_REQUEST_INFO_V1 is returned by the StorPortGetRequestInfo routine.
STOR_RESET_BUS_SYNCHRONOUS_PARAMETER

Learn more about the STOR_RESET_BUS_SYNCHRONOUS_PARAMETER structure.
STOR_RICH_DEVICE_DESCRIPTION

The STOR_RICH_DEVICE_DESCRIPTION structure describes the attributes of the physical device for which a driver is requesting a DMA (direct memory access) adapter.
STOR_SCATTER_GATHER_ELEMENT

The STOR_SCATTER_GATHER_ELEMENT structure is used with STOR_SCATTER_GATHER_LIST to build a list of scatter/gather elements.
STOR_SCATTER_GATHER_LIST

The STOR_SCATTER_GATHER_LIST structure is used in conjunction with the StorPortGetScatterGatherList routine to retrieve the scatter/gather list for a SCSI request block (SRB).
STOR_SERIAL_NUMBER

STOR_SERIAL_NUMBER is the structure pointed to by the Parameters parameter when a miniport's HwStorAdapterControl routine is called with a ControlType of ScsiAdapterSerialNumber.
STOR_SET_EVENT_LOGGING

STOR_SET_EVENT_LOGGING is the structure pointed to by the Parameters parameter when a miniport's HwStorAdapterControl routine is called with a ControlType of ScsiAdapterSetEventLogging.
STOR_SYSTEM_POWER_HINTS

STOR_SYSTEM_POWER_HINTS is the structure pointed to by the Parameters parameter when a miniport's HwStorAdapterControl routine is called with a ControlType of ScsiAdapterSystemPowerHints.
STOR_UC_DEVICE_USAGE

STOR_UC_DEVICE_USAGE is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitUsage.
STOR_UNIT_ATTRIBUTES

Learn more about the STOR_UNIT_ATTRIBUTES structure.
STOR_UNIT_CONTROL_POWER

STOR_UNIT_CONTROL_POWER is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitPower.
STOR_UNIT_CONTROL_QUERY_BUS_TYPE

STOR_UNIT_CONTROL_QUERY_BUS_TYPE is the structure pointed to by the Parameters parameter when a miniport's HwStorUnitControl routine is called with a ControlType of ScsiUnitQueryBusType.
STORAGE_REQUEST_BLOCK

The _STORAGE_REQUEST_BLOCK structure (storport.h) describes the extended format of a SCSI Request Block (SRB).
STORPORT_CAPTURE_LIVEDUMP

The STORPORT_CAPTURE_LIVEDUMP structure contains the data needed to generate a live dump.
STORPORT_LIVEDUMP_DEVICE_TELEMETRY_LOG

STORPORT_LIVEDUMP_DEVICE_TELEMETRY_LOG contains the payload for a live dump captured by StorPortCaptureLiveDump.
STORPORT_TELEMETRY_EVENT

The STORPORT_TELEMETRY_EVENT structure describes the miniport telemetry data payload.
T2_COMMAND_DURATION_LIMIT_DESCRIPTOR

Learn more about the T2_COMMAND_DURATION_LIMIT_DESCRIPTOR (storport.h) structure.
TRACK_INFORMATION2

The _TRACK_INFORMATION2 structure (storport.h) contains detailed track information, including location, size, and data mode.
VIRTUAL_HW_INITIALIZATION_DATA

The VIRTUAL_HW_INITIALIZATION_DATA structure contains information particular to each virtual miniport driver.
VPD_EXTENDED_INQUIRY_DATA_PAGE

Learn more about: _VPD_EXTENDED_INQUIRY_DATA_PAGE structure (storport.h)
VPD_THIRD_PARTY_COPY_PAGE

The _VPD_THIRD_PARTY_COPY_PAGE structure (storport.h) defines the vital product data (VPD) page for offload data transfer operations.
VPD_ZONED_BLOCK_DEVICE_CHARACTERISTICS_PAGE

Microsoft reserves the VPD_ZONED_BLOCK_DEVICE_CHARACTERISTICS_PAGE structure for internal use only. Don't use the VPD_ZONED_BLOCK_DEVICE_CHARACTERISTICS_PAGE structure in your code.
WINDOWS_BLOCK_DEVICE_TOKEN_LIMITS_DESCRIPTOR

The _WINDOWS_BLOCK_DEVICE_TOKEN_LIMITS_DESCRIPTOR structure (storport.h) defines the third party copy descriptor for Windows systems.
WRITE_USING_TOKEN_HEADER

The WRITE_USING_TOKEN_HEADER structure (storport.h) describes the destination data locations for an offload write data operation.
ZONE_DESCRIPTIOR

Microsoft reserves the ZONE_DESCRIPTIOR structure for internal use only. Don't use the ZONE_DESCRIPTIOR structure in your code.

Enumerations

 
INTERRUPT_SYNCHRONIZATION_MODE

The INTERRUPT_SYNCHRONIZATION_MODE enumerator specifies the interrupt synchronization mode.
RAID_SYSTEM_POWER

RAID_SYSTEM_POWER is a system power usage indicator.
SCSI_ADAPTER_CONTROL_TYPE

The SCSI_ADAPTER_CONTROL_TYPE enumeration contains adapter control operations, where each control type initiates an action on an adapter by the miniport driver. Storport specifies the control type when it calls a miniport's HwStorAdapterControl routine.
SCSI_UC_DEVICE_USAGE_TYPE

SCSI_UC_DEVICE_USAGE_TYPE specifies the device usage type from a PnP device usage notification.
SCSI_UNIT_CONTROL_TYPE

The SCSI_UNIT_CONTROL_TYPE enumeration contains unit control operations, where each control type initiates an action on a unit by the miniport driver. Storport specifies the control type when it calls a miniport's HwStorUnitControl routine.
SES_DOWNLOAD_MICROCODE_STATE

Learn more about: _SES_DOWNLOAD_MICROCODE_STATE enumeration (storport.h)
SRBEX_DATA_NVME_COMMAND_FLAG

The SRBEX_DATA_NVME_COMMAND_FLAG (storport.h) enumeration contains values that indicate the properties of a particular SRBEX Data NVMe command.
SRBEX_DATA_NVME_COMMAND_TYPE

The SRBEX_DATA_NVME_COMMAND_TYPE (storport.h) contains values that indicate the SRBEX Data NVMe command types.
SRBEX_DATA_NVME_RESPONSE_FLAG

Learn more about the SRBEX_DATA_NVME_RESPONSE_FLAG enumeration.
STOR_CRYPTO_ALGORITHM_ID

Microsoft reserves the STOR_CRYPTO_ALGORITHM_ID enumeration for internal use only. Don't use this enumeration in your code.
STOR_CRYPTO_KEY_SIZE

Microsoft reserves the STOR_CRYPTO_KEY_SIZE enumeration for internal use only. Don't use this enumeration in your code.
STOR_CRYPTO_OPERATION_TYPE

Microsoft reserves the STOR_CRYPTO_OPERATION_TYPE enumeration for internal use only. Don't use this enumeration in your code.
STOR_DEVICE_POWER_STATE

The STOR_DEVICE_POWER_STATE enumerator specifies a storage device power state.
STOR_DEVICE_RESET_TYPE

The STOR_DEVICE_RESET_TYPE enum specifies the type of device reset being requested in a call to StorPortHardwareReset.
STOR_EVENT_ASSOCIATION_ENUM

The STOR_EVENT_ASSOCIATION_ENUM enumerator specifies the type of device that is associated with an event.
STOR_EVENT_TYPE

The STOR_EVENT_TYPE enum identifies the type of event object initialized by a miniport.
STOR_PNP_ACTION

Learn more about the STOR_PNP_ACTION enumeration.
STOR_POWER_ACTION

The STOR_POWER_ACTION enumeration identifies the system power actions that can occur on a computer.
STOR_SPINLOCK

Learn more about the STOR_SPINLOCK enumeration.
STOR_TELEMETRY_CATEGORY

The STOR_TELEMETRY_CATEGORY enumerator indicates the category of the telemetry event being logged in StorPortLogTelemetryEx.
STOR_THREAD_PRIORITY

STOR_THREAD_PRIORITY specifies the priority for a StorPort miniport-created thread.
STORPORT_CAPTURE_LIVEDUMP_TYPE

STORPORT_CAPTURE_LIVEDUMP_TYPE identifies the type of live dump to capture.
STORPORT_ETW_EVENT_CHANNEL

STORPORT_ETW_EVENT_CHANNEL identifies the event channels of Storport to which miniport can log an event.
STORPORT_ETW_EVENT_OPCODE

Learn more about the STORPORT_ETW_EVENT_OPCODE enumeration.
STORPORT_ETW_LEVEL

Learn more about the STORPORT_ETW_LEVEL enumeration.
STORPORT_FEATURE_TYPE

The STORPORT_FEATURE_TYPE enum identifies a Storport feature supported by a miniport.
STORPORT_LIVEDUMP_DATA_TYPE

STORPORT_LIVEDUMP_DATA_TYPE identifies the data type of the payload to be included in the live dump.
STORPORT_LIVEDUMP_ISSUE_TYPE

STORPORT_LIVEDUMP_ISSUE_TYPE identifies the issue that triggered the live dump capture.
STORPORT_QUERY_CONFIGURATION_TYPE

The STORPORT_QUERY_CONFIGURATION_TYPE enumerator identifies the configuration being queried in StorPortQueryConfiguration.