Compartilhar via


Função ScsiPortIoMapTransfer (srb.h)

A rotina ScsiPortIoMapTransfer configura o controlador DMA do sistema para um driver de miniporto transferir dados por meio de um HBA subordinado.

Observação o driver de porta SCSI e os modelos de driver de miniporto SCSI podem estar alterados ou indisponíveis no futuro. Em vez disso, recomendamos usar o de driver do Storport e miniporto storport modelos de driver.
 

Sintaxe

SCSIPORT_API VOID ScsiPortIoMapTransfer(
  [in] PVOID               HwDeviceExtension,
  [in] PSCSI_REQUEST_BLOCK Srb,
  [in] PVOID               LogicalAddress,
  [in] ULONG               Length
);

Parâmetros

[in] HwDeviceExtension

Ponteiro para a extensão do dispositivo de hardware. Essa é uma área de armazenamento por HBA que o driver de porta aloca e inicializa em nome do driver de miniporto. Os drivers de miniporto geralmente armazenam informações específicas do HBA nessa extensão, como o estado do HBA e os intervalos de acesso mapeados do HBA. Essa área está disponível para o driver de miniporto no DeviceExtension->HwDeviceExtension membro do objeto de dispositivo do HBA imediatamente após o driver de miniporto chamar ScsiPortInitialize. O driver de porta libera essa memória quando remove o dispositivo.

[in] Srb

Ponteiro para o bloco de solicitação SCSI para a transferência de DMA.

[in] LogicalAddress

Especifica o endereço inicial da operação de transferência. Esse valor pode ser o endereço base de um buffer para o qual ou a partir do qual os dados devem ser transferidos. Esse valor pode ser um deslocamento dentro desse buffer.

[in] Length

Especifica o número de bytes a serem transferidos.

Valor de retorno

Nenhum

Observações

Somente drivers de miniport de HBAs que usam uma chamada de controlador DMA do sistema (DMA subordinada) ScsiPortIoMapTransfer. Essa rotina deve ser chamada antes que um driver de miniporto configure seu HBA para transferir dados. O intervalo especificado pelo LogicalAddress e Length deve estar dentro do buffer descrito pelo SRB fornecido.

Depois que o driver de porta específico do sistema operacional programa o controlador DMA do sistema, ele chama a rotina de HwScsiDmaStarted do driver de miniport. HwScsiDmaStarted deve programar o HBA para iniciar a transferência de dados. Observe que um HBA pode interromper entre a chamada do driver de miniporto para ScsiPortIoMapTransfer e a chamada do driver de porta específico do sistema operacional para a rotina de do driver de miniporto HwScsiDmaStarted.

Requisitos

Requisito Valor
da Plataforma de Destino Área de trabalho
cabeçalho srb.h (inclua Miniport.h, Scsi.h)
biblioteca Scsiport.lib

Consulte também

HwScsiDmaStarted

ScsiPortFlushDma