Compartilhar via


Função ScsiPortSetBusDataByOffset (srb.h)

A rotina ScsiPortSetBusDataByOffset define dados de configuração de barramento para um adaptador em um barramento de E/S configurável dinamicamente com uma interface padrão publicada.

Nota Os modelos de driver de porta SCSI e driver de miniporto SCSI podem ser alterados ou indisponíveis no futuro. Em vez disso, recomendamos usar os modelos de driver do Storport e do driver de miniporto storport .
 

Sintaxe

SCSIPORT_API ULONG ScsiPortSetBusDataByOffset(
  [in] PVOID DeviceExtension,
  [in] ULONG BusDataType,
  [in] ULONG SystemIoBusNumber,
  [in] ULONG SlotNumber,
  [in] PVOID Buffer,
  [in] ULONG Offset,
  [in] ULONG Length
);

Parâmetros

[in] DeviceExtension

Ponteiro para a extensão de dispositivo do driver de miniport.

[in] BusDataType

Contém um valor do tipo BUS_DATA_TYPE que especifica o tipo de dados de barramento a serem definidos. Atualmente, seu valor pode ser PCIConfiguration. No entanto, tipos adicionais de barramentos padronizados e configuráveis dinamicamente terão suporte no futuro. O limite superior nos tipos de barramento com suporte é sempre MaximumBusDataType.

[in] SystemIoBusNumber

Especifica o número atribuído pelo sistema do barramento de E/S no qual o HBA está conectado. A rotina HwScsiFindAdapter do driver de miniport obtém esse valor da entrada PORT_CONFIGURATION_INFORMATION membro SystemIoBusNumber .

[in] SlotNumber

Especifica o número de slot lógico do HBA.

Quando PCIConfiguration é especificado como BusDataType, esse parâmetro deve ser especificado como um valor de tipo PCI_SLOT_NUMBER.

[in] Buffer

Ponteiro para uma área de armazenamento fornecida pelo chamador com informações de configuração específicas de BusDataType.

Quando PCIConfiguration é especificado, o buffer contém algumas ou todas as informações de PCI_COMMON_CONFIG para o SlotNumber fornecido. O Deslocamento e o Comprimento especificados determinam quantas informações são fornecidas.

[in] Offset

Especifica o deslocamento de bytes dentro da estrutura PCI_COMMON_CONFIG na qual os valores de configuração fornecidos pelo chamador começam. Um driver de miniporte pode usar PCI_COMMON_HDR_LENGTH para especificar o deslocamento da área específica do dispositivo em PCI_COMMON_CONFIG.

[in] Length

Especifica o número de bytes na área de armazenamento em Buffer.

Retornar valor

ScsiPortSetBusDataByOffset retorna o número de bytes de dados definidos com êxito para o SlotNumber especificado. Se o BusDataType fornecido não for válido para a plataforma atual ou se as informações fornecidas forem inválidas, ScsiPortSetBusDataByOffset retornará zero.

Comentários

Os motoristas de miniport de HBAs em um ônibus PCI raramente chamam ScsiPortSetBusDataByOffset , a menos que circunstâncias incomuns ou a natureza do HBA de um determinado motorista exija tal chamada. Por exemplo, um driver de miniporto pode chamar ScsiPortSetBusDataByOffset para limpar um pouco no registro de status PCI se o HBA sinalizar uma anulação de destino durante a inicialização ou definir dados de configuração específicos do dispositivo para o HBA.

ScsiPortSetBusDataByOffset só pode ser chamado da rotina HwScsiFindAdapter do driver de miniport ou de HwScsiAdapterControl quando o tipo de controle é ScsiSetRunningConfig.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho srb.h (inclua Miniport.h, Scsi.h)
Biblioteca Scsiport.lib

Confira também

HalSetBusDataByOffset

HwScsiFindAdapter

PCI_COMMON_CONFIG

PCI_SLOT_NUMBER

PORT_CONFIGURATION_INFORMATION (SCSI)

ScsiPortGetBusData