web-dev-qa-db-ja.com

目的の解像度を設定しないでxrandrをデバッグする方法は?

Xrandrが目的の解像度を設定できないのはなぜかを理解するのに助けが必要です。

デュアルモニターのセットアップがあります。

  • 2560x1440解像度を好む13インチラップトップ
  • 1920x1200の解像度を好む24インチモニター

高解像度のため、ディスプレイマネージャに認識されないラップトップの解像度を1920x1080にプッシュしたいと思います。

私はこれだけを取得します:

2560x1440     59.95*+
1920x1440     60.00  
1856x1392     60.01  
1792x1344     60.01  
1600x1200     60.00  
1400x1050     59.98  
1280x1024     60.02  
1280x960      60.00  
1024x768      60.00  
800x600       60.32    56.25  
640x480       59.94 

モードラインを取得するには、次を使用します。

cvt 1920 1080 

次に、セッション間で変更を永続的にするために、x11 init中に実行される次のフォルダーのスクリプトに次の行を追加します。

/etc/X11/xinit/xinitrc.d

内容(add-fullhd-to-edp1.sh):

xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
xrandr --addmode eDP1 1920x1080_60.00

その後、xrandrで解像度がサポートされるようになりました

2560x1440     59.95*+
1920x1440     60.00  
1856x1392     60.01  
1792x1344     60.01  
1600x1200     60.00  
1400x1050     59.98  
1280x1024     60.02  
1280x960      60.00  
1024x768      60.00  
800x600       60.32    56.25  
640x480       59.94  
1920x1080_60.00  59.96

そのため、xrandrまたはGUIで解像度を選択した後、解像度を設定しようとしている間に画面が1回点滅し、次に2回目に元に戻します。それが発生している間のXorg.logのエントリは、フレームバッファのサイズ変更のみです:

(II) intel(0): resizing framebuffer to 1920x2280
(II) intel(0): switch to mode [email protected] on HDMI1 using pipe 0, position (0, 0), rotation normal, reflection none
(II) intel(0): switch to mode [email protected] on eDP1 using pipe 1, position (0, 1200), rotation normal, reflection none
(II) intel(0): resizing framebuffer to 2560x2640
(II) intel(0): switch to mode [email protected] on HDMI1 using pipe 1, position (0, 0), rotation normal, reflection none
(II) intel(0): switch to mode [email protected] on eDP1 using pipe 0, position (0, 1200), rotation normal, reflection none
(II) intel(0): switch to mode [email protected] on HDMI1 using pipe 0, position (0, 0), rotation normal, reflection none
(II) intel(0): switch to mode [email protected] on eDP1 using pipe 1, position (0, 1200), rotation normal, reflection none

ご覧のように、IntelドライバーのIrisグラフィックがあります。

00:02.0 VGA compatible controller: Intel Corporation Device 0a2e (rev 09)

おかしなことに、これは何らかの更新が行われるまでうまく機能していたので、どれが壊れたのかわかりませんでした。

手がかりはありますか?ヘルプは大歓迎です。

3
bassman

私はバグをgdm開発者に投稿し、静的confを使用するためのヒントを得ました。

/etc/X11/xorg.conf.d/21-intel.conf

内容:

Section "Device"
    Identifier  "Intel Graphics"
        Driver      "intel"
        Option      "monitor-eDP1" "eDP1"
EndSection

Section "Monitor"
    Identifier      "eDP1"
    Modeline "1920x1080"  172.80  1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync
EndSection

そしてそれは働いた。面白いことに、これは本当にxrandr開発者にとってのバグだと思います。

4
bassman