Configure 27 "2560x1440 para um monitor com EDID corrompido

4

Estou tentando fazer com que um monitor funcione com meu laptop Ubuntu. O monitor é este barato 27 "monitores coreanos que tem uma resolução de 2560x1440 - e nada mais.Aqui estão algumas especificações deste monitor:

  • 2560 x 1440 a 60 Hz
  • Apenas uma entrada DVI-D de link duplo - nenhuma outra porta de entrada (sem HDMI ou porta de exibição)
  • sem OSD
  • não escalar
  • relata EDID corrompido
  • faz 2560x1440 @ 60Hz, já disse isso?

De qualquer forma, o monitor funciona lindamente com o meu desktop Ubuntu, que tem uma placa nVidia com saída DVI. No entanto, estou tendo problemas ao usar este monitor com meu laptop. Depois de algumas pesquisas, encontrei alguns poucos postagens sugerindo usar um adaptador ativo para porta mini display, então eu fui e comprei um mini display para o adaptador DVI-D de link duplo. . Ao usar esse adaptador, o monitor é reconhecido pela ferramenta nvidia-settings , mas com informações de resolução incorretas.

Comovocêpodever,omonitoréreconhecidoincorretamenteenãoháoutraresoluçãodisponívelparadefinir.Este postar em fóruns do Ubuntu e este outro ambos sugerem que o monitor está relatando o arquivo EDID corrompido. Eu tentei seguir as instruções deles, mas até agora não consegui exibir nenhuma imagem no monitor do meu laptop.

O laptop que estou usando é um ASUS G75VW com uma tela de 1920x1080. Ele tem um VGA, um HDMI 1.4a e uma mini porta de exibição. A placa gráfica é uma nvidia gforce gtx 660M com 2GB de memória dedicada. Estou executando o Ubuntu 12.10 aqui que eu atualizei de 12.04 há algumas semanas.

Como eu disse, tentei várias sugestões, incluindo a especificação de Modeline em xorg.conf e também a vinculação a arquivos EDID encontrados nessas postagens do fórum acima. No entanto, não tenho certeza se os arquivos EDID que encontrei são adequados para o meu monitor. Eu acho que a solução para o meu problema consiste em obter o arquivo EDID do meu monitor e, em seguida, corrigi-lo e modificar xorg.conf para forçar driver nvidia para carregar a resolução correta. No entanto, não tenho certeza de quais etapas devo seguir para fazer isso.

Aqui está a parte da saída sudo xrandr --prop que está relacionada a este monitor:

DP-1 connected 800x600+1920+0 (normal left inverted right x axis y axis) 0mm x 0mm
    SignalFormat:   DisplayPort
    supported: DisplayPort 
    ConnectorType:  DisplayPort
    ConnectorNumber: 3 (0x00000003)
    _ConnectorLocation: 3 (0x00000003)
    800x600        60.3*+

Eu estava esperando ver o arquivo EDID nesta saída como mencionado neste post , mas ele não está lá. Eu também tentei adicionar o novo modo usando xandr após este documento. . Aqui está o que eu fiz e o erro que recebi:

$ cvt 2560 1440 60
# 2560x1440 59.96 Hz (CVT 3.69M9) hsync: 89.52 kHz; pclk: 312.25 MHz
Modeline "2560x1440_60.00"  312.25  2560 2752 3024 3488  1440 1443 1448 1493 -hsync +vsync
$ xrandr --newmode "2560x1440_60.00"  312.25  2560 2752 3024 3488  1440 1443 1448 1493 -hsync +vsync
$ xrandr --addmode DP-1 "2560x1440_60.00"

X Erro de solicitação com falha: BadMatch (atributos de parâmetro inválidos)   Maior opcode do pedido falhado: 140 (RANDR)   Código de operação secundário da solicitação com falha: 18 (RRAddOutputMode)   Número de série do pedido falhado: 39   Número de série atual no fluxo de saída: 40

Eu não tenho ideia do que é este erro. Eu tentei adicionar outro modo, desta vez usando o utilitário gtf . Isso não fez diferença alguma. Aqui está a saída de xrandr -q :

xrandr -q

Screen 0: minimum 8 x 8, current 2720 x 1080, maximum 16384 x 16384
VGA-0 disconnected (normal left inverted right x axis y axis)
LVDS-0 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 382mm x 215mm
   1920x1080      60.0*+   40.0  
DP-0 disconnected (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
DP-1 connected 800x600+1920+0 (normal left inverted right x axis y axis) 0mm x 0mm
   800x600        60.3*+
  2560x1440_60.00 (0x3f9)  312.2MHz
    h: width  2560 start 2752 end 3024 total 3488 skew    0 clock   89.5KHz
    v: height 1440 start 1443 end 1448 total 1493           clock   60.0Hz
  2560x1440 (0x3fa)  311.8MHz
    h: width  2560 start 2744 end 3024 total 3488 skew    0 clock   89.4KHz
    v: height 1440 start 1441 end 1444 total 1490           clock   60.0Hz

E aqui está a coisa mais próxima que eu tenho de um xorg.conf em funcionamento

Section "ServerLayout"
# Removed Option "Xinerama" "0"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" RightOf "Screen0"


 InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
    Option         "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "DFP-3"
    HorizSync       89.40
    VertRefresh     60.00
    #HorizSync       43.95
    #VertRefresh     30.00
    ModeLine       "2560x1440_60" 311.83 2560 2744 3024 3488 1440 1441 1444 1490 -hsync +vsync
    #ModeLine       "2560x1440_30" 146.27 2560 2680 2944 3328 1440 1441 1444 1465 -hsync +vsync
    Option         "DPMS"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Chi Mei Optoelectronics corp."
    HorizSync       44.4 - 67.1
    VertRefresh     40.0 - 60.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 660M"
    BusID          "PCI:1:0:0"
    Screen          1
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 660M"
    BusID          "PCI:1:0:0"
    Screen          0
EndSection

Section "Screen"
    Option         "Stereo" "0"
    #Option    "NoLogo" "False"
    #Option        "UseEDID" "False"
    #Option        "UseEDIDDPI" "False"
    #Option    "UseEDIDFreqs" "False"
    Option         "metamodes"      "2560x1440_60"
    Identifier     "Screen1"
    Device         "Device1"
    Monitor        "Monitor1"
    DefaultDepth    24
    Option         "ExactModeTimingsDVI" "True"
    #Option         "metamodes" "DFP-3: 2560x1440_60 +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Screen"
# Removed Option "metamodes" "DFP-0: nvidia-auto-select +0+0; DFP-0: nvidia-auto-select +0+0; DFP-0: 1920x1080 +0+0; DFP-0: 1920x1080_60 +0+0; DFP-0: 1920x1080_40 +0+0; DFP-0: nvidia-auto-select @1920x1024 +0+0; DFP-0: nvidia-auto-select @1920x720 +0+0; DFP-0: nvidia-auto-select @1920x768 +0+0; DFP-0: nvidia-auto-select @1920x600 +0+0; DFP-0: nvidia-auto-select @1920x480 +0+0"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    #Option         "nvidiaXineramaInfoOrder" "DFP-0"
    Option         "metamodes" "DFP-0: nvidia-auto-select +0+0; DFP-0: nvidia-auto-select +0+0; DFP-0: 1920x1080 +0+0; DFP-0: 1920x1080_60 +0+0; DFP-0: 1920x1080_40 +0+0; DFP-0: nvidia-auto-select +0+0; DFP-0: nvidia-auto-select +0+0; DFP-0: nvidia-auto-select +0+0; DFP-0: nvidia-auto-select +0+0; DFP-0: nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

#Section "Extensions"
#    Option         "Composite" "Disable"
#EndSection

Depois de várias horas de configurações do X, decidi que era hora de pedir ajuda aqui. Eu realmente apreciaria se alguém com experiência em configuração de EDID e X pudesse me ajudar a resolver esse problema.

    
por Aras 03.11.2012 / 06:00

1 resposta

3

Eu tive um problema semelhante recentemente. Eu poderia ter feito um arquivo Xorg.conf personalizado, mas isso teria prejudicado toda a nova configuração automática quando eu conectei a outros monitores. Eu reescrevi o EDID corrompido em vez disso: < br>
Aqui estão alguns materiais de leitura: ref: link
edid-rw: link (isso pode funcionar para você ... Eu tentei e pude ler o edid mas não consegui escreva? Tente primeiro?)

Você precisa encontrar o endereço i2c do monitor:

% bl0ck_qu0te%

Eu encontrei uma listagem na internet para o edid do meu monitor como parte de uma listagem xorg em uma publicação de bug. Coloque-o no arquivo new.bin:

Checksum! .. Esta próxima linha deve cuspir 0

% bl0ck_qu0te%

Como edid-rw acima não funcionou para mim, examinei:

Eu usei isso para escrever o edid:
AVISO - PERIGOSO - Verifique se os endereços i2c estão corretos e insira-os abaixo!

% bl0ck_qu0te%

verifique o resultado final:
(não se esqueça de usar as informações de endereço encontradas acima usando o i2cdetect em vez de "1 0x50")

% bl0ck_qu0te%     
por JJones 02.04.2014 / 02:29