i810 のデュアルモニタでしかも Xinerama

<< 戻る   トップ >>

ここのところ、Dell Inspiron 6000 でデュアルモニタをつくるということにかまけていた。これがうまくいかなかったのだ。

試行錯誤することしばらく、やっと思うように動くようになった。まだ問題があるにはあるのだが、マイナーなトラブルだからなんとかなるだろう。

問題その1 PCI バスID

これは以前も悩んだことがあるのだが、すっかり忘れていた問題だ。グラフィックチップを自動検出させると、なぜか PCI:0:2:1 を使おうとするのだが、PCI:0:2:0 を使わなくてはいけない。ちなみに /sbin/lspci の出力は次の用になる。

00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)

どちらも i810系のグラフィックチップのバスだということになるので、おそらくこれに騙されるのだろう。

問題その2 1680x1050+1280x1024 で表示されない

デュアルモニタは Inspiron の WSXGA+(1680x1050) の内蔵ディスプレイと、BenQ FP767 SXGA(1280x1024) の外部ディスプレイの組み合わせである。最初は WSXGA+ がいうことを聞かなかった。X-Window のログをみるとどうやら DDC の周波数が大きすぎてダメだよ、といっているような気がしたので、i810 X-Window ドライバの "DDC" を使わないように設定してみた。ところで DDC ってなによ、と今さら調べてみたところ、"Display Data Channel" のことで、ディスプレイの情報を取得したり、最新の規格ではディスプレイのコントロールが可能だそうだ。...ということは、 DDC に謀(たばか)られていたということか?

とにかく DDC をオフにすると内蔵ディスプレイの WSXGA+ 表示が可能となった。ところが、なぜか外部ディスプレイが VGA に退化してしまった。水平・垂直同期を "DPMS" 経由で取得する設定になっていたので、これを設定した。もしかすると DDC をオフにした関係でモニタからの情報が得られなくなったのかもしれない。

問題その3 GNOME の見えざる壁
以上の設定で X-Window 的には問題はなくなったのだが、なぜか GNOME で起動したウィンドウが外部ディスプレイに表示され、しかも内蔵ディスプレイに移動できないという問題が発生。海外でも同様の問題に遭遇したヒトがいたらしく、"Invisible Barrier" がある、なんて表現していた。で、この問題は GNOME の設定ファイル ~/.gconf/desktop/gnome/screen 以下のファイルの問題だそうで、このフォルダ内をクリアしてから起動すれば解決する。わかってみればなんのことはない。

ちと長いが以下に /etc/X11/xorg.conf の内容を記す。

# Xorg configuration created by system-config-display

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
        Option      "XkbModel" "jp106"
        Option      "XkbLayout" "jp"
EndSection

Section "InputDevice"
        Identifier  "Synaptics"
        Driver      "synaptics"
        Option      "Device" "/dev/input/mice"
        Option      "Protocol" "auto-dev"
        Option      "Emulate3Buttons" "yes"
        Option      "LeftEdge" "120"
        Option      "RightEdge" "830"
        Option      "TopEdge" "120"
        Option      "BottomEdge" "650"
        Option      "FingerLow" "14"
        Option      "FingerHigh" "15"
        Option      "MaxTapMove" "110"
        Option      "VertScrollDelta" "20"
        Option      "HorizScrollDelta" "20"
        Option      "MinSpeed" "0.3"
        Option      "MaxSpeed" "0.75"
EndSection

Section "InputDevice"
        Identifier  "stylus"
        Driver      "wacom"
        Option      "Device" "/dev/wacom"
        Option      "Type" "stylus"
        Option      "USB" "on"
        Option      "Gimp" "on"
        Option      "ScreenNo" "1"
EndSection

Section "InputDevice"
        Identifier  "eraser"
        Driver      "wacom"
        Option      "Device" "/dev/wacom"
        Option      "Type" "eraser"
        Option      "USB" "on"
        Option      "Gimp" "on"
        Option      "ScreenNo" "1"
EndSection

Section "InputDevice"
        Identifier  "cursor"
        Driver      "wacom"
        Option      "Device" "/dev/wacom"
        Option      "Type" "cursor"
        Option      "USB" "on"
        Option      "Gimp" "on"
        Option      "ScreenNo" "1"
EndSection

Section "Device"
        # for Internal LFD
        Identifier  "Videocard0"
        Driver      "i810"
        VendorName  "Intel Corpotation"
        BoardName   "Mobile 915GM/GMS/910GML Express Graphics Controller"
        BusID       "PCI:0:2:0"
        Option      "DDC" "no"
        Option      "VBERestore" "yes"
        Option      "MonitorLayout" "CRT,LFP"
        Screen      0
EndSection

Section "Device"
        # for External LFD
        Identifier  "Videocard1"
        Driver      "i810"
        VendorName  "Intel Corpotation"
        BoardName   "Mobile 915GM/GMS/910GML Express Graphics Controller"
        BusID       "PCI:0:2:0"
        Option      "VBERestore" "no"
        Option      "MonitorLayout" "CRT,LFP"
        # Option      "DevicePresence" "yes"
        Screen      1
EndSection

Section "Monitor"
        # for Internal LFD
        Identifier   "Monitor0"
        VendorName   "Dell"
        ModelName    "Inspiron 6000"
        HorizSync    31.5 - 83.0
        VertRefresh  56.0 - 76.0
        Option      "dpms"
EndSection

Section "Monitor"
        # for External LFD
        Identifier   "Monitor1"
        VendorName   "BenQ"
        ModelName    "BenQ FP767"
        HorizSync    31.5 - 67.0
        VertRefresh  50.0 - 75.0
        Option            "dpms"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Videocard0"
        Monitor    "Monitor0"
        DefaultDepth     24
        SubSection "Display"
                Viewport   0 0
                Depth     24
                # Modes    "1280x800"
                Modes    "1680x1050"
                # Modes "1280x1024"
                # Virtual       2048 1024
        EndSubSection
EndSection

Section "Screen"
        Identifier "External"
        Device     "Videocard1"
        Monitor    "Monitor1"
        DefaultDepth     24
        SubSection "Display"
                Viewport   0 0
                Depth     24
                Modes    "1280x1024"
        EndSubSection
EndSection

Section "ServerLayout"
        Identifier     "Multihead layout"
        Screen      0  "Screen0" RightOf "External"
        Screen      1  "External" 0 0 
        InputDevice    "Keyboard0" "CoreKeyboard"
        InputDevice    "Synaptics" "CorePointer"
        InputDevice    "stylus" "SendCoreEvents"
        InputDevice    "eraser" "SendCoreEvents"
        InputDevice    "cursor" "SendCoreEvents"
        Option      "Xinerama" "on"
EndSection

あとは Gimp で WACOM のタブレットがちゃんと機能すればよし。なんでちゃんとスタイラスに沿って移動するのに線がかけないのだろう。


作成: 2007-02-15 21:26:45.0更新: 2007-02-15 22:14:18.0
http://museo-anonimo.jp/nanban/?id=326,http://museo-anonimo.jp/nanban/tr/326