Linux 上外部监视器的奇怪错误

Linux 上外部监视器的奇怪错误

我有一台戴尔 Inspiron 15 7590,配备英特尔 i5 9300H 和 Nvidia GeForce GTX 1650,以及我从 Crucial 单独购买的 2x8Gigs DDR4 RAM。它运行经典的 Win 10 安装,安装在从 corsair 购买的 480Gb nvme 驱动器上,我使用 SK Hynix 的内置 512Gb nvme 驱动器运行全新的 Pop! OS 21.10 安装。我使用默认桌面管理器 (gdm3)。

我使用外接显示器,它是饭山 Prolite 27"通过 HDMi 运行 2560x1440p @ 60Hz(如果您阅读制造商的建议,这确实是推荐的设置)。否则,此显示器通过 DisplayPort 插入我的 Win 10 台式电脑,可以支持 2560x1440p @ 70Hz。

但是,无论如何,我都无法让它与我目前安装在戴尔笔记本电脑上的 Pop! OS 配合使用。问题是显示器确实出现在 Pop! OS 的显示偏好设置中,xrandr 告诉我屏幕已连接到我电脑的 DP-3 端口,并使用 2560x1440 @ 59.95Hz 作为其当前和首选模式。但是,在令人沮丧的“无信号”之后,屏幕保持黑色,即使它似乎被检测到。然而,我可以将其切换到 1920x1080 @ 60Hz,这样就可以了,但如果你问我的话,这是一种糟糕的经历。

我到目前为止尝试过的:

  • 通过图形驱动程序 ppa(当前运行 510)为 linux 安装最新的 nvidia 驱动程序,但没有任何效果(这里是输出nvidia-smi)。
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 510.47.03    Driver Version: 510.47.03    CUDA Version: 11.6     |
+-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   41C    P3     6W /  N/A |      4MiB /  4096MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                           
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A     21362      G   /usr/lib/xorg/Xorg                  4MiB |
+-----------------------------------------------------------------------------+
  • 使用 xrandr 的自定义模式,尝试调整刷新率,并使用 cvt 和 gtf 模式行实现 2560x1440 @ 60, 50, 30 Hz;没有效果
xrandr --newmode [modeline]
xrandr --addmode [DisplayName] [MyCustomMode]
xrandr --output [DisplayName] --mode [MyCustomMode]
  • 使用 xrandr 的自定义模式,这次使用我在 Windows 10 中的 Monitor Asset Manager 中获得的 2560x1440 模式线,但没有效果。
  • 尝试切换到 lightdm,但它有点破坏了我的桌面并且没有效果。
  • 使用不同的 HDMI 电缆,没有效果。
  • 尝试使用其他 2560x1440 显示器,结果出乎意料地好用直接即插即用,无需调整 xrandr 设置!这是我室友的 Benq 产品。我也尝试使用不同的电缆,包括我用于显示器的电缆,一切都与我室友的显示器完美兼容。

所以现在我唯一的猜测是 Iiyama Prolite 27" 2560x1440 显示器与我当前安装的 Pop! OS 不兼容,但说实话我觉得这很奇怪。有人能提供线索吗?

我浏览了论坛、错误报告等,但没有找到任何线索,因为我猜这个“错误”非常具体。我可能已经发现了类似的问题这里但我不太确定解决方案是什么。

提前致谢!如果这篇文章中有英文错误,请见谅,因为这不是我的母语。

编辑 : 我尝试使用实时 USB 测试另一个 Linux 发行版,问题出现在 Linux Mint 20.3 的 Cinnamon 版本上。此时,我在想它也使用 Gnome,并且也是一个基于 Ubuntu 的发行版,所以这可能对我没有帮助。然后我尝试使用 Manjaro 21.2.2 的 KDE 版本,因为它是一个基于 Arch 的发行版和一个不同的桌面环境。好吧,问题仍然存在:显示器被识别,但 1440p 不工作。如果我切换到 1080p,它又可以工作了。

现在我确实认为它来自我的显示器型号,Iiyama Prolite XUB2792QSU-B1。在 Linux 上,某些型号的显示器是否能正常工作,而其他型号的显示器则不能正常工作?

编辑2: 因此,我在我的台式电脑上启动了 Manjaro 21.2.2 的实时 USB,它通过 DisplayPort 连接到我的 2560x1440@60Hz 显示器。即使使用开源驱动程序,显示器也能毫无问题地显示所有内容。我开始认为这可能是我的戴尔笔记本电脑的 HDMI 端口的问题。可能是它无法显示高于 1080p 的分辨率?如果问题不是来自发行版或正在使用的驱动程序,我认为可能是硬件或固件问题;或者来自显示器的 HDMI 端口限制,因为当使用同一根电缆将其插入另一台显示器时,一切都正常。说实话,我现在有点不知所措。

相关内容