Share via


UMDF 1.x ドライバーでのハードウェア リソースの検索とマッピング

警告

UMDF 2 は UMDF の最新バージョンであり、UMDF 1 に取って代わるものです。 すべての新しい UMDF ドライバーは、UMDF 2 を使用して記述する必要があります。 UMDF 1 には新機能が追加されておらず、Windows 10 の新しいバージョンでは UMDF 1 のサポートが制限されています。 ユニバーサル Windows ドライバーでは、UMDF 2 を使用する必要があります。

アーカイブされた UMDF 1 サンプルは、Windows 11, バージョン 22H2 - 2022 年 5 月 ドライバー サンプル アップデートでご確認いただけます。

詳しくは、UMDFの概要をご覧ください。

UMDF バージョン 2.0 以降を使用している場合は、「 ハードウェア リソースの検索とマッピング」を参照してください。

UMDF 1.x ドライバーは、IPnpCallbackHardware2 ::OnPrepareHardware コールバック メソッドでハードウェア リソースを受け取ります。 ドライバーは、 IWDFCmResourceList インターフェイスを使用して、変換されたリソースの一覧を確認し、メモリマップ レジスタ、I/O ポート、および割り込みを識別します。

ドライバーは、IWDFCmResourceList::GetCountIWDFCmResourceList::GetDescriptor を呼び出すことによって、リソース一覧を反復処理します。

ドライバーがメモリマップ レジスタを受け取った場合、ドライバーはレジスタにアクセスする前に IWDFDevice3::MapIoSpace を呼び出してマップする必要があります。 通常、ドライバーは、そのレジスタを IPnpCallbackHardware2::OnPrepareHardware メソッドにマップします。 ドライバーは、IWDFDevice3::UnmapIoSpace を呼び出すことによって、IPnpCallbackHardware2::OnReleaseHardware コールバックでレジスタのマップを解除します。 I/O ポートにはマッピングは必要ありません。

ドライバーがメモリ マップされたレジスタ リソースを検索してマップする方法を示す例については、IWDFDevice3::MapIoSpaceを参照してください。