ScsiPortGetBusData 関数 (srb.h)
ScsiPortGetBusData ルーチンは、ミニポート ドライバーの HwScsiFindAdapter ルーチンが特定の I/O バスで特定のアダプターをサポートしているかどうかを判断し、その場合は HBA を構成するために使用するバスの種類固有の構成情報を返します。
構文
SCSIPORT_API ULONG ScsiPortGetBusData(
[in] PVOID DeviceExtension,
[in] ULONG BusDataType,
[in] ULONG SystemIoBusNumber,
[in] ULONG SlotNumber,
[in] PVOID Buffer,
[in] ULONG Length
);
パラメーター
[in] DeviceExtension
ミニポート ドライバーの HBA ごとの記憶域へのポインター。
[in] BusDataType
返されるバス固有の構成データの種類を指定する BUS_DATA_TYPE 型の値を格納します。 現在、この値は、Cmos、EisaConfiguration、Pos、または PCIConfigurationのいずれかです。 ただし、今後、追加の種類のバス構成がサポートされる予定です。 サポートされている型の上限は、常に MaximumBusDataType です。
[in] SystemIoBusNumber
I/O バスのシステム割り当て番号を指定します。 ミニポート ドライバーの HwScsiFindAdapter ルーチンは、SystemIoBusNumber メンバー PORT_CONFIGURATION_INFORMATION入力からこの値を取得します。
[in] SlotNumber
デバイスの論理スロット番号または場所を指定します。
BusDataTypeとして PCIConfiguration 指定する場合は、このパラメーターをPCI_SLOT_NUMBER型の値として指定する必要があります。
[in] Buffer
構成データが返されるバッファーまたは領域へのポインター。または、指定された Length がゼロの場合は、オペレーティング システム固有のポート ドライバーが割り当てるバッファーへのポインターを返す場所を指します。
[in] Length
Bufferで返される最大バイト数を指定します。呼び出し元がオペレーティング システム固有のポート ドライバーにデータを格納するバッファーを割り当てる必要がある場合は 0 を指定します。
戻り値
ScsiPortGetBusData は、バッファーに格納されている構成情報のバイト数を返します。 入力 BusDataType が PCIConfiguration の場合、ScsiPortGetBusData は次のいずれかの値を返してエラーを示すことができます。
リターン コード | 形容 |
---|---|
|
PCI バスが存在しません。 |
|
PCI バスは存在しますが、指定された PCI SlotNumberにデバイスがありません。 Buffer には、PCI_COMMON_CONFIG VendorId メンバーの値PCI_INVALID_VENDOR_IDが含まれています。 |
備考
ScsiPortGetBusData は、ミニポート ドライバーの HwScsiFindAdapter ルーチンから、またはコントロールの種類が ScsiSetRunningConfig 場合 HwScsiAdapterControl からのみ呼び出すことができます。 他のミニポート ドライバー ルーチンからの呼び出しは、システムエラーまたは呼び出し元の不適切な操作になります。
ScsiPortGetBusData によって返される構成データは、ミニポート ドライバーが ScsiPortGetBusData を再度呼び出すまで有効です。 呼び出し元の HwScsiFindAdapter ルーチンから制御が返されるとすぐに、返された構成データは無効になります。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | srb.h (ミニポート h、Scsi.h を含む) |
ライブラリ | Scsiport.lib |
関連項目
HwScsiFindAdapter の