Mac miniでmodular-xorg (4.0_STABLE) まとめ編
2008/06/09(月) 28:14 NetBSD はてブ情報 はてブに登録 はてブ数

少し前に試した-currentでは歯が立たなかったXですが、4.0_STABLEでは
  • X.org (modular-xorg)
  • SXGA出力 (HorizSyncチューニング)
  • DVI出力 (Option "MonitorLayout" "TMDS, NONE")
が実現できました。残念ながらXを終了した際に発生する暗転およびハングアップ(その後のfsck)は解決できませんでしたが、Xを起動した状態でもshutdownやrebootを使えばハングアップとfsckを回避できることがわかりました。

xorg.conf
Section "Module"
    Load        "dbe"   # Double buffer extension
    SubSection  "extmod"
      Option    "omit xfree86-dga"   # don't initialise the DGA extension
    EndSubSection
    Load        "freetype"
EndSection
Section "Files"
    FontPath   "/usr/pkg/lib/X11/fonts/misc/"
    FontPath   "/usr/pkg/lib/X11/fonts/TTF/"
    FontPath   "/usr/pkg/lib/X11/fonts/Type1/"
    FontPath   "/usr/pkg/lib/X11/fonts/100dpi/"
    FontPath   "/usr/pkg/lib/X11/fonts/75dpi/"
    FontPath   "/usr/pkg/lib/X11/fonts/local/"
EndSection
Section "ServerFlags"
EndSection
Section "InputDevice"
    Identifier  "Keyboard1"
    Driver      "kbd"
    Option "Protocol" "wskbd"
    Option "Device" "/dev/wskbd1"
    Option "AutoRepeat" "500 30"
    Option "XkbRules"   "xorg"
    Option "XkbModel"   "pc101"
    Option "XkbLayout"  "us"
EndSection
Section "InputDevice"
    Identifier  "Mouse1"
    Driver      "mouse"
    Option "Protocol"    "wsmouse"      # wsmouse protocol
    Option "Device"      "/dev/wsmouse"
    Option "ZAxisMapping"   "4 5 6 7"
EndSection
Section "Monitor"
    Identifier  "L565"
    HorizSync   31.5 - 65
    VertRefresh 40-150
EndSection
Section "Device"
    Identifier  "RADEON"
    Driver      "radeon"
    ChipID      0x5962
    BusID       "PCI:0:16:0"
    Option      "AGPMode" "2"
    Option      "MonitorLayout" "TMDS, NONE"
EndSection
Section "Screen"
    Identifier  "Screen 1"
    Device      "RADEON"
    Monitor     "L565"
    DefaultDepth 16
    Subsection "Display"
        Depth       16
        Modes       "1280x1024" "1024x768" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
EndSection
Section "ServerLayout"
    Identifier  "Simple Layout"
    Screen "Screen 1"
    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"
EndSection
uname -a
NetBSD mini. 4.0_STABLE NetBSD 4.0_STABLE (GENERIC) #0: Wed May 28 10:20:33 PDT 2008  builds@wb24:/home/builds/ab/netbsd-4/macppc/200805280002Z-obj/home/builds/ab/netbsd-4/src/sys/arch/macppc/compile/GENERIC macppc
X -version
X Window System Version 1.3.0
Release Date: 19 April 2007
X Protocol Version 11, Revision 0, Release 1.3
Build Operating System: UNKNOWN 
Current Operating System: NetBSD mini. 4.0_STABLE NetBSD 4.0_STABLE (GENERIC) #0: Wed May 28 10:20:33 PDT 2008  builds@wb24:/home/builds/ab/netbsd-4/macppc/200805280002Z-obj/home/builds/ab/netbsd-4/src/sys/arch/macppc/compile/GENERIC macppc
Build Date: 02 June 2008
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Module Loader present

名前:  非公開コメント   

  • TB-URL  http://www.tokuda.net/diary/0655/tb/

Mac miniでmodular-xorg (4.0_STABLE) DVI接続編
2008/06/09(月) 28:03 NetBSD はてブ情報 はてブに登録 はてブ数

さて、Mac miniのディスプレイ出力はDVIと(変換コネクタを使った)アナログRGBの二つが使えます。

ここまでアナログRGBでがんばってきたのですが、せっかくDVI接続できるNANAOのFlexScan L565があることですからDVI出力ではっきりくっきり楽しみたいところです。

まずは、素朴にDVI端子をつないで起動するパターンを試します。

このパターンだとコンソールはちゃんと表示されますが、Xを起動した後暗転してしまいます。OSは生きているようなのでリモートからログインしてrebootすることはできます。暗転した状態でDVIケーブルを抜き、アナログRGBケーブルを接続しても、そちらも暗転しています。

次に、アナログRGBでXを起動したのを確認後、おもむろにDVIケーブルに差し替えてみるパターンを試します。

このパターンだと当然ながらアナログRGBでXが表示されますが、DVIケーブルに差し替えても信号が出ていないらしく、何も表示されません。アナログRGBケーブルに戻すとちゃんとXが表示されます。

うーん、困りました。

ふとman radeonと打って、DVIというのを検索してみると次のような記載がありました。
       Option "MonitorLayout" "string"
              This  option  is  used  to overwrite the detected monitor types.
              This is only required when driver makes a false detection.   The
              possible monitor types are:
              NONE   -- Not connected
              CRT    -- Analog CRT monitor
              TMDS   -- Desktop flat panel
              LVDS   -- Laptop flat panel
              This option can be used in following format:
              Option "MonitorLayout" "[type on primary], [type on secondary]"
              For example, Option "MonitorLayout" "CRT, TMDS"

              Primary/Secondary head for dual-head cards:
              (when  only  one port is used, it will be treated as the primary
              regardless)
              Primary head:
              DVI port on DVI+VGA cards
              LCD output on laptops
              Internal TMDS port on DVI+DVI cards
              Secondary head:
              VGA port on DVI+VGA cards
              VGA port on laptops
              External TMDS port on DVI+DVI cards

              The default value is undefined.
うーむ、明示的にモニタのタイプを指定するオプションのようです。今回の用途であればTMDS (デスクトップ用フラットパネル) が該当しますかね。ということで、次のようにxorg.confに指定してみました。
Section "Device"
    Identifier  "RADEON"
    Driver      "radeon"
    ChipID      0x5962
    BusID       "PCI:0:16:0"
    Option      "AGPMode" "2"
    Option      "MonitorLayout" "TMDS"
EndSection
いざ、起動してみるとDVI接続されたディスプレイにくっきりとXが表示されました! どうやらアタリのオプションだったみたいですね。

Xorg.0.logにセカンドポートがおかしいと表示されています。
(WW) RADEON(0): Invalid Monitor type specified for 2nd port
明示的にセカンドポートのディスプレイはないよ、と設定してみます。
    Option      "MonitorLayout" "TMDS, NONE"
すると、先ほどの警告は消えました。

名前:  非公開コメント   

  • TB-URL  http://www.tokuda.net/diary/0654/tb/

Mac miniでmodular-xorg (4.0_STABLE) 画面暗転ハングアップ編
2008/06/09(月) 27:04 NetBSD はてブ情報 はてブに登録 はてブ数

Mac miniでXといえば、Xを終了すると暗転後にハングアップするという事象が知られています。

ハングアップすると画面の暗転に加え、キーボードも効かず、リモートからのログインもできません。

やむなく電源ボタン長押しによる強制終了するしかなく、起動後はほぼ間違いなくfsckが走ります。このfsckが非常に時間もかかりますし、ファイルシステムの整合性がとれなくなるのは気分が悪いものです。

対策というほどではないですが、shutdown -r nowやrebootを使えばハングアップすることはなくOSが終了し、再起動後のfsckを拝むことはなくなるようです。

名前:  非公開コメント   

  • TB-URL  http://www.tokuda.net/diary/0653/tb/

Mac miniでmodular-xorg (4.0_STABLE) SXGA編
2008/06/09(月) 26:56 NetBSD はてブ情報 はてブに登録 はてブ数

が、1280x1024の解像度では起動しません。/var/log/Xorg.0.logを1280でgrepしてみます。

先ほどの設定だと1024x768の解像度で起動しています。ディスプレイは1280x1024の解像度が出せるのでがんばってみましょう。

/var/log/Xorg.0.logを1280でgrepすると次のようなメッセージが出ています。
mini# grep 1280 /var/log/Xorg.0.log
(II) RADEON(0): Not using default mode "1280x960" (hsync out of range)
(II) RADEON(0): Not using default mode "1280x960" (hsync out of range)
(II) RADEON(0): Not using default mode "1280x1024" (hsync out of range)
(II) RADEON(0): Not using default mode "1280x1024" (hsync out of range)
(II) RADEON(0): Not using default mode "1280x1024" (hsync out of range)
(II) RADEON(0): Not using mode "1280x1024" (no mode of this name)
どうもhsyncがだめなのですね。色々試してみましょう。
  1. HorizSync 31.5 - 55 → だめでした (1024x768)
  2. HorizSync 31.5 - 60 → だめでした (1024x768)
  3. HorizSync 31.5 - 65 → 動いた!! (1280x1024)
これでなんとか表示はバッチリです。

名前:  非公開コメント   

  • TB-URL  http://www.tokuda.net/diary/0652/tb/

Mac miniでmodular-xorg (4.0_STABLE) 動作確認編
2008/06/09(月) 26:53 NetBSD はてブ情報 はてブに登録 はてブ数

とりあえず、次のxorg.confで1024x768の解像度でXが起動しました。
Section "Module"
    Load        "dbe"   # Double buffer extension
    SubSection  "extmod"
      Option    "omit xfree86-dga"   # don't initialise the DGA extension
    EndSubSection
    Load        "freetype"
EndSection
Section "Files"
    FontPath   "/usr/pkg/lib/X11/fonts/misc/"
    FontPath   "/usr/pkg/lib/X11/fonts/TTF/"
    FontPath   "/usr/pkg/lib/X11/fonts/Type1/"
    FontPath   "/usr/pkg/lib/X11/fonts/100dpi/"
    FontPath   "/usr/pkg/lib/X11/fonts/75dpi/"
    FontPath   "/usr/pkg/lib/X11/fonts/local/"
EndSection
Section "ServerFlags"
EndSection
Section "InputDevice"
    Identifier  "Keyboard1"
    Driver      "kbd"
    Option "Protocol" "wskbd"
    Option "Device" "/dev/wskbd1"
    Option "AutoRepeat" "500 30"
    Option "XkbRules"   "xorg"
    Option "XkbModel"   "pc101"
    Option "XkbLayout"  "us"
EndSection
Section "InputDevice"
    Identifier  "Mouse1"
    Driver      "mouse"
    Option "Protocol"    "wsmouse"      # wsmouse protocol
    Option "Device"      "/dev/wsmouse"
    Option "ZAxisMapping"   "4 5 6 7"
EndSection
Section "Monitor"
    Identifier  "L565"
    HorizSync   31.5 - 48.5
    VertRefresh 40-150
EndSection
Section "Device"
    Identifier  "Standard VGA"
    VendorName  "Unknown"
    BoardName   "Unknown"
    Driver     "vga"
EndSection
Section "Device"
    Identifier  "RADEON"
    Driver      "radeon"
    ChipID      0x5962
    BusID       "PCI:0:16:0"
    Option      "AGPMode" "2"
    #VideoRam    2048
    # Insert Clocks lines here if appropriate
EndSection
Section "Screen"
    Identifier  "Screen 1"
    Device      "RADEON"
    Monitor     "L565"
    DefaultDepth 16
    Subsection "Display"
        Depth       8
        Modes       "1280x1024" "1024x768" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
    Subsection "Display"
        Depth       16
        Modes       "1280x1024" "1024x768" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
    Subsection "Display"
        Depth       24
        Modes       "1024x768" "1280x1024" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
EndSection
Section "ServerLayout"
    Identifier  "Simple Layout"
    Screen "Screen 1"
    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"
EndSection

名前:  非公開コメント   

  • TB-URL  http://www.tokuda.net/diary/0651/tb/

今日のボク
2008/06/09(月) 26:25 今日のボク はてブ情報 はてブに登録 はてブ数

半袖で寝たので少し鼻水が出てます。

名前:  非公開コメント   

  • TB-URL  http://www.tokuda.net/diary/0650/tb/