Driver da função de classe do monitor
Um nó de dispositivo é usado para representar cada saída de vídeo em um adaptador de vídeo que tem um monitor conectado. O nó do dispositivo é filho do nó do dispositivo do adaptador de vídeo.
Normalmente, há apenas dois objetos de dispositivo na pilha de dispositivos que representam um par de saída de vídeo/monitor:
- O objeto de dispositivo físico (PDO).
- O objeto de dispositivo funcional (FDO).
Em alguns casos, há um objeto de dispositivo de filtro (DO) associado a um driver de filtro fornecido pelo fornecedor. Esse objeto de dispositivo de filtro fica acima do FDO.
Para monitores integrados, como a tela plana interna em um laptop, pode haver um filtro de DO associado ao driver de Interface de Energia e Configuração Avançada (ACPI). Este DO do filtro fica acima do PDO.
A tabela a seguir mostra a pilha de dispositivos para uma saída de vídeo que tem um monitor conectado.
Objeto Dispositivo | Obrigatório/Opcional | Driver |
---|---|---|
DO do filtro | Opcional, normalmente não é necessário | Driver de filtro fornecido pelo fornecedor do monitor |
FDO | Obrigatório | Driver de função de classe de monitor (Monitor.sys) fornecido pela Microsoft |
DO do filtro | Necessário apenas para painéis de exibição ACPI integrados | Driver ACPI (Acpi.sys) fornecido pela Microsoft |
PDO | Obrigatório | Driver de barramento (par de miniportas/portas de exibição) fornecido pelo fornecedor do adaptador de vídeo |
Os aplicativos no modo de usuário usam o WMI para invocar os serviços do driver de função de classe de monitor. Esses serviços incluem a exposição dos dados de identificação de um monitor. Para uma exibição ACPI, os serviços incluem a configuração do brilho da tela.
Um monitor armazena suas informações de identificação e capacidade em uma estrutura de Dados de Identificação de Exibição Estendida (EDID). EDID é um formato de metadados que permite que o monitor forneça ao host informações sobre sua identidade e recursos, independentemente do protocolo de comunicação usado entre o monitor e o host. O FDO processa uma solicitação de um aplicativo de modo de usuário para ler o EDID de um monitor na pilha de dispositivos desse monitor. Quando o FDO recebe uma solicitação para recuperar o EDID do monitor:
- O FDO envia uma solicitação ao PDO na parte inferior da pilha de dispositivos do monitor.
- O PDO usa o protocolo de Canal de Dados de Exibição (DDC) para ler o EDID do monitor pelo barramento I²C, que é um barramento simples de dois fios embutido em todos os cabos de monitor padrão.
O EDID pode ser obtido usando o método ACPI_METHOD_OUTPUT_DDC cujo alias é definido em Dispmprt.h. Esse método é necessário para LCDs integrados que não têm outro mecanismo padrão para retornar dados EDID.
Para obter mais informações sobre a comunicação entre adaptadores de vídeo e monitores, consulte Barramento I2C e Dispositivos Filho do Adaptador de Vídeo.
Para obter detalhes sobre as estruturas EDID e o protocolo DDC, consulte os seguintes padrões publicados pela Video Electronics Standards Association (VESA):
Padrão de Canal de Dados de Exibição Aprimorado (E-DDC)
Padrão EDID Aprimorado (E-EDID)
Você pode baixar esses padrões do vesa.org na seção Padrões Gratuitos.
Para obter detalhes sobre o barramento I²C, consulte a Especificação do Barramento I²C publicada pela Philips Semiconductors.