レジストリでのメッセージ シグナル割り込みの有効化
メッセージ通知割り込み (MSI) を受信するには、インストール時にドライバーの INF ファイルでレジストリ内の MSI を有効にする必要があります。 MSI サポートを有効にするには、デバイスのハードウェア キーの Interrupt Management\MessageSignaledInterruptProperties サブキーを使用します。
Interrupt Management\MessageSignaledInterruptProperties の MSISupported エントリは、デバイスが MSI をサポートしているかどうかを指定する REG_DWORD 値です。 MSI のサポートを有効にするには、MSISupported を 1 に設定します。
レジストリを使用して、デバイスに割り当てる MSI の最大数を指定することもできます。 Interrupt Management\MessageSignaledInterruptProperties の MessageNumberLimit エントリは、割り当てる MSI の最大数を指定する REG_DWORD 値です。
マルチメッセージ MSI (PCI 2.2 以降で使用可能) の場合、MessageNumberLimit は 1、2、4、8、または 16 である必要があります。 MSI-X デバイス (PCI 3.0 以降で使用可能) の場合、MessageNumberLimit には最大 2,048 の任意の数を指定できます。
ドライバーの INF ファイルで INF AddReg ディレクティブ を使用して、デバイスのハードウェア キーの下にレジストリ キーを設定します。 詳細については、「INF DDInstall.HW セクション」を参照してください。
次のコード例は、デバイスの Interrupt Management\MessageSignaledInterruptProperties で MSISupported エントリを設定する方法を示しています。 Interrupt Management キーと Interrupt Management\MessageSignaledInterruptProperties キーは、MSISupported 値を追加すると、AddReg ディレクティブによって自動的に作成されます。
[mydevice.HW]
AddReg = mydevice_addreg
[mydevice_addreg]
HKR,Interrupt Management\MessageSignaledInterruptProperties,MSISupported,0x00010001,1