09 May 2010

(Linux) XOrgで不必要なディスプレイ LVDS を無効化する

LinuxのXOrgで、ハードウエアとして認識されている「低解像度の」ディスプレイに引きずられて、「すべてのモニタで同じ画像を表示(ミラー)」が低い解像度でしか利用できない場合の回避手段。

■ 検証環境
OS: Ubuntu 10.04
マザーボード: AOpen i915GMm-HFS (i915GMチップセット)
接続モニタ: DVIポートに1980x1080パネル
        RGBポートに1980x1080パネル

■ 初期設定(OSインストール直後)の状態
/etc/X11 ディレクトリに xorg.conf ファイルは存在していない。
xrandr コマンドの出力は次のとおり

# xrandr Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 4096 x 4096 VGA1 connected (normal left inverted right x axis y axis) 1920x1080 60.0 + 1680x1050 60.0 1280x1024 75.0 60.0 1440x900 75.0 59.9 1280x960 60.0 1152x864 75.0 1024x768 75.1 70.1 60.0 832x624 74.6 800x600 72.2 75.0 60.3 56.2 640x480 72.8 75.0 66.7 60.0 720x400 70.1 LVDS1 connected (normal left inverted right x axis y axis) 1024x768 60.0 + 85.0 75.0 70.1 60.0 832x624 74.6 800x600 85.1 72.2 75.0 60.3 56.2 640x480 85.0 72.8 75.0 59.9 720x400 85.0 640x400 85.1 640x350 85.1 DVI1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 476mm x 268mm 1920x1080 60.0*+ 1680x1050 60.0 1280x1024 75.0 60.0 1440x900 59.9 1280x960 60.0 1024x768 75.1 70.1 60.0 832x624 74.6 800x600 72.2 75.0 60.3 56.2 640x480 72.8 75.0 66.7 60.0 720x400 70.1 TV1 disconnected (normal left inverted right x axis y axis) TV2 disconnected (normal left inverted right x axis y axis)

状況としては、LVDSデバイスが見えている状態になっている。また、電源を切っているにもかかわらず、VGA(RGBポート)のディスプレイも認識されている。

システム - 設定 - モニタ を開いたところ、次のようになっている

20100509-xorg-gdispprop-02.png

複数画面をミラーしようと、「すべてのモニタで同じ画像」チェックボックスをONにすると、LVDSに引きずられて1024x768に解像度が下げられてしまう

20100509-xorg-gdispprop-03.png

■ 対策(LVDSの無効化)

これを防ぐには、LVDS(インテルのビデオドライバではLVDS1)を無効化すればよい。

/etc/X11/xorg.conf を新に作成し (すでに存在するなら、加筆)、LVDSを無効化する。

/etc/X11/xorg.conf
Section "Device" Identifier "Configured Video Device" Driver "intel" Option "monitor-LVDS" "LVDS1" EndSection Section "Monitor" Identifier "LVDS1" Option "Ignore" "true" EndSection

いったんログアウトして、XOrgを再起動すると、LVDSが無効化される。 その状態で、システム - 設定 - モニタ を開いたら次のようなダイアログが表示される。(LVDSの低解像度に引きずられることなく、1920x1080でミラー表示されている)

20100509-xorg-gdispprop-01.png

■ 参考にしたページ
Xorg RandR 1.2
Ubuntuで外部ディスプレイを活用する方法 (デュアルディスプレイとか回転表示とか)