Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Às vezes, você precisa obter informações do espaço de configuração de um dispositivo cujo driver está em uma pilha diferente daquela em que seu driver está. Por exemplo, suponha que você queira definir um bit no espaço de configuração de uma ponte PCI-to-PCI e não tenha um ponteiro para o PDO da ponte. Embora o sistema operacional enumera pontes PCI para PCI e cria um PDO para cada ponte no sistema, ele não registra interfaces de dispositivo para esses dispositivos. Portanto, você não pode usar o mecanismo de interface do dispositivo para acessar o espaço de configuração dessas pontes. Para obter mais informações sobre interfaces de dispositivo, consulte Introdução às Interfaces de Dispositivo.
Uma maneira de um driver acessar o hardware pertencente a outras pilhas de drivers é escrever um driver de filtro. Para acessar o hardware da ponte, por exemplo, você pode projetar um driver de filtro que implementa as operações necessárias no espaço de configuração da ponte. Você também deve fornecer um arquivo INF que especifica as possíveis IDs de hardware do hardware de ponte. O arquivo INF permite que o gerenciador PnP carregue o driver de filtro na pilha de driver da ponte quando detectar a ID do dispositivo da ponte.
Como alternativa, você pode instalar um filtro programaticamente usando funções SetupDiXxx no co-instalador para seu dispositivo.
O driver de filtro pode acessar a ponte usando a interface BUS_INTERFACE_STANDARD .
Para obter uma implementação de exemplo que demonstra o uso de BUS_INTERFACE_STANDARD para acessar o espaço de configuração de PCI, consulte o exemplo de driver PCIDRV.