NetBSD Xorg HDMIでWQHD

WQHDっていうの? 2560x1440の液晶ディスプレイがめっちゃ安くなった。 ViewSonic WQHD IPS VG2719-2K-7 というのをぽちり。

これまでの構成:

VideCardRadeon HD 5450
左ディスプレイ10年前の 19インチ 1280x1024
右ディスプレイ3年前の 27インチ 1920x1080

右側をメインで使うので、新ディスプレイを右、これまで右だった1920x1080 を左にして設置。おお、ViewSonic のはHDMIしかないんだった。Radeon HD5450にHDMI端子があってよかった。さて、xinit と。

げげ、1920x1080しか映らん!

なじぇ? ぐぐると結構出てくる。デフォルトではHDまでしか行かないようだ。 とりあえず、「 Radeon HD5450 / Cinnamon 18.1 64bit - screen resolution」 あたりを参考にしてmodelineを作って足す、というブラウン管時代っぽいことを すればいいようだ。おおまかな手順を示す。

その前に、Modeline 遊びをする前のお約束: ディスプレイが壊れる可能性もあるので自己責任で!

ま、液晶ディスプレイ時代は大丈夫だと思うが。

  1. modelineを生成する

    ほげめも: Linux HDMI で WQHD まとめ のIntelのところにあるように、 cvt もしくは gtf コマンドを使って2560x1440のModelineを生成する。 HD5450 + VG2719-2K-7 の場合は "cvt 2560 1440 30" で返される以下のよ うなパラメータで一発うまくいった。

    "2560x1440" 146.25  2560 2680 2944 3328  1440 1443 1448 1468 -hsync +vsync
    
  2. xrandr で試す

    上記のような Modeline が出たらひとまず xrandr で試す。

    xrandr --newmode "2560x1440" 146.25  2560 2680 2944 3328  1440 1443 1448 1468 -hsync +vsync
    xrandr --addmode HDMI-0 "2560x1440"
    

    と次に新しい "2560x1440" mode を試すのだが、映らない場合に備え デュアルディスプレイなら別のターミナルで

    xrandr --output HDMI-0 --mode 1920x1080
    

    なり、現行のmodeに復帰するコマンドラインをスタンバイさせておくと よい。用意ができたら、実験。

    xrandr --output HDMI-0 --mode 2560x1440
    

    映ることを祈る。で、うまく映らなければ1920x1080にもどして、 別の Modeline を生成して当たるまで頑張る。うまくいったら xorg.conf 修正に進む。

  3. xorg.confに記述

    うまく映った Modeline を xorg.conf の Monitor セクションに追加。 最近ならほぼ空っぽなのでこんな感じか。

    Section "Monitor"
            Identifier   "Monitor0"
            VendorName   "Monitor Vendor"
            ModelName    "Monitor Model"
            Modeline     "2560x1440" 146.25  2560 2680 2944 3328  1440 1443 1448 1468 -hsync +vsync
    EndSection
    

    足した mode と、よく使うものを Screen セクションに追加。 こんな感じか。

    Section "Screen"
      Identifier	"Screen0"
      Device	"Card0"
      Monitor	"Monitor0"
      SubSection "Display"
    	Viewport	0 0
    	Depth		24
    	Modes		"2560x1440" "1920x1080" "1280x1024" "1024x768" "800x600"
      EndSubSection
    EndSection
    
  4. 必要なら xrandr でディスプレイ左右の調整

    うちの場合は 左に DVI-0、右に HDMI-0 を持って来たいので ~/.xinitrc に以下を追加。

    xrandr --output DVI-0 --mode 1920x1080 --left-of HDMI-0
    

ということで無事2560x1440が Radeon HD 5450 という古カードでも使えた。 しかしこれ字、小さいな、HDより。27インチだと HD だと文字でかすぎだが WQHDは小さいな。31インチにしとけばよかったか。