Функция StorPortGetBusData (storport.h)

Подпрограмма StorPortGetBusData извлекает сведения о конфигурации шины, необходимые для инициализации HBA.

Синтаксис

STORPORT_API ULONG StorPortGetBusData(
  [in]      PVOID DeviceExtension,
  [in]      ULONG BusDataType,
  [in]      ULONG SystemIoBusNumber,
  [in]      ULONG SlotNumber,
  [in, out] PVOID Buffer,
  [in]      ULONG Length
);

Параметры

[in] DeviceExtension

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

[in] BusDataType

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

[in] SystemIoBusNumber

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

[in] SlotNumber

Указывает номер логического слота или расположение устройства.

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

[in, out] Buffer

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

[in] Length

Указывает максимальное количество байтов, возвращаемых в буфере, или ноль, если вызывающий объект требует, чтобы драйвер порта для конкретной ОС выделил буфер для хранения данных.

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

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

Код возврата Описание
0 (ноль) Шина PCI не существует.
2 Шина PCI существует, но нет устройства в заданном pci SlotNumber. Буфер содержит значение, PCI_INVALID_VENDOR_ID в элементе PCI_COMMON_CONFIG VendorId.

Комментарии

Драйвер мини-порта может вызывать StorPortGetBusData из следующих процедур:

Вызовы из других подпрограмм драйвера минипорта приведут к сбою системы или неправильной работе вызывающего объекта.

Данные конфигурации, возвращаемые StorPortGetBusData , действительны только до тех пор, пока драйвер мини-порта снова не вызовет StorPortGetBusData . Как только подпрограмма HwStorFindAdapter вызывающей стороны возвращает управление, все возвращенные данные конфигурации становятся недопустимыми.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть storport.h (включая Storport.h)
Библиотека Storport.lib

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

HwStorAdapterControl

HwStorFindAdapter

PORT_CONFIGURATION_INFORMATION

SCSI_ADAPTER_CONTROL_TYPE