Поделиться через


Включение прерываний Message-Signaled в реестре

Чтобы получать прерывания с сигналом о сообщениях (MSIs), INF-файл драйвера должен включить MSIs в реестре во время установки. Используйте подраздел Управление прерываниями\MessageSignaledInterruptProperties аппаратного ключа устройства, чтобы включить поддержку MSI.

Запись MSISupportedуправления прерываниями\MessageSignaledInterruptProperties — это значение REG_DWORD, определяющее, поддерживает ли устройство MSIs. Установите для MSISupported значение 1, чтобы включить поддержку MSI.

Вы также можете использовать реестр, чтобы указать максимальное количество MSIs, выделяемых для устройства. Запись MessageNumberLimit элемента Управление прерываниями\MessageSignaledInterruptProperties — это REG_DWORD значение, указывающее максимальное количество выделенных MSIs.

Для msi с несколькими сообщениями (доступно начиная с PCI 2.2) MessageNumberLimit должен иметь значение 1, 2, 4, 8 или 16. Для устройств MSI-X (доступно начиная с PCI 3.0) MessageNumberLimit может быть любым числом до 2048.

Используйте директиву INF AddReg в INF-файле драйвера, чтобы задать разделы реестра в аппаратном ключе устройства. Дополнительные сведения см. в разделе INF DDInstall.HW.

В следующем примере кода показано, как задать запись MSISupported в разделе Управление прерываниями\MessageSignaledInterruptProperties для устройства. Обратите внимание, что ключи управления прерываниями и управления прерываниями\MessageSignaledInterruptProperties автоматически создаются директивой AddReg при добавлении значения MSISupported .

[mydevice.HW]
AddReg = mydevice_addreg

[mydevice_addreg]
HKR,Interrupt Management\MessageSignaledInterruptProperties,MSISupported,0x00010001,1