Como carregar o firmware EDID com drm_kms_helper

5

Eu tenho alguns problemas de tela com o meu computador, eu uso com um comutador KVM, mas essa opção parece bloquear a detecção EDID da tela, e como nenhuma tela é detectada, após a inicialização (quando o logotipo de carregamento do Ubuntu normalmente aparecem) a tela fica no modo de suspensão. Mas com a opção de kernel nomodeset, o driver vesa detecta corretamente a tela e funciona, mas com limitações (sem aceleração de hardware, oscilação do mouse, sem modo de suspensão ...).

Eu fiz muitos testes (xrandr, construa meu próprio Xorg.conf ...) e finalmente encontrei este patch do kernel: drm: permite carregar um EDID como firmware para sobrescrever o monitor quebrado Então eu tentei compilar meu próprio kernel, e eu vi o kernel padrão do Ubuntu já ter esse patch e configurado para ser compilado no kernel.

config-3.2.0-24-generic:

CONFIG_DRM_KMS_HELPER=m
CONFIG_DRM_LOAD_EDID_FIRMWARE=y

Então, eu faço um /etc/modprobe.d/drm-kms-helper.conf que contém:

cat /etc/modprobe.d/drm-kms-helper.conf
options drm_kms_helper edid_firmware=VGA1:edid/1680x1050.bin

Mas o problema ainda está lá, quando eu inicializo a tela. Mesmo que a configuração ainda seja aplicada:

cat /sys/module/drm_kms_helper/parameters/edid_firmware 
VGA1:edid/1680x1050.bin

Eu também tentei estas configurações:

=VGA-1:edid/1680x1050.bin
=edid/1680x1050.bin

No Xorg.0.log, o sistema tem o mesmo comportamento de antes:

[    21.832] (II) intel(0): EDID for output VGA1
[    21.837] (II) intel(0): EDID for output HDMI1
[    21.884] (II) intel(0): EDID for output DP1
[    22.012] (II) intel(0): EDID for output HDMI2
[    22.016] (II) intel(0): EDID for output HDMI3
[    22.064] (II) intel(0): EDID for output DP2
[    22.112] (II) intel(0): EDID for output DP3
[    22.112] (II) intel(0): Output VGA1 disconnected
[    22.112] (II) intel(0): Output HDMI1 disconnected
[    22.112] (II) intel(0): Output DP1 disconnected
[    22.112] (II) intel(0): Output HDMI2 disconnected
[    22.112] (II) intel(0): Output HDMI3 disconnected
[    22.112] (II) intel(0): Output DP2 disconnected
[    22.112] (II) intel(0): Output DP3 disconnected
[    22.112] (WW) intel(0): No outputs definitely connected, trying again...
[    22.112] (II) intel(0): Output VGA1 disconnected
[    22.112] (II) intel(0): Output HDMI1 disconnected
[    22.112] (II) intel(0): Output DP1 disconnected
[    22.112] (II) intel(0): Output HDMI2 disconnected
[    22.112] (II) intel(0): Output HDMI3 disconnected
[    22.112] (II) intel(0): Output DP2 disconnected
[    22.112] (II) intel(0): Output DP3 disconnected
[    22.112] (WW) intel(0): Unable to find connected outputs - setting 1024x768 initial framebuffer

A coisa estranha é como está escrito no log, uma imagem de 1024x768 está presente, mas não acorde a tela. A única maneira de ver isso é mudar com o KVM de um computador ativado para este.

Por enquanto, não sei quais faixas seguir, estou perdido.

Meu problema parece vir do problema do hotplug. Quando eu desabilitá-lo, tudo vai bem. Veja aqui para mais detalhes

    
por Madmax 30.05.2012 / 13:54

3 respostas

2

Meu problema parece vir do problema do hotplug. Quando eu desabilitá-lo, tudo vai bem. Veja aqui para mais detalhes

    
por Madmax 31.05.2012 / 10:51
0

Pode ser necessário ativar explicitamente a porta de vídeo usando o parâmetro do kernel video = VGA-1: e.

    
por Carsten 07.06.2012 / 01:56
0

Eu vejo o patch com apenas 2 dias de vida. Se você puder, eu sugiro que você espere até que o patch seja aceito na árvore do Linus e então incorporado em um kernel upstream criado pela equipe do kernel do Ubuntu. (Vejo que ele removeu a última tentativa de consertar isso devido a problemas que causou).

Depois de ter sido mesclado, você pode tentar usar uma versão mainline do Ubuntu a partir da árvore atualizada - veja this . É um pouco complicado, mas não tão complicado quanto construir seu próprio kernel ou usar dkms.

Veja também esta questão .

    
por John S Gruber 14.06.2012 / 00:23