我有三个相同的 1680x1050 显示器,我正尝试通过我的 Razer Blade 15" 2018 笔记本电脑上的“HP G5 USB-C 扩展坞”及其 Thunderbolt 3 端口使用它们。有时我可以让所有显示器同时工作,但从来没有xrandr
在我想要的决议。
如果我自己构建模式行,我可以在 1680x1050 和 49Hz 下运行所有三个。60Hz不可能吗?也许这是一个像素时钟问题。
xrandr | egrep '^[^ ]' | grep -v 'Screen 0:' | sed -e 's/ (.*//'
在没有连接扩展坞的情况下打印:
eDP-1 connected primary 1920x1080+0+0
DP-1 disconnected
DP-2 disconnected
HDMI-1-1 disconnected
DP-1-3 disconnected
热插拔扩展坞后,我看到:
eDP-1 connected primary 1920x1080+0+0
DP-1 disconnected
DP-2 disconnected
DP-1-1 connected
DP-1-2 connected
DP-1-3 disconnected
HDMI-1-1 disconnected
使用扩展坞启动显示:
eDP-1 connected primary 1920x1080+0+0
DP-1 disconnected
DP-2 disconnected
DP-1-1 connected
DP-1-2 connected
DP-1-3 connected
HDMI-1-1 disconnected
DP-1-6 disconnected
扩展坞热插拔后我无法配置xrandr --output DP-1-3 --auto
。我明白了xrandr: cannot find preferred mode
。不过,用它启动是有效的。
尝试启用 1680x1050@60 的第三台显示器会产生xrandr: Configure crtc 0 failed
. 我什至使用了由cvt -r
. 我认为这些显示器对于 CVT-RBv2 来说太旧了。
[找朋友@bain]
我的发现
HP G5 扩展坞(规格)仅支持 USB-C。视频信号将使用著名的 DisplayPort USB-C 交替模式传输;未使用笔记本电脑的 Thunderbolt 3 功能(相同端口,不同操作模式) 。
三重 1680x1050 分辨率强烈暗示笔记本电脑仅限于 USB-C 上的 DisplayPort 1.2 ,并且仅使用 2 条通道。它允许 8.64Gb/s 的带宽,三重 1680x1050 非常适合,但60Hz 是可能的。是什么让您如此确定 CVT-RBv2 时序不起作用?该错误
xrandr: Configure crtc 0 failed
表明 GPU 无法配置为执行您想要的操作。如果显示器实际上无法处理该模式,它只能在它自己的屏幕上指示,奇怪地闪烁或变暗等。对于cvt
这种情况(以及许多其他情况),生成有用的模式行是无用的。此外,其-r
开关仅生成“v1”时序。DP-1-3
端口。我不确定它代表什么,尤其是没有DP-1-1
和DP-1-2
周围。-我相信这个奇怪的条目与 coldplug 案例中的条目相同DP-1-6
(数字始终是最后一个的 +3DP-1-x
)。在热插拔事件中,枚举在该虚假名称DP-1
之后发生冲突DP-1-1
并且无法使用该名称注册并且不会尝试任何其他名称,这似乎使得无法查看/处理扩展坞的最后一个视频端口。DP-1-2
DP-1-3
如何进行
60Hz刷新率
(以下文本显示了使事情顺利进行的方法。阅读并理解并适应您的环境。复制和粘贴可能不起作用。)
让我们把所有显示器调到 60Hz。首先,确保你是冷插的,并且所有 3 个外接显示器都以某种分辨率工作。为避免瓶颈问题或达到 GPU 的其他限制(我们要测试显示器!),在内部屏幕上工作并关闭所有其他屏幕
现在让我们添加“我的”模式行:¹
现在将它们添加到您的首选显示器(最终添加到其他显示器):
现在测试它们!
h160 应该工作。这是无聊的 CVT-RB 时序
cvt -r 1680 1050 60
。然后测试h80。这是CVT-RBv2。我有四个平庸的老显示器,他们都能做到。更远:然后尝试在您使用的最后一个模式行上启用所有三个。
60Hz替代方案
如前所述,带宽限制还取决于 USB-C Displayport 交替模式版本和设置。如需更多带宽,请使用 DP 1.3+ 和/或 4 通道(最大)而不是 2 条 USB-C 接线。前者不能在同一硬件上更改,后者有时可以在固件设置实用程序(“BIOS”)中查找“USB-C 高分辨率模式”或其他内容......在 4 通道模式下没有 USB 3.x 在 DisplayPort 视频信号旁边可用,只有 USB 2.0。
热插拔扩展坞
对于相同的 3 个状态(无扩展坞、热插拔、冷插拔),请发送输出
我有
例如完全不同的名字相比
xrandr | egrep '^[^ ]' | grep -v 'Screen 0:' | sed -e 's/ (.*//'
也许它揭示了什么是什么。Razer Blade 15" Base (2018)应该有内部显示器、1×Thunderbolt3/USB-C、1×HDMI 2.0 和 1×Mini DisplayPort 1.4。
这就解释了 eDP-1、HDMI-1-1(虽然不是它的命名)和 DP-1 与 USB-C 相关,正如我们所知。离开 DP-2 和 DP-1-3。我猜 DP-2 是 Mini DisplayPort。也许 DP-1-3 是 Thunderbolt/USB 两用端口的 Thunderbolt 端。如果存在相互依赖性,让我们通过首先单独启用它们,然后一起启用来确认它。断开扩展坞并切换
--off
所有输出。然后这样你就可以强制 GPU 在那里输出一些东西。接下来尝试 DP-1-3。它有效吗?您可以同时启用两者吗?还有不同的(低分辨率)分辨率(例如没有镜像)?能借个 Thunderbolt 转 DP 转换器吗?检查此适配器是否使用 DP-1-3。
无论如何......如果这一切都证明是真的,那么 Xserver 似乎在为某种内部输出分离器分发冲突名称方面做了一个错误的决定。看看您是否只能在热插拔扩展坞后重新启动 Xserver 而无需完全重新启动,这将很有趣。如果它开始工作,那么内核 GPU 驱动程序似乎不会引发问题,但确实是 X11 中的枚举。
¹ 像素时钟使用Tom 的视频计时计算器计算并手工模制成模型线。