Perguntas
O Linux armazena informações de hardware entre as inicializações? (Como EDIDs)
Se for assim, é possível configurar o que é armazenado em cache?
Antecedentes
O motivo que eu pergunto é que atualmente estou tentando configurar um segundo monitor, e este monitor tem um conversor passivo VGA (display) para exibir porta (placa gráfica) (eu sei que isso é uma má idéia, e não foi meu próprio). No meu entender, o uso de um conversor passivo requer que a placa gráfica faça algum trabalho para que o sinal seja exibido corretamente.
Posso fazer o monitor funcionar, mas se eu desligar o monitor ou o computador, ele deixará de funcionar quando for ligado novamente. Minha solução até agora, que é muito bem-sucedida, é desconectar a porta de exibição da placa gráfica, reiniciar a máquina, conectar a porta da tela de volta, reinicializar novamente e ela funciona bem. Isso é muito entediante, porque eu tenho muitos computadores com essa configuração.
Após desligar / ligar e trabalhar novamente, o segundo monitor tem um EDID diferente.
Pensamentos
Meu primeiro palpite é que a placa gráfica está recebendo uma certa quantidade de informações da tela e fazendo algum trabalho adicional para produzir o EDID final por causa do adaptador passivo. Como a placa realiza esse trabalho, o EDID não é consistente entre os ciclos de energia.
Meu segundo palpite é que o Linux (especificamente o RHEL 7.0) armazena em cache as informações de hardware (devido ao quão normalmente está estático) e quando o EDID em cache e o EDID atual entram em conflito, o monitor não funciona mais.
Minha solução alternativa corrobora isso, porque desconectar o monitor e inicializar seria uma mudança significativa o suficiente para detectar o hardware novamente (o que não seria nenhum na porta de exibição), então conectar a porta de exibição e a inicialização causaria a exibição para ser tratado como novo hardware e detectado de novo. Esta solução alternativa basicamente parece uma maneira de esvaziar o cache para esta exibição.