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


Регистрация и отмена регистрации прерывания MSI

Чтобы зарегистрироваться для поддержки MSI, драйвер мини-порта вызывает функцию NdisMRegisterInterruptEx , чтобы зарегистрировать прерывание MSI. Драйвер выделяет и инициализирует структуру NDIS_MINIPORT_INTERRUPT_CHARACTERISTICS для указания характеристик прерываний и точек входа в функции. Драйвер должен задать для элемента MsiSupported структуры NDIS_MINIPORT_INTERRUPT_CHARACTERISTICS значение TRUE. Затем драйвер передает структуру в NdisMRegisterInterruptEx.

Для поддержки прерываний MSI необходимо определить следующие функции:

Драйвер мини-порта должен предоставлять точки входа для функций прерываний на основе строк (которые показаны в следующем списке), даже если драйвер поддерживает точки входа MSI. Если NDIS не предоставляет прерывание MSI, он может предоставить обычное прерывание в качестве резервного условия.

К функциям прерывания строки относятся следующие:

Драйверы должны вызывать функцию NdisMDeregisterInterruptEx для освобождения ресурсов, которые ранее были выделены с помощью NdisMRegisterInterruptEx.