Inspiron 1510で外部モニタを使えるようにするまとめ

***この後いろいろと試行錯誤して5月11日に最終版としてまとめている***

色々なページを参考に色々試行錯誤でやってきたが、多分、以下の方法が良いのではないかと思う。

  1. デュアルヘッド用のxorg.configを用意する。(後述)
  2. 次の方法でドライバをインストールする。(私の場合、Runlevel 3で実行している。)
  # init 3
  # rpm -Uhv http://rpm.livna.org/livna-release-6.rpm
  # yum install kmod-fglrx xorg-x11-drv-fglrx xorg-x11-drv-fglrx-libs-32bit.x86_64
  # service fglrx restart
  # cp /etc/X11/xorg.conf /etc/X11/xorg.conf.00
  # cp 用意したxorg.conf /etc/X11/xorg.conf
  # init 5

なお、私がaticonfigの作成したものをベースに作ったxorg.confは以下の通り。(参考までに。動作保証はしない。性能を求める場合は、ATIのドライバをタンロードするなどする必要があると思われる。)ただし、この方法では「システム」メニューの「管理」⇒「ディスプレ」管理ツールが使えなくなる。多分、xorg.confの中にディスプレ管理ツールでは解釈できない構造があるのだろう。

# Xorg configuration created by system-config-display

Section "ServerLayout"
	Identifier     "Multihead layout"
	Screen      0  "Screen0" 0 0
	InputDevice    "Keyboard0" "CoreKeyboard"
	InputDevice    "Synaptics" "CorePointer"
	Option	    "Xinerama" "off"
	Option	    "Clone" "on"
EndSection

Section "Files"
	ModulePath   "/usr/lib64/xorg/modules"
EndSection

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"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor 1280x800"
	Option	    "dpms"
EndSection

Section "Monitor"
	Identifier   "Monitor1"
	VendorName   "Monitor Vendor"
	ModelName    "LCD Panel 1280x1024"
 ### Comment all HorizSync and VertSync values to use DDC:
	HorizSync    60.0 - 65.0
	VertRefresh  50.0 - 65.0
	Option	    "dpms"
EndSection

Section "Device"
	Identifier  "Videocard0"
	Driver      "fglrx"
	BoardName   "ATI Technologies Inc RS482 [Radeon Xpress 200M]"
	Option	    "VideoOverlay" "on"
	Option	    "DesktopSetup" "clone"
	Option	    "Centermode" "on"
	BusID       "PCI:1:5:0"
EndSection

Section "Device"
	Identifier  "Videocard1"
	Driver      "fglrx"
	VendorName  "Videocard Vendor"
	BoardName   "ATI Technologies Inc RS482 [Radeon Xpress 200M]"
	BusID       "PCI:1:5:0"
	Screen      1
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Videocard0"
	DefaultDepth     24
	SubSection "Display"
		Viewport   0 0
		Virtual   1280 1024
		Depth     24
		Modes    "1280x1024" "1280x960" "1280x800" "1152x864" "1024x768" "800x600" "640x480"
	EndSubSection
EndSection

Section "Screen"
	Identifier "Screen1"
	Device     "Videocard1"
	Monitor    "Monitor1"
	DefaultDepth     24
	SubSection "Display"
		Viewport   0 0
		Virtual   1280 1024
		Depth     24
		Modes    "1280x1024" "1280x800" "1152x864" "1024x768" "800x600" "640x480"
	EndSubSection
EndSection

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

ATI独自ドライバを利用するxorg.confを生成するはaticonfigを使う方法もある。今回は外部モニタに出力するのが目的だったので、上のxorg.confで良いが、他の機能をつける場合はaiconfigで生成する方がいいだろう。ただ、aticonfigの実行後、

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

を追加しないとハードウェア機能が有効にならないようである。(上のxorg.confからExtensionセクションを削除すると、外部モニタは使えるがOpenGLはソフトウェア処理になってしまうようだ。)
ハードウェア処理をしているかソフトウェア処理をしているかはfglxinfoコマンド分かるようだ。
ハードウェア処理をしている場合:

# fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI Radeon Xpress Series
OpenGL version string: 2.0.6458 (8.36.5)

となり、ソフトウェアの場合は、

# fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: Mesa project: www.mesa3d.org
OpenGL renderer string: Mesa GLX Indirect
OpenGL version string: 1.2 (1.5 Mesa 6.5.1)

となる。実際にglxgearsを実行すると速さが違うので直ぐにわかると思う。

上のxorg.confは「クローン」型のデュアルヘッドを実現するが、GNOMEの[システム][管理][ディスプレ]管理ツールを起動するとデュアルヘッドが有効になってない。有効にして[OK]を押すとxorg.confの先頭部分が次のように書き換わる。

Section "ServerLayout"
	Identifier     "Multihead layout"
	Screen      0  "Screen0" LeftOf "Screen1"
	Screen      1  "Screen1" 0 0
	InputDevice    "Keyboard0" "CoreKeyboard"
	InputDevice    "Synaptics" "CorePointer"
	Option	    "Xinerama" "off"
	Option	    "Clone" "on"
EndSection

このxorg.confを使って立上げると、クローン型ではなく拡張デスクトップ型として立ち上がってします。(Option "Clone" "on" となっているのに、そうならない。これはxorgのバグか?) 上のxorg.confとディスプレ管理ツールが生成したxorg.confを比べると以下の通り。

5c5,6
< 	Screen      0  "Screen0" 0 0
    • -
> Screen 0 "Screen0" LeftOf "Screen1" > Screen 1 "Screen1" 0 0 38a40,41 > > ### Comment all HorizSync and VertSync values to use DDC: 60c63 < Driver "fglrx"
    • -
> Driver "radeon"

Driverの片一方がfglrxではなくradeonに戻ってしまうが、こちらはこのままでも問題なく動く。

参考にしたホームページによっては

Section "ServerFlags"
	Option	    "AIGLX" "off"
EndSection

を追加しているものもあったが、取っても問題はないよなので、今のところは追加してない。


立上げ直後にノート本体のLCDが使えないのは悲しいが、取りあえずは回避策があるので、今のところはこれ以上深追いはしないことにした。

次は無線LANにでもトライするか。