Compartir a través de


Construcción del controlador del adaptador

La compatibilidad del controlador para una tarjeta de adaptador de audio determinada tiene la forma de un controlador de adaptador. Un controlador de adaptador consta de lo siguiente:

  • Código de adaptador general que realiza el inicio y la inicialización del controlador, y que implementa las operaciones comunes a todas las funciones de audio en la tarjeta del adaptador.

  • Un conjunto de controladores de minipuerto que administran funciones de audio específicas en la tarjeta del adaptador.

El proveedor de hardware proporciona tanto el código de adaptador general como el código para los controladores de miniporte que el sistema no proporciona.

Para obtener un ejemplo del código de adaptador general, vea la implementación de la interfaz CAdapterCommon en el controlador de ejemplo Sysvad, que se describe en Controladores de audio de ejemplo.

Mediante un enfoque por capas, el proveedor puede escribir un controlador de adaptador que funcione en uno de varios niveles, en función de la funcionalidad de hardware del adaptador. Al determinar el nivel de compatibilidad que requiere una función de hardware determinada, el proveedor debe determinar primero si ya existe un controlador de miniporte suministrado por el sistema que admita la función (consulte la lista de controladores de miniport proporcionados por el sistema de la función PcNewMiniport ). Si no es así, el proveedor debe implementar un controlador de minipuerto propietario, pero puede seguir usando uno de los controladores de puerto proporcionados por el sistema (consulte la lista de controladores de puerto proporcionados por el sistema de la función PcNewPort ).

Para implementar la compatibilidad con WDM para un dispositivo, siga estos pasos:

  1. Si un controlador de miniporte proporcionado por el sistema ya admite la función de hardware, use el controlador de miniporte existente para administrar la función.

  2. Si la función de hardware no es compatible con un controlador de miniporte proporcionado por el sistema, determine si la función es compatible con al menos uno de los controladores de puerto proporcionados por el sistema. Si un controlador de puerto proporcionado por el sistema admite la función de hardware, escriba la parte del controlador de miniporte que administra la función. Ese controlador de minipuerto debe cumplir con la especificación de la interfaz de minipuerto que espera el controlador de puerto propietario.

  3. Si ningún controlador de puerto proporcionado por el sistema admite la función de hardware, escriba un minidriver para admitir la función. El minidriver debe cumplir con la especificación de interfaz para el controlador de clase de streaming.

En esta sección se describen los temas siguientes:

Secuencia de inicio

Creación de subdispositivos