StorPortGetDeviceBase ルーチンは、I/O アドレスをシステム アドレス空間にマップします。
構文
STORPORT_API PVOID StorPortGetDeviceBase(
[in] PVOID HwDeviceExtension,
[in] INTERFACE_TYPE BusType,
[in] ULONG SystemIoBusNumber,
[in] STOR_PHYSICAL_ADDRESS IoAddress,
[in] ULONG NumberOfBytes,
[in] BOOLEAN InIoSpace
);
パラメーター
[in] HwDeviceExtension
ハードウェア デバイス拡張機能へのポインター。 これは、ポート ドライバーが割り当て、ミニポート ドライバーの代わりに初期化する HBA ごとの記憶域です。 ミニポート ドライバーは通常、HBA の状態や HBA のマップされたアクセス範囲など、この拡張機能に HBA 固有の情報を格納します。 この領域は、ミニポート ドライバーが StorPortInitialize 呼び出した直後にミニポート ドライバーで使用できます。 ポート ドライバーは、デバイスを削除すると、このメモリを解放します。
[in] BusType
HBA が接続されている I/O バスのインターフェイスの種類を指定します。 ミニポート ドライバーの HwStorFindAdapter ルーチンは、入力 PORT_CONFIGURATION_INFORMATIONの AdapterInterfaceType メンバーからこのパラメーターの値を取得します。
[in] SystemIoBusNumber
HBA が接続されている I/O バスのシステム割り当て番号を指定します。 HwStorFindAdapter ルーチンは、入力 PORT_CONFIGURATION_INFORMATIONの SystemIoBusNumber メンバーからこのパラメーターの値を取得します。
[in] IoAddress
HBA で使用される範囲のバス相対ベース アドレスを指定します。 HwStorFindAdapter ルーチンは、ポート ドライバーが範囲構成情報を提供する場合に、PORT_CONFIGURATION_INFORMATION の AccessRanges 要素からこのパラメーターの値を取得します。 それ以外の場合、このアドレスは、StorPortGetBusData またはミニポート ドライバーが指定した既定値 返される値を指定できます。 成功した戻り値の状態がエラー状態 (NULL) と競合する可能性があるため、ベース アドレス 0 は使用しないでください。
[in] NumberOfBytes
マッピングがカバーする範囲のサイズをバイト単位で指定します。 HwStorFindAdapter ルーチンは、ポート ドライバーが範囲構成情報を提供する場合に、IoAddress と同じAccessRanges 要素からこのパラメーターの値を取得します。 それ以外の場合は、StorPortGetBusData またはミニポート ドライバーが提供する既定値 この値を返すことができます。 いずれの場合も、ドライバーは、返された、マップされた範囲外のハードウェアにアクセスする必要があります。
[in] InIoSpace
TRUE は、マップされる範囲が I/O 空間内であることを示し、ミニポート ドライバーは、HBA と通信する読み取り/書き込みルーチン Storport ポートにこの範囲のマップされたアドレスを渡します。 HwStorFindAdapter ルーチンは、IoAddress と同じ AccessRanges 要素からこのパラメーター値を取得します。 ミニポート ドライバー は、の InIoSpace 引数として StorPortGetDeviceBase に渡される前に、ACCESS_RANGE型要素の InMemorySpace メンバーの値を反転する必要があります。 FALSE は、マップする範囲がメモリ空間にあることを示します。
戻り値
IoAddress パラメーターで指定されたバス相対アドレスに対応する、マップされた論理ベース アドレス。
備考
すべてのミニポート ドライバーは、マップされた論理アクセス範囲アドレスを、読み取り/書き込みルーチン Storport ポートに渡す必要があります。また、Storport は、HBA と通信するときに読み取り/書き込みルーチン 登録します。
このルーチンは、システム プラグ アンド プレイ (PnP) マネージャーによってドライバーに割り当てられたアドレスのみをサポートします。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | 万国 |
ヘッダー | storport.h (Storport.h を含む) |
ライブラリ | Storport.lib |
関連項目
StorPortFreeDeviceBase の