web-dev-qa-db-ja.com

セカンドスクリーンは認識/接続されているが表示されない-Ubuntu 18.04 / Arch Linux

私は、Ubuntu 18.04 LTSの新規インストールで2番目のモニターを動作させるように努めていますが、Arch Linuxでも実験しました。プライマリモニターとセカンダリモニターの両方がディスプレイのオプションメニューに表示され、解像度とリフレッシュレートのすべての正しい値が正しいようです。

マウスとソフトウェアウィンドウを別の画面に移動することもできます。ほぼすべての面で機能しているように動作しますが、実際には何も表示されません。

興味深いのは、モニターが「信号ケーブルの確認」(私のモニターの「信号なし」警告)でポップアップしないため、モニターが技術的に信号を受信して​​いることです。ただし、実際には画面に何も表示されず、黒い画面のみが表示されます。

コンピュータの仕様/技術詳細

1920x1080モニター(プライマリー、機能)および1280x1024モニター(セカンダリー、機能しない)を実行しています。 AMD Radeon 380Xを使用しています。両方のモニターは、2つのDVIポートを介してグラフィックスカードに直接接続されています。セットアップはWindows 10で正常に機能します。つまり、これがハードウェアの問題であることに疑問を感じています。

診断情報

xrandr出力:

Screen 0: minimum 320 x 200, current 3200 x 1080, maximum 16384 x 16384
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
HDMI-A-0 disconnected (normal left inverted right x axis y axis)
DVI-D-0 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm
   1920x1080     60.00*+
   1680x1050     59.88  
   1280x1024     75.02    60.02  
   1440x900      59.90  
   1280x960      60.00  
   1280x800      59.91  
   1152x864      75.00  
   1280x720      60.00  
   1024x768      75.03    70.07    60.00  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   640x480       75.00    72.81    66.67    59.94  
   720x400       70.08  
DVI-D-1 connected 1280x1024+1920+0 (normal left inverted right x axis y axis) 338mm x 270mm
   1280x1024     60.02*+  75.02  
   1280x800      60.02  
   1152x864      75.00  
   1280x720      60.02  
   1024x768      75.03    70.07    60.00  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   640x480       75.00    72.81    66.67    59.94  
   720x400       70.08  

私の2つの画面は、1920x1080のメインの動作モニターであるDVI-D-0と、1280x1024の「非動作」モニターであるDVI-D-1に接続されています。 xrandrはそれらが接続されていると言っているので、xrandrの出力は問題なく、マウスとすべてを2番目のモニターに移動できるため、これはすべて正しく、UbuntuとArchによって認識されているようです。

関連するlspci -nnk出力:

01:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Tonga XT / Amethyst XT [Radeon R9 380X / R9 M295X] [1002:6938] (rev f1)
    Subsystem: Tul Corporation / PowerColor Radeon R9 380X [148c:2350]
    Kernel driver in use: amdgpu
    Kernel modules: amdgpu

そのラインは、表示される唯一のVGAまたは出力関連のものです。ご覧のとおり、amdgpuが使用されています。これについては、この記事の後半で少し詳しく説明します。

グラフィックを提供できる可能性のあるインテルプロセッサも使用していますが、両方のモニターがマザーボードではなくグラフィックカード自体に接続されています。 Intelグラフィックスの場合、lspciで出力が表示されません。

Xorg.0.logPastebinリンク: https://Pastebin.com/TCkfWjcg

私が試したこと

このすべての前置きとして、私はインターネット全体を見渡して、多数のStack Exchange Webサイトや他のWebサイトで見たほとんどの修正を試しました。以下は、私が覚えたことのある、私が試したすべてのリストです。

  • xrandr値の変更:xrandrを使用してモニターの値を変更してみました。 xrandrの出力は事前に問題ないように見えましたが、(xrandrがすでにモニターが正しい値であることを示していたとしても)それらを正しい値に変更しても問題は解決しませんでした。
  • xorg.confの変更:xorg.confを変更して、画面の動作を明示的に定義しようとしましたが、機能しませんでした。これについては、Arch wikiの指示にほとんど従いました。私はこれをArchでのみテストしましたが、オンラインで読んだことから、これはUbuntuにも当てはまるはずです。
  • 別のディストリビューション/フレッシュインストール:最初にArchでこの問題が発生したため、そこで何かを変更し、次にフレッシュインストールを実行して問題がまだ残っていることを確認しました持続した。それ以来、Ubuntu 18.04の新規インストールを試みましたが、問題は解決していません。
  • ドライバの更新:AMDのWebサイトから最新のamdgpuドライバをダウンロードし、そこからインストールしました。再起動しても何も壊れず、プライマリモニターも問題なく動作しましたが、問題は解決しませんでした。
  • ドライバーの変更amdgpu-> radeon:amdgpuドライバーからradeonドライバーに変更してみました。 Arch Linux Wikiページの指示に従ってインストールしたにもかかわらず、実際にシステムにradeonドライバーを使用させることができませんでした。 amdgpuが常に使用され、modprobe.dの.confファイルを介してブラックリストに登録すると、グラフィックディスプレイが起動せず、ターミナルに戻ってすべてを元に戻さなければならなかったので、再び起動しました。 。
  • amdgpu-proを試す:私はこれをUbuntuでのみ試しましたが、これは私の問題を修正するために何もしませんでした。これを試すと、フレッシュインストールを行う必要がありました私がamdgpuからamdgpu-proに切り替えようとしたとき、それはグラフィカルなUbuntuインターフェースを壊し、ターミナルに簡単にドロップダウンできないためです。
  • 機能しないモニターの解像度を下げる:2台目のモニターの解像度を実際に低い値(800x600)に下げてみました。考えられるドライバーの問題。試した解像度でモニターに出力することはできませんでした。
  • モニターのアスペクト比の変更:両方のモニターを同じアスペクト比にすることでこれを修正できることがどこかでわかったので、セカンダリモニターを16:9に変更してみました。メインモニターと同じですが、これで問題が解決しませんでした。

私の疑い

モニターのセットアップはWindowsで正常に機能するので、ワイヤーやコネクターが破損していないこと、およびハードウェアの問題ではないことを証明します。

また、xrandr(またはxorg、xサーバーなど、特に違いに精通していません)の問題は特にありません。そこからのすべての出力は、私にとっては問題なく正しいようです。

明らかに接続されており、なんらかの信号を受信して​​いるが実際には何も表示していないため、これはおそらく私のドライバー設定の問題だと思います。私が読んだことから、私のグラフィックカードはサポートされていますが、それはamdgpuまたは私のドライバー設定の問題であると思います。システムにamdgpuの代わりにradeonを使用させることができません。

2
Ninjavocado

GRUB経由でカーネルブートパラメーターにamdgpu.dc=0を追加して、この問題を修正しました。

回避策の説明については this thread を参照してください。

1
Ninjavocado

部分的な答え:

このXorg.logは、Xサーバーを既存のxorg.confで起動した結果だと思います。そうでない場合は、xorg.confを削除して、もう一度お試しください。

Xorg.logは、最初は特に問題ありません

[     4.129] (II) AMDGPU(0): Output DVI-D-0 using initial mode 1920x1080 +0+0.
[     4.129] (II) AMDGPU(0): Output DVI-D-1 using initial mode 1280x1024 +1920+0

は、単一のフレームバッファー(「デスクトップ」)があり、各出力がフレームバッファーの一部を表示していることを意味します。

しかし、それはそこで止まりません、すべてが正しく初期化されて見えます

[     4.702] (II) AMDGPU(0): EDID vendor "SAM", prod id 161
...
[     4.817] (II) AMDGPU(0): Allocate new frame buffer 1920x1080
[     4.817] (II) AMDGPU(0):  => pitch 8192 bytes

「DVI-D-1」にある「SAM」のEDIDを取得しますsecond時間であり、それに新しいフレームバッファーを割り当てます。このフレームバッファーが共有の「デスクトップ」フレームバッファとは異なります。つまり、このフレームバッファーが表示されている場合、「デスクトップ」フレームバッファーで必要なだけ変更できますが、「DVI-D-1」では、他のフレームバッファーが表示されるだけです。これはおそらく黒であり、それがあなたが見るものです。

私はこのようなものを見たことがなく、何が起こるかわかりません。

AMDGPUのメンテナにバグレポートを提出し、彼らが何かアイデアを持っているかどうかを確認します。完全なXorg.logを含めます。

0
dirkt