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


Создание драйвера адаптера

Поддержка драйвера для определенного звукового адаптера карта принимает форму драйвера адаптера. Драйвер адаптера состоит из следующих компонентов:

  • Общий код адаптера, выполняющий запуск и инициализацию драйвера и реализующий все операции, общие для всех звуковых функций на адаптере карта.

  • Набор драйверов мини-портов, которые управляют определенными звуковыми функциями на адаптере карта.

Поставщик оборудования предоставляет как общий код адаптера, так и код для всех драйверов мини-портов, которые не предоставляются системой.

Пример общего кода адаптера см. в реализации интерфейса CAdapterCommon в примере драйвера Sysvad, который рассматривается в разделе Примеры аудиодрайверов.

Используя многоуровневый подход, поставщик может написать драйвер адаптера, который работает на одном из нескольких уровней в зависимости от аппаратной функциональности адаптера. При определении уровня поддержки, необходимого для конкретной аппаратной функции, поставщик должен сначала определить, существует ли уже предоставляемый системой драйвер мини-порта, поддерживающий функцию (см. список системных драйверов мини-портов функции PcNewMiniport ). В противном случае поставщик должен реализовать собственный драйвер мини-порта, но может по-прежнему использовать один из драйверов портов, предоставляемых системой (см. список системных драйверов портов функции PcNewPort ).

Чтобы реализовать поддержку WDM для устройства, выполните следующие действия.

  1. Если системный драйвер мини-порта уже поддерживает аппаратную функцию, используйте существующий драйвер мини-порта для управления функцией.

  2. Если аппаратная функция несовместима с системным драйвером мини-порта, определите, совместима ли функция хотя бы с одним из драйверов портов, предоставляемых системой. Если драйвер порта, предоставляемый системой, поддерживает аппаратную функцию, напишите часть драйвера мини-порта, который управляет функцией. Этот драйвер мини-порта должен соответствовать спецификации для интерфейса мини-порта, который ожидает драйвер порта-владельце.

  3. Если ни системный драйвер порта не поддерживает аппаратную функцию, напишите мини-диск для поддержки функции. Мини-диск должен соответствовать спецификации интерфейса для драйвера класса потоковой передачи.

В этом разделе рассматриваются следующие темы:

Последовательность запуска

Создание дочерних цехов