Eu tenho uma placa embutida rodando Linux 3.0.35 e X.Org 1.14.4. Estou modificando um driver de framebuffer existente para suportar um novo tipo de conector. Estou lendo o EDID, criando um novo modelista usando as funções fb_, e posso ver a lista de modos corretos em / sys / class / graphics / fb0 / modes.
No entanto, o servidor X parece apenas pegar esses modos no início. Se eu iniciar o X com um monitor conectado, ele verá a lista de modos corretos e o xrandr permitirá que eu alterne os modos. No entanto, se eu iniciar o X sem um monitor, depois de conectá-lo, o driver framebuffer apresentará o modelista correto, mas não o xrandr. Este último mostra apenas o modo padrão que eu configurei se nenhum monitor for detectado.
Dada a versão do kernel e do servidor X que estou usando, existe uma maneira padrão de notificar o servidor X para recarregar sua lista de modos? A maioria dos drivers X espera ler o EDID sobre o i2c e gerar sua própria lista de modos?
Ou preciso fazer algo com uma regra do udev executada no monitor hotplug para executar um script que usa o xrandr para limpar a lista de modos e adicionar novos baseados nos modos encontrados no driver framebuffer?
Alguma outra sugestão? Obrigado.