web-dev-qa-db-ja.com

壊れたEDIDを持つモニター用に27 "2560x1440を構成します

Ubuntuラップトップでモニターを動作させようとしています。モニターはこれです 安い27 "韓国語モニター 2560x1440の解像度を持っています-そして、他には何もありません。このモニターの仕様は次のとおりです。

  • 2560x1440 @ 60Hz
  • のみ1つのデュアルリンクDVI-D入力-他の入力ポートなし(HDMIまたはディスプレイポートなし)
  • oSDなし
  • スカラーなし
  • 破損したEDIDを報告します
  • 2560x1440 @ 60Hzとは何ですか?

とにかく、モニターは、DVI出力を備えたnVidiaカードを備えたUbuntuデスクトップで美しく動作します。ただし、ラップトップでこのモニターを使用すると問題が発生します。いくつかの周りを検索した後、ミニディスプレイポートにアクティブアダプターを使用することを示唆している fewposts を見つけたので、行って購入しました デュアルリンクDVIへのミニディスプレイ-Dアダプター。 。このアダプターを使用すると、モニターはnvidia-settingsツールによって認識されますが、解像度情報が正しくありません。

enter image description here

ご覧のとおり、モニターは正しく認識されておらず、設定可能な他の解像度はありません。この buntuフォーラムへの投稿 と他の オーバークロックへの投稿 は両方とも、モニターが破損したEDIDファイルを報告していることを示唆しています。私は彼らの指示に従ってみましたが、これまでのところ、ラップトップからモニターに画像を表示することはできませんでした。

私が使用しているラップトップは、1920x1080画面のASUS G75VWです。 VGA、HDMI 1.4a、およびミニディスプレイポートがあります。グラフィックカードは、2GBの専用メモリを搭載したnvidia gforce gtx 660Mです。私はここでUbuntu 12.10を実行していますが、これは数週間前に12.04からアップグレードします。

私が言ったように、xorg.confModelineを指定することや、上記のフォーラム投稿から見つけたEDIDファイルへのリンクを含むいくつかの提案を試みました。しかし、見つけたEDIDファイルがモニターに適しているかどうかはわかりません。私の問題の解決策は、モニターのEDIDファイルを取得し、それを修正し、xorg.confを修正してnvidiaドライバーに正しい解像度をロードさせることだと思います。ただし、これを実行するために必要な手順はわかりません。

以下は、このモニターに関連するSudo xrandr --prop出力の一部です。

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*+

この投稿で述べた のように、この出力にEDIDファイルが表示されることを期待していましたが、そこにはありません。また、 このドキュメント。 に続くxandrを使用して新しいモードを追加しようとしました。ここに私がやったことと私が得たエラーがあります:

$ 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失敗した要求のエラー:BadMatch(無効なパラメーター属性)失敗した要求のメジャーオペコード:140(RANDR)失敗した要求のマイナーオペコード:18(RRAddOutputMode)失敗した要求のシリアル番号:39出力ストリームの現在のシリアル番号:40

このエラーが何であるかはわかりません。今度はgtfユーティリティを使用して、別のモードを追加してみました。違いはありませんでした。 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

そして、これが私が動作しているxorg.confに最も近いものです

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

X構成を数時間調整した後、私はここで助けを求める時だと決めました。 EDIDとXの構成に関する経験のある人がこの問題を解決するための手を貸してくれたら本当にありがたいです。

4
Aras

最近、同様の問題が発生しました。カスタムのXorg.confファイルを作成することもできましたが、他のモニターに接続すると、すべての素晴らしい自動構成が損なわれてしまいます。
代わりに、破損したEDIDを書き直しました。

ここにいくつかの資料があります:ref: https://en.wikipedia.org/wiki/Extended_display_identification_data#External_links
edid-rw: https://github.com/bulletmark/edid-rw (これはあなたのために働くかもしれません... I試してみて、edidを読むことはできましたが、書くことができませんでした?!最初に試してみてください?)

モニターのi2cアドレスを見つける必要があります。

i2cdetect -l
// vgaを探します。この場合、「1」を取得しました

i2cdetect 1
//アドレスを探します。この場合は1つだけです。

sudo i2cdump 1 0x50 b
//現在のedidを取得します

バグポストのxorgリストの一部として、モニターのedidのリストをインターネットで見つけました。ファイルnew.binに入れます。

チェックサム!..この次の行は0を吐き出します。

x = $(sum -s new.bin | cut -d "" -f 1); echo "$ x%256" | bc

上記のedid-rwがうまくいかなかったので、私は調べました:

これを使用してedidを記述しました。
警告-危険-i2cアドレスが正しいことを確認して、下に挿入してください!

猫new.bin | hexdump -v -e '"Sudo i2cset -y 1 0x50 0x%_ax 0x "/ 1"%02X b\n "'

最終結果を確認する:
(上記で見つけたアドレス情報を、「1 0x50」の代わりにi2cdetectを使用して使用してください)

Sudo i2cdump 1 0x50 b> test.bin
cat test.bin
x = $(sum -s test.bin | cut -d "" -f 1); echo "$ x%256" | bcは、良好であれば0を返す必要があります

3
JJones