SCSI_UNIT_CONTROL_TYPE枚举 (storport.h)
SCSI_UNIT_CONTROL_TYPE枚举包含单元控制操作,其中每个控件类型通过微型端口驱动程序启动对单元的操作。 Storport 在调用微型端口的 HwStorUnitControl 例程时指定控件类型。
语法
typedef enum _SCSI_UNIT_CONTROL_TYPE {
ScsiQuerySupportedUnitControlTypes,
ScsiUnitUsage,
ScsiUnitStart,
ScsiUnitPower,
ScsiUnitPoFxPowerInfo,
ScsiUnitPoFxPowerRequired,
ScsiUnitPoFxPowerActive,
ScsiUnitPoFxPowerSetFState,
ScsiUnitPoFxPowerControl,
ScsiUnitRemove,
ScsiUnitSurpriseRemoval,
ScsiUnitRichDescription,
ScsiUnitQueryBusType,
ScsiUnitQueryFruId,
ScsiUnitReportInternalData,
ScsiUnitKsrPowerDown,
ScsiUnitControlMax,
MakeUnitControlTypeSizeOfUlong
} SCSI_UNIT_CONTROL_TYPE, *PSCSI_UNIT_CONTROL_TYPE;
常量
ScsiQuerySupportedUnitControlTypes 报告微型端口驱动程序实现的单元控制操作。 微型端口必须支持此控件类型。 Storport 驱动程序使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 在 HBA 已初始化之后,但在第一个 I/O 之前指向 SCSI_SUPPORTED_CONTROL_TYPE_LIST 结构。 微型端口驱动程序使用它支持的操作填充 SCSI_SUPPORTED_CONTROL_TYPE_LIST 结构。 HwStorUnitControl 从此调用返回后,Storport 驱动程序仅为微型端口支持的操作调用微型端口驱动程序的 HwStorUnitControl。 |
ScsiUnitUsage 通知微型端口逻辑单元是否用于任何受支持的使用类型。 Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 指向 STOR_UC_DEVICE_USAGE 结构。 Storport 将针对支持的每种使用类型单独调用 HwStorUnitControl 。 |
ScsiUnitStart 通知微型端口启动单元设备。 Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 指向要启动的单元 STOR_ADDR_BTL8 地址。 |
ScsiUnitPower 报告设备开机或关机状态。 Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 指向 STOR_UNIT_CONTROL_POWER 结构。 如果微型端口支持此控件类型,则它不会收到包含SRB_FUNCTION_POWER的存储请求块。 |
ScsiUnitPoFxPowerInfo 在单元组件上启用或禁用空闲电源管理时,通知微型端口。 Storport 使用此控件类型调用 HwStorUnitControl , 参数 指向 STOR_POFX_UNIT_POWER_INFO 结构。 如果启用了空闲电源管理,并且它是否支持对单元设备的运行时电源管理,微型端口应在此单元中调用 StorPortInitializePoFxPower 控件。 |
ScsiUnitPoFxPowerRequired 通知微型端口单元组件是否需要电源。 Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 指向STOR_POFX_POWER_REQUIRED_CONTEXT 结构。 |
ScsiUnitPoFxPowerActive 通知微型端口单元组件处于活动状态或处于空闲状态。 Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 类型指向 STOR_POFX_ACTIVE_CONTEXT 结构。 |
ScsiUnitPoFxPowerSetFState 通知微型端口将单元组件设置为给定的功能电源状态 (F 状态) 。 Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 指向 STOR_POFX_FSTATE_CONTEXT 结构。 如果 在调用 StorPortInitializePoFxPower 时指定了多个 F 状态,则微型端口必须支持此控件类型。 |
ScsiUnitPoFxPowerControl 请求微型端口执行由电源引擎插件为单元启动的专用电源控制操作, (PEP) 。 Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 指向 STOR_POFX_POWER_CONTROL 结构。 |
ScsiUnitRemove 通知微型端口该单元已被删除。 Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 指向已删除的单元 的STOR_ADDR_BTL8 地址。 |
ScsiUnitSurpriseRemoval 通知微型端口该单元已被意外移除。 Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 指向意外删除的单元 的STOR_ADDR_BTL8 地址。 |
ScsiUnitRichDescription 如果设备报告的供应商 ID、型号或固件修订比 SCSI 规范中定义的更长,微型端口可以选择支持此功能。Storport 使用此控件类型和参数调用 HwStorUnitControl ,这些 控件 指向 STOR_RICH_DEVICE_DESCRIPTION 结构。 |
ScsiUnitQueryBusType 查询微型端口是否要为给定逻辑单元指定总线类型, (LUN) 。 通常,LUN 和控制器的总线类型具有相同的总线类型,但并非总是如此。 Storport 使用此控件类型调用 HwStorUnitControl , 参数 指向 STOR_UNIT_CONTROL_QUERY_BUS_TYPE 结构。 在 Windows 10 版本 2004 及更高版本中可用。 注意 在 Windows 10版本 21H1 及更高版本中,仅当微型端口之前在其 HwFindAdapter 例程中也调用 StorPortSetFeatureList 并指定 StorportFeatureBusTypeUnitControl 时,Storport 才会发送此控件。 |
ScsiUnitQueryFruId (FRU) 查询故障更换单元的 ID。 如果微型端口支持此控件类型,Storport 会使用此控件类型调用 HwStorUnitControl , 参数 指向 STOR_FRU_ID_DESCRIPTION 结构。 在 Windows 10 版本 21H1 及更高版本中可用。 注意 仅当微型端口之前在其 HwFindAdapter 例程中也调用 StorPortSetFeatureList 并指定 StorportFeatureFruIdUnitControl 时,Storport 才会发送此控件。 |
ScsiUnitReportInternalData 预留给系统使用。 从 Windows 11 版本 22H2 开始可用。 |
ScsiUnitKsrPowerDown 保留以供内部使用。 请勿使用。 |
ScsiUnitControlMax 最大控件类型值。 |
MakeUnitControlTypeSizeOfUlong 使此枚举成为 ULONG 的大小。 |
注解
微型端口报告当 Storport 使用控件类型为 ScsiQuerySupportedControlTypes 调用微型端口的 HwStorUnitControl 例程时,它支持哪些控件类型。 对于微型端口支持的控件类型,Storport 使用SCSI_UNIT_CONTROL_TYPE值调用 HwStorUnitControl,该值指定要由微型端口执行的单元控制操作。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 8 |
标头 | storport.h |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈