Compartir a través de


Información de configuración de otros conjuntos de controladores

En ocasiones, es necesario obtener información del espacio de configuración de un dispositivo cuyo controlador está en una pila diferente a la que está su controlador. Por ejemplo, supongamos que quiere establecer un bit en el espacio de configuración de un puente PCI a PCI y no tiene un puntero al PDO del puente. Aunque el sistema operativo enumera puentes PCI a PCI y crea un PDO para cada puente del sistema, no registra interfaces de dispositivo para estos dispositivos. Por lo tanto, no puede usar el mecanismo de interfaz del dispositivo para acceder al espacio de configuración de estos puentes. Para obtener más información sobre las interfaces de dispositivo, consulte Introducción a las interfaces de dispositivo.

Una manera de que un controlador acceda al hardware que pertenece a otras pilas de controladores es escribir un controlador de filtro. Para acceder al hardware del puente, por ejemplo, podría diseñar un controlador de filtro que implemente las operaciones necesarias en el espacio de configuración del puente. También debe proporcionar un archivo INF que especifique los posibles identificadores de hardware del puente. El archivo INF permite al administrador de PnP cargar el controlador de filtro en la pila de controladores del puente cuando detecta el identificador de dispositivo del puente.

Como alternativa, puede instalar un filtro mediante programación mediante funciones SetupDiXxx en el co-instalador del dispositivo.

A continuación, el controlador de filtro puede acceder al puente mediante la interfaz BUS_INTERFACE_STANDARD .

Para obtener una implementación de ejemplo que muestra el uso de BUS_INTERFACE_STANDARD para acceder al espacio de configuración de PCI, consulte el ejemplo de controlador PCIDRV.