Функция ScsiPortSetBusDataByOffset (srb.h)

Подпрограмма ScsiPortSetBusDataByOffset задает данные конфигурации шины для адаптера в динамически настраиваемой шине ввода-вывода с помощью опубликованного стандартного интерфейса.

Примечание Модели драйверов портов SCSI и драйверов мини-портов SCSI могут быть изменены или недоступны в будущем. Вместо этого рекомендуется использовать модели драйверов Storport и драйверов для мини-портов Storport .
 

Синтаксис

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
);

Параметры

[in] DeviceExtension

Указатель на расширение устройства драйвера мини-порта.

[in] BusDataType

Содержит значение типа BUS_DATA_TYPE , указывающее тип задаемых данных шины. В настоящее время его значение может быть PCIConfiguration. Однако в будущем будут поддерживаться дополнительные типы стандартизированных динамически настраиваемых автобусов. Верхняя граница поддерживаемых типов шины всегда — MaximumBusDataType.

[in] SystemIoBusNumber

Указывает назначенный системой номер шины ввода-вывода, к которой подключен адаптер HBA. Подпрограмма HwScsiFindAdapter драйвера мини-порта получает это значение из входного PORT_CONFIGURATION_INFORMATION члена SystemIoBusNumber .

[in] SlotNumber

Указывает номер логического слота адаптера HBA.

Если pciConfiguration указан как BusDataType, этот параметр должен быть указан как значение типа PCI_SLOT_NUMBER.

[in] Buffer

Указатель на область хранения, предоставляемую вызывающим абонентом, со сведениями о конфигурации, характерными для BusDataType.

Если указан параметр PCIConfiguration , буфер содержит некоторые или все сведения о PCI_COMMON_CONFIG для заданного slotNumber. Указанные значения Offset и Length определяют объем предоставленных сведений.

[in] Offset

Задает смещение байтов в структуре PCI_COMMON_CONFIG, с которой начинаются значения конфигурации, предоставленные вызывающей стороны. Драйвер мини-порта может использовать PCI_COMMON_HDR_LENGTH для указания смещения области устройства в PCI_COMMON_CONFIG.

[in] Length

Указывает количество байтов в области хранения в буфере.

Возвращаемое значение

ScsiPortSetBusDataByOffset возвращает количество байтов данных, успешно заданных для заданного SlotNumber. Если указанный тип BusDataType не является допустимым для текущей платформы или предоставленные сведения недопустимы, ScsiPortSetBusDataByOffset возвращает ноль.

Комментарии

Драйверы минипортов HBA на шине PCI редко вызывают ScsiPortSetBusDataByOffset , если такие вызовы не требуются в необычных обстоятельствах или характере HBA конкретного водителя. Например, драйвер мини-порта может вызвать ScsiPortSetBusDataByOffset , чтобы очистить немного в регистре состояния PCI, если его адаптер HBA сигнализирует о прерывании целевого объекта во время инициализации или задать данные конфигурации для конкретного устройства для HBA.

ScsiPortSetBusDataByOffset можно вызывать только из подпрограммы HwScsiFindAdapter драйвера miniport или из HwScsiAdapterControl, если тип элемента управления — ScsiSetRunningConfig.

Требования

Требование Значение
Целевая платформа Персональный компьютер
Верхняя часть srb.h (включая Miniport.h, Scsi.h)
Библиотека Scsiport.lib

См. также раздел

HalSetBusDataByOffset

HwScsiFindAdapter

PCI_COMMON_CONFIG

PCI_SLOT_NUMBER

PORT_CONFIGURATION_INFORMATION (SCSI)

ScsiPortGetBusData