2010年8月4日水曜日

IBM T210 QXGAモニターとLinux X11 Windows System

X11の場合は、Monitor sectionにModelineを追加するだけと思っていましたが、そうは簡単はいきませんでした。AMD 690G のXpress 1250 graphics chipを利用している場合には、DVI single linkの表示が可能となるまでリフレッシュレートを下げて対応できました。ですが、HD4350のPCI exporess graphics cardの場合には、xorg.confに定義した内容がDVI接続しているモニターとは一致しないために、xorg.confに記載したModelineが使われていませんでした。

参考リンクのモニター記載方法の記述を見つけて、xorg.confのモニターの記載方法を変更したところ、HD4350でもCCC(Catalyst Control Center)がインストールされていない状態ならば、リフレッシュレートを下げ、T210にQXGA表示をした場合でも、ゴーストや陰が見えなくなりました。

ですが、HD4350 + CCC 10.7の環境でモニターの記載方法を変更するとX11 Serverの処理が止まってしまい、画面がblack outします。この対策はまだ見つけられていません。

 

環境 結果
HD4350 + CCC 10.7の環境において、xorg.confのModelineを追加 × リフレッシュレートは60Hzのまま。ゴーストやピングの陰は発生する。
複数モニターがあるため、xorg.confのMonitorと接続したモニターが異なっているために定義が適用されないためらしい。
X1250 + CCC 9.3 環境でxorg.confにModelineを追加 ○ リフレッシュレートを35Hzまで下げたところ、ゴースト・陰の発生がなくなった。しかし、レートが低いためマウスポインターの追従性が悪い。
HD4350 + 標準ドライバーにおいてモニター記載方法を変更 ○ リフレッシュレートを45Hzまで下げたところ、ゴースト・陰の発生がなくなった。マウスカーソルの追従性も許容できる範囲であろう。※1
HD4350 + CCC 10.7 においてモニター記載方法を変更 × X11 Serverの起動途中で処理が止まり、画面がblack out。システムリセットが必要となる。

※1: その後、システム再起動を繰り返したところ、45Hzでもゴーストの発生や画面が右半分に圧縮されてしまう現象が確認されました。DVIのSingle linkになっているのかもしれません。38Hzまで下げるとシステム再起動を繰り返しても、問題の発生は見られませんでした。

今回の環境は以下の通りです。

  • M/B: Gigabyte GA-MA69SM-S2H, CPU: AMD X2 BE-2400, 6GB Memory
  • Linux: CentOS 5.5 64bit
  • X windows system: 7.1.1 x86_64
  • ATI Xpress 1250 (AMD 690G chip set integrated)
  • ATI HD4350 256MB (玄人志向)
  • IBM T210 QXGAモニター (ATS Direct, DVI dual link cable)

 

1. ×HD4350 + CCC 10.7, リフレッシュレート変更不可

/etc/X11/xorg.confの一部を示します。リフレッシュレート(VerRefresh)の51.72はWindows 7のPowerStripにて動作した周波数です。T210は60Hzのままで動作し、ピンクの陰とゴーストは発生します。Modelineの値は

% gtf 2048 1536 51.72

の結果です。

Section "Monitor"
        Identifier   "IBM-T210"
        VendorName   "IBM"
        ModelName    "T210 6659-HG2"
        HorizSync    70 - 90
        VertRefresh  51.72
        Modeline "2048x1536_51.72"  227.78  2048 2192 2416 2784  1536 1537 1540 1582  -HSync +Vsync
        Option      "DPMS" "true"
EndSection
Section "Device"
        Identifier  "aticonfig-Device[0]-0"
        Driver      "fglrx"
        BusID       "PCI:1:0:0"
EndSection
Section "Screen"
        Identifier "aticonfig-Screen[0]-0"
        Device     "aticonfig-Device[0]-0"
        Monitor    "IBM-T210"
        DefaultDepth     24
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

この修正をxorg.confに適用して、X11 Serverを再起動しても、T210が示すリフレッシュレートは60Hzのままです。

 

このときの /var/log/Xorg.0.logには以下のようなログがあります。


(II) fglrx(0): Connected Display0: DFP 5 [dfp5]
(II) fglrx(0): Display0 EDID data ---------------------------
(II) fglrx(0): Manufacturer: IBM  Model: 1a03  Serial#: 16843009



(II) fglrx(0): Output DFP1 using monitor section IBM-T210
(II) fglrx(0): Output DFP5 has no monitor section

(II) fglrx(0): Output CRT1 has no monitor section
(II) fglrx(0): Output CRT2 has no monitor section
(WW) fglrx(0): Only one display is connnected, single mode is enabled
(II) fglrx(0): Output DFP1 disconnected
(II) fglrx(0): Output DFP5 connected

(II) fglrx(0): Output CRT1 disconnected
(II) fglrx(0): Output CRT2 disconnected
(II) fglrx(0): Using exact sizes for initial modes
(II) fglrx(0): Output DFP5 using initial mode 2048x1536
(II) fglrx(0): DPI set to (75, 75)
(==) fglrx(0): Using gamma correction (1.0, 1.0, 1.0)
(II) fglrx(0): Adapter ATI Radeon HD 4300/4500 Series has 2 configurable heads and 1 displays connected.
(==) fglrx(0): QBS disabled
(==) fglrx(0):  PseudoColor visuals disabled

以下はログの推測です。

  • DFP5 (Digital Flat Panel)は、IBM T210に接続されている。インターフェースはDVI-D port。
  • DFP1 は、xort.confのMontor section ‘IBM-T210’を使っているが、モニターが接続されてはいない。

玄人志向HD4350 graphics cardには、DVI-D, HDMI, D-sub15の三つのInterfaceがあります。DFP5がDVI-D, HDMIがDFP1なのかもしれません。この辺り、ADMのサイトに資料は見当たらないように思えます。

 

2. X1250 + CCC 9.3 Single Link, リフレッシュレート変更可

HD4350がうまくいかないのならば、on board VGAのX1250はどうかと、BIOSで切り替えし、CCC 9.3に入れ替えてみました。xorg.confを書き換えて、リフレッシュレートを51Hzにしてみしまた。モニターの表示が60Hzではなくて、2048x1536 51Hzとなっています。ただし、DVIはsingle linkになってしまうようで、画面が半分になり、表示の乱れも大きいです。そこで、50Hzから5Hzずつリフレッシュレートを下げていったところ、35Hzにて表示の安定した画面が得られました。

35Hzのときのxorg.confの抜粋を以下に示します。Modelineはgtf 2048 1536 35 の結果です。VerRefreshは決めうちにしていました。

Section "Monitor"
        Identifier   "IBM-T210"
        Option      "VendorName" "IBM"
        Option      "ModelName" "T210 6659-HG2"
        Option      "DPMS" "true"
        VertRefresh  35
  Modeline "2048x1536_35.00"  149.18  2048 2168 2384 2720  1536 1537 1540 1567  -HSync +Vsync

EndSection
Section "Device"
        Identifier  "aticonfig-Device[0]-0"
        Driver      "fglrx"
        BusID       "PCI:1:5:0"
EndSection
Section "Screen"
        Identifier "aticonfig-Screen[0]-0"
        Device     "aticonfig-Device[0]-0"
        Monitor    "IBM-T210"
        DefaultDepth     24
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

また、このときのXorg.0.logの内容は下記のようになります。


(II) fglrx(0): ***Display: ConnectedDisplayTypes=0x00000080, disabled=0x00000000
(II) fglrx(0): Connected Display1: DFP on secondary TMDS [tmds2i]
(II) fglrx(0): Display1 EDID data ---------------------------



(WW) fglrx(0): Only one display is connnected,so single mode is enabled
(II) fglrx(0): Primary Controller - DFP on secondary TMDS
(II) fglrx(0): Internal Desktop Setting: 0x00000001
(II) fglrx(0): POWERplay not supported on this hardware
(WW) fglrx(0): Only one display is connnected,so single mode is enabled

これで良ければ、HD4350 graphics cardやDVI-D dual link cableを買うことはなかったのですが。リフレッシュレートが35Hzでは、マウスカーソルの追従性が心持ち良くないようです。

dvi-35
DVI 35HzのときのT210 モニター表示です。

 

3.  HD4350 + 標準ドライバー、リフレッシュレート変更可

X1250をBIOSからdisableとして、CCC 9.3をuninstallしたところで、HD4350 + 標準ドライバーR500にて、リフレッシュレートの変更を試してみました。50Hzから1Hzずつ下げていったところ、45Hzにて画面表示の乱れがなくなりました。ですが、このリフレッシュレートでも表示の乱れが発生することもあり、38Hzまで下げたところで安定した表示になりました。

45Hzのときのxorg.confの抜粋を以下に示します。Modelineはgtf 2048 1536 45 の結果です。

Section "Monitor"
        Identifier   "IBM-T210-VGA"
        VendorName "IBM"
        ModelName "T210 6659-HG2"
        Option "monitor-VGA-0" "IBM-T210-VGA"
        Option      "DPMS" "true"
        Option      "ReducedBlanking"
        VertRefresh  60
        Modeline "2048x1536_60.00"  266.95  2048 2200 2424 2800  1536 1537 1540 1589  -HSync +Vsync
EndSection
Section "Monitor"
        Identifier   "IBM-T210-DVI"
        VendorName "IBM"
        ModelName "T210 6659-HG2"
        Option "monitor-DVI-0" "IBM-T210-DVI"
        Option      "DPMS" "true"
        Option      "ReducedBlanking"
        VertRefresh  35-55
        Modeline "2048x1536_45.00"  195.17  2048 2176 2400 2752  1536 1537 1540 1576  -HSync +Vsync

EndSection
Section "Device"
    Identifier  "Videocard0"
    Driver      "r500"
    Option "monitor-VGA-0" "IBM-T210-VGA"
    Option "monitor-DVI-0" "IBM-T210-DVI"
    Option "RROutputOrder" "IBM-T210-DVI"

EndSection
Section "Screen"
    Identifier "Screen0"
    Device     "Videocard0"
    Monitor    "IBM-T210-DVI"
    DefaultDepth     24
    SubSection "Display"
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

“IBM-T210-VGA”をD-sub 15 analog VGA用として定義しました。こちらのリフレッシュレートは 60Hzです。DVI用には”IBM-T210-DVI”を定義しました。

 

また、このときのXorg.0.logの内容は下記のようになります。


(II) R500(0): Output VGA-0 using monitor section IBM-T210-VGA
(II) R500(0): I2C bus "VGA-0" initialized.

(II) R500(0): Output HDMI-0 has no monitor section
(II) R500(0): I2C bus "HDMI-0" initialized.
(II) R500(0): Output DVI-0 using monitor section IBM-T210-DVI
(II) R500(0): I2C bus "DVI-0" initialized.

(II) R500(0): Port0:
  XRANDR name: VGA-0

  Connector: VGA
  CRT2: INTERNAL_KLDSCP_DAC2
  DDC reg: 0x7e50
(II) R500(0): Port1:
  XRANDR name: HDMI-0
  Connector: HDMI-B
  DFP1: INTERNAL_UNIPHY
  DDC reg: 0x7e40
(II) R500(0): Port2:
  XRANDR name: DVI-0
  Connector: DVI-I

  CRT1: INTERNAL_KLDSCP_DAC1
  DFP2: INTERNAL_UNIPHY2
  DDC reg: 0x7f10
(II) R500(0): I2C device "VGA-0:E-EDID segment register" registered at address 0x60.
(II) R500(0): I2C device "VGA-0:ddc2" registered at address 0xA0.
(II) R500(0): Output: VGA-0, Detected Monitor Type: 0
Dac detection success
finished output detect: 0
(II) R500(0): I2C device "HDMI-0:E-EDID segment register" registered at address 0x60.
(II) R500(0): I2C device "HDMI-0:ddc2" registered at address 0xA0.
(II) R500(0): Output: HDMI-0, Detected Monitor Type: 0
finished output detect: 1
(II) R500(0): I2C device "DVI-0:E-EDID segment register" registered at address 0x60.
(II) R500(0): I2C device "DVI-0:ddc2" registered at address 0xA0.
(II) R500(0): Output: DVI-0, Detected Monitor Type: 3
(II) R500(0): EDID data from the display on output: DVI-0
----------------------
(II) R500(0): Manufacturer: IBM  Model: 1a03  Serial#: 16843009



(II) R500(0): Output: VGA-0, Detected Monitor Type: 0
Dac detection success
(II) R500(0): EDID for output VGA-0
(II) R500(0): Output: HDMI-0, Detected Monitor Type: 0
(II) R500(0): EDID for output HDMI-0
(II) R500(0): EDID for output DVI-0
(II) R500(0): Manufacturer: IBM  Model: 1a03  Serial#: 16843009

D-sub 15pinのVGAは”VGA-0”、DVIは”DVI-0”となっているようです。また、ぞれぞれに用意したMontor sectionが割り当てられています。

 

dvi-45
45Hzのときのモニター表示です。

 

4. × HD4350 + CCC 10.7, リフレッシュレート変更失敗

CCC 10.7を再度導入します。DFP5にMonitor sectionを割り当てる設定としましたが、X11 Serverの起動途中で止まってしまいます。そのためシステムリセットをする必要があります。ファイルシステムが壊れてしまう可能性があるため、別途環境を用意して、テストを行う予定です。

 

5. 番外

夜半からの雨で気温の低い早朝のことですが、5分間くらい HD4350 + DVI-D dual linkの環境で60Hz駆動のときに陰やゴーストが見えないことがありました。しばらくするとピンクの陰が出てきました。このことからすると、一番熱の発生が高いGraphics cardが定格の2048x1536 dots, 60Hzに追従できていない可能性があります。モニターはファン内蔵ですから、ほとんど熱を持ちませんし、DVIケーブルもそんなに発熱するものとも思えません。Graphics cardにはフィンのみで放熱ファンはありません。早朝と夜間のみ利用するものでも、ここのところの高温でPCケースの廃熱が間に合わないのかもしれません。冷却スプレーとまでは行かなくとも、ケースを開けて、ファンで冷やせば動作が変わる可能性はあります。

3,450円のgraphics cardに高望みしすぎるとは思いますが、ゲームをするわけではないので、高性能なカードの購入には踏み切れません。

 

6. 参考リンク

 

7. 更新履歴

  • 2010/08/04: Initial release
  • 2010/08/08: Fix typo

0 件のコメント:

コメントを投稿