Fedora 25では、Xorg.confの設定は無視されます。

Fedora 25では、Xorg.confの設定は無視されます。

2つのモニターが接続されているNVidia GT8600があります(1つはVGAポートを介して、もう1つはコンポーネントポートを介して)。デフォルトのxorg.confを使用すると、2番目のモニター(コンポーネント)は検出されず、1番目のモニターはモニターを強制的にオフにする解像度で実行されます。だから手動で設定してみました。両方のモニターがオンになっていますが、解像度が正しくありません。モデル行などを作成してみましたが、無視され、両方のモニタで誤った解像度を実行しています。

モニタ0(LCD)が800x480 60Hz、モニタ1(プロジェクタ)1920x1080 60Hz、拡張デスクトップ、モニタ1がモニタ0の右側にあるようにしたいと思います。私の2つのxorg設定は次のとおりです。

50-lcd.conf:

# LCD display in SilverStoneTek case
Section "Monitor"
    Identifier     "LCD"
    VendorName     "SilverstoneTek"
    ModelName      "Chassis"
    HorizSync       28.0 - 33.0
    VertRefresh     43.0 - 72.0
    Modeline       "800x480_60.00"  29.58  800 816 896 992  480 481 484 497  -HSync +Vsync
EndSection

Section "Device"
    Identifier     "VGAport"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 8600 GT"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "VGAport"
    Monitor        "LCD"
    DefaultDepth    24
    Option         "TwinViewXineramaInfoOrder" "CRT-0"
    Option         "metamodes" "CRT-0: 800x480_60.00 +0+0, TV-0: 1920x1080_60.00 +0+0"
    Option         "ConnectedMonitor" "CRT-0, TV-0"
    SubSection     "Display"
        Depth       24
        Modes      "800x480_60.00" "800x480"
    EndSubSection
EndSection

60-projector.conf:

Section "Monitor"
    Identifier     "Projector"
    VendorName     "Sony"
    ModelName      "VPL-HW20"
    HorizSync      15.0 - 600.0
    VertRefresh    15.0 - 600.0
    Modeline "1920x1080_60.00"  172.80  1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync
    Option         "dpms"
EndSection

Section "Device"
    # do not use the frequencies provided by the monitor edid 
    Identifier     "ComponentPort"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 8600 GT"
EndSection


Section "Screen"
    Identifier     "Screen1"
    Device         "ComponentPort"
    Monitor        "Projector"
    DefaultDepth    24
    Option         "metamodes" "CRT-0: 800x480_60.00 +0+0, TV-0: 1920x1080_60.00 +0+0"
    SubSection     "Display"
        Depth       24
        Modes      "1920x1080_60.00" "1920x1080"
    EndSubSection
EndSection

しかし、xrandrは間違った解像度を使用していることを示し、私のカスタムモデルは表示さえしません。

Screen 0: minimum 8 x 8, current 1824 x 768, maximum 8192 x 8192
DVI-I-0 connected primary 800x600+0+168 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00 +
   800x600       72.19    60.32*   56.25  
   800x480       60.00  
   640x480       59.94  
   512x384       60.00  
   400x300       72.19  
   320x240       60.05  
DVI-I-1 disconnected (normal left inverted right x axis y axis)
TV-0 connected 1024x768+800+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00*+
   800x600       60.01  
   720x480       60.00  
   640x480       60.01  
   640x400       60.00  
   512x384       60.00  
DVI-I-2 disconnected (normal left inverted right x axis y axis)
DVI-I-3 disconnected (normal left inverted right x axis y axis)

重要な場合、Xorg.0.logはCRT-0とTV-0を参照し、xranrdはそれをDVI-I-0とTV-0と呼びます。 Xorg.0.logにはエラーがなく、内容全体がかなり長いため、再公開しません。しかし、ここにいくつかの奇妙な行があります。

[  3545.187] (II) NVIDIA(0): Setting mode "CRT-0:800x480_60.00+0+0,TV-0:1920x1080_60.00+0+0"
[  3546.255] (II) NVIDIA(0): Setting mode "DVI-I-0: 800x480_60.00 @800x480 +0+0 {ViewPortIn=800x480, ViewPortOut=800x480+0+0}, TV-0: nvidia-auto-select @1024x768 +800+0 {ViewPortIn=1024x768, ViewPortOut=1024x768+0+0}"
[  3546.425] (II) NVIDIA(0): Setting mode "DVI-I-0: 800x600_60 @800x600 +0+168 {ViewPortIn=800x600, ViewPortOut=800x600+0+0}, TV-0: nvidia-auto-select @1024x768 +800+0 {ViewPortIn=1024x768, ViewPortOut=1024x768+0+0}"

LCDを800x480に設定してからすぐに800x600に切り替えようとしているようです。なぜ?プロジェクターを1920×1080に設定しようとせず、「nvidia-auto-select」のみを使用してください。なぜ?

答え1

私はNvidiaがモニターのEDIDに基づいて解像度を取得していると思うので、モデルラインを無視します。 xorg.confの「モニター」セクションにEDIDを無視するオプションを追加できます。それは次のとおりです。

   Option "UseEDID" "false" 
   Option "UseEDIDFreqs" "false" 
   Option "IgnoreEDID" "true" 

関連情報