enumeração SCSI_UNIT_CONTROL_TYPE (storport.h)

A enumeração SCSI_UNIT_CONTROL_TYPE contém operações de controle de unidade, em que cada tipo de controle inicia uma ação em uma unidade pelo driver de miniporte. O Storport especifica o tipo de controle quando chama a rotina HwStorUnitControl de um miniporto.

Syntax

typedef enum _SCSI_UNIT_CONTROL_TYPE {
  ScsiQuerySupportedUnitControlTypes,
  ScsiUnitUsage,
  ScsiUnitStart,
  ScsiUnitPower,
  ScsiUnitPoFxPowerInfo,
  ScsiUnitPoFxPowerRequired,
  ScsiUnitPoFxPowerActive,
  ScsiUnitPoFxPowerSetFState,
  ScsiUnitPoFxPowerControl,
  ScsiUnitRemove,
  ScsiUnitSurpriseRemoval,
  ScsiUnitRichDescription,
  ScsiUnitQueryBusType,
  ScsiUnitQueryFruId,
  ScsiUnitReportInternalData,
  ScsiUnitControlMax,
  MakeUnitControlTypeSizeOfUlong
} SCSI_UNIT_CONTROL_TYPE, *PSCSI_UNIT_CONTROL_TYPE;

Constantes

 
ScsiQuerySupportedUnitControlTypes
Relata as operações de controle de unidade implementadas pelo driver de miniport. Um miniporto deve dar suporte a esse tipo de controle.

O driver storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura SCSI_SUPPORTED_CONTROL_TYPE_LIST depois que o HBA foi inicializado, mas antes da primeira E/S.

O driver de miniporto preenche a estrutura SCSI_SUPPORTED_CONTROL_TYPE_LIST com as operações compatíveis. Depois que HwStorUnitControl retornar dessa chamada, o driver storport chamará hwStorUnitControl do driver de miniport somente para operações com suporte no miniporto.
ScsiUnitUsage
Notifica o miniporto se a unidade lógica é usada para qualquer tipo de uso com suporte. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura STOR_UC_DEVICE_USAGE . O Storport chamará HwStorUnitControl separadamente para cada tipo de uso com suporte.
ScsiUnitStart
Notifica o miniporto para iniciar um dispositivo de unidade. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para o endereço STOR_ADDR_BTL8 da unidade a ser iniciada.
ScsiUnitPower
Relata os estados de ligar ou desligar a unidade. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura STOR_UNIT_CONTROL_POWER . Se o miniporto der suporte a esse tipo de controle, ele não receberá um bloco de solicitação de armazenamento com SRB_FUNCTION_POWER.
ScsiUnitPoFxPowerInfo
Notifica o miniporto se o gerenciamento de energia ocioso estiver habilitado ou desabilitado no componente de unidade. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura STOR_POFX_UNIT_POWER_INFO . O miniporto deverá chamar StorPortInitializePoFxPower dentro desse controle de unidade se o gerenciamento de energia ocioso estiver habilitado e se ele der suporte ao gerenciamento de energia de runtime para o dispositivo de unidade.
ScsiUnitPoFxPowerRequired
Notifica o miniporto se a energia é necessária para o componente de unidade. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estruturade STOR_POFX_POWER_REQUIRED_CONTEXT .
ScsiUnitPoFxPowerActive
Notifica o miniporto de que o componente de unidade está ativo ou ocioso. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura STOR_POFX_ACTIVE_CONTEXT .
ScsiUnitPoFxPowerSetFState
Notifica o miniporto para definir o componente de unidade para o estado de energia funcional especificado (estado F). Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura STOR_POFX_FSTATE_CONTEXT . O miniporto deverá dar suporte a esse tipo de controle se for especificado mais de um estado F na chamada para StorPortInitializePoFxPower.
ScsiUnitPoFxPowerControl
Solicita que o miniporto execute uma operação de controle de energia privada iniciada para a unidade por um PEP (plug-in do power engine). Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura STOR_POFX_POWER_CONTROL .
ScsiUnitRemove
Notifica o miniporto de que a unidade foi removida. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para o endereço STOR_ADDR_BTL8 da unidade que foi removida.
ScsiUnitSurpriseRemoval
Notifica o miniporto de que a unidade foi removida de surpresa. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para o endereço STOR_ADDR_BTL8 da unidade que foi removida de surpresa.
ScsiUnitRichDescription
O miniporto poderá optar por dar suporte a isso se o dispositivo relatar uma ID de fornecedor mais longa, um número de modelo ou uma revisão de firmware do que é definido na especificação SCSI. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura de STOR_RICH_DEVICE_DESCRIPTION .
ScsiUnitQueryBusType
Consulta se o miniporto deseja especificar um tipo de barramento para uma determinada unidade lógica (LUN). Normalmente, o tipo de barramento de um LUN e o controlador têm o mesmo tipo de barramento, mas nem sempre. Storport chama HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura de STOR_UNIT_CONTROL_QUERY_BUS_TYPE . Disponível em Windows 10 versão 2004 e posterior.

OBSERVAÇÃO

No Windows 10 versão 21H1 e posterior, o Storport enviará esse controle somente se um miniporto também tiver chamado StorPortSetFeatureList anteriormente em sua rotina HwFindAdapter com StorportFeatureBusTypeUnitControl especificado.

ScsiUnitQueryFruId
Consulta a ID de uma FRU (unidade de substituição de falha). Se o miniporto der suporte a esse tipo de controle, o Storport chamará HwStorUnitControl com esse tipo de controle e Parâmetros apontando para uma estrutura de STOR_FRU_ID_DESCRIPTION . Disponível em Windows 10 versão 21H1 e posterior.

OBSERVAÇÃO

O Storport enviará esse controle somente se um miniporto também tiver chamado StorPortSetFeatureList em sua rotina HwFindAdapter com StorportFeatureFruIdUnitControl especificado.

ScsiUnitReportInternalData
Reservado para uso do sistema. Disponível a partir de Windows 11, versão 22H2.
ScsiUnitControlMax
Valor máximo do tipo de controle.
MakeUnitControlTypeSizeOfUlong
Faz dessa enumeração o tamanho de um ULONG.

Comentários

Um miniporto relata quais tipos de controle ele dá suporte quando o Storport chama a rotina HwStorUnitControl do miniport com um tipo de controle ScsiQuerySupportedControlTypes. Para esses tipos de controle compatíveis com o miniporto, o Storport chama HwStorUnitControl com um valor SCSI_UNIT_CONTROL_TYPE que especifica a operação de controle de unidade a ser executada pelo miniporto.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8
Cabeçalho storport.h

Confira também

HwStorUnitControl