我正在运行联想 T14 gen 1 AMD,搭载 Ubuntu 20.04 和 5.8.0-rc7 内核,安装了 AMD 驱动程序 20.20。我的目标是使用联想 Thunderbolt3 扩展坞(昨天用 Windows 电脑更新了它)运行 2 个显示器,该扩展坞连接到笔记本电脑的 tb3 端口。我使用的显示器是戴尔 27 英寸和戴尔 34 英寸,均通过 DP 连接。
现在我必须连接两个显示器才能让 34 英寸的显示器以全分辨率运行,否则它只能在 2560x1440 下工作。当尝试激活 27 英寸显示器时,我在系统日志中收到以下错误:
Aug 14 10:16:30 Vmax /usr/lib/gdm3/gdm-x-session[2308]: (EE) AMDGPU(0): failed to set mode: No space left on device
Aug 14 10:16:30 Vmax /usr/lib/gdm3/gdm-x-session[2308]: (EE) AMDGPU(0): drmmode_do_crtc_dpms cannot get last vblank counter
Xrandr 输出显示它们被很好地识别:
eDP connected (normal left inverted right x axis y axis)
1920x1080 60.03 +
1680x1050 60.03
1280x1024 60.03
1440x900 60.03
1280x800 60.03
1280x720 60.03
1024x768 60.03
800x600 60.03
640x480 60.03
HDMI-A-0 disconnected (normal left inverted right x axis y axis)
DisplayPort-0 disconnected (normal left inverted right x axis y axis)
DisplayPort-1 disconnected (normal left inverted right x axis y axis)
DisplayPort-2 disconnected (normal left inverted right x axis y axis)
DisplayPort-3 connected (normal left inverted right x axis y axis)
2560x1440 59.95 +
1920x1200 59.88
1920x1080 60.00 60.00 50.00 59.94 24.00 23.98
1600x1200 60.00
1680x1050 59.95
1280x1024 75.02 60.02
1280x800 59.81
1152x864 75.00
1280x720 60.00 50.00 59.94
1024x768 75.03 60.00
800x600 75.00 60.32
720x576 50.00
720x480 60.00 59.94
640x480 75.00 60.00 59.94
720x400 70.08
DisplayPort-4 disconnected (normal left inverted right x axis y axis)
DisplayPort-5 connected primary 3440x1440+0+0 (normal left inverted right x axis y axis) 800mm x 335mm
3440x1440 59.97*+ 49.99
2560x1440 59.95
2560x1080 60.00
1720x1440 60.00
1920x1080 60.00 50.00 59.94
1600x1200 60.00
1280x1024 75.02 60.02
1280x800 59.81
1152x864 75.00
1280x720 60.00 50.00 59.94
1024x768 75.03 60.00
800x600 75.00 60.32
720x576 50.00
720x480 60.00 59.94
640x480 75.00 60.00 59.94
720x400 70.08
DisplayPort-6 disconnected (normal left inverted right x axis y axis)
Dmesg 有以下错误:
❯ sudo dmesg | grep -i amdgpu
[ 1.111933] [drm] amdgpu kernel modesetting enabled.
[ 1.112056] amdgpu: Topology: Add CPU node
[ 1.112153] fb0: switching to amdgpudrmfb from EFI VGA
[ 1.112265] amdgpu 0000:07:00.0: vgaarb: deactivate vga console
[ 1.112291] amdgpu 0000:07:00.0: enabling device (0006 -> 0007)
[ 1.112404] amdgpu 0000:07:00.0: amdgpu: Trusted Memory Zone (TMZ) feature disabled as experimental (default)
[ 1.130223] amdgpu: ATOM BIOS: 113-RENOIR-025
[ 1.130320] amdgpu 0000:07:00.0: amdgpu: VRAM: 512M 0x000000F400000000 - 0x000000F41FFFFFFF (512M used)
[ 1.130322] amdgpu 0000:07:00.0: amdgpu: GART: 1024M 0x0000000000000000 - 0x000000003FFFFFFF
[ 1.130324] amdgpu 0000:07:00.0: amdgpu: AGP: 267419648M 0x000000F800000000 - 0x0000FFFFFFFFFFFF
[ 1.130705] [drm] amdgpu: 512M of VRAM memory ready
[ 1.130709] [drm] amdgpu: 3072M of GTT memory ready.
[ 1.133742] [drm:dm_dmub_sw_init [amdgpu]] *ERROR* DMUB firmware loading failed: -2
[ 1.968945] amdgpu: SMU is initialized successfully!
[ 2.018276] [drm:dm_helpers_dp_write_dpcd [amdgpu]] *ERROR* Failed to find connector for link!
[ 2.018875] [drm:dm_helpers_dp_write_dpcd [amdgpu]] *ERROR* Failed to find connector for link!
[ 2.019071] [drm:dm_helpers_dp_write_dpcd [amdgpu]] *ERROR* Failed to find connector for link!
[ 2.230614] amdgpu: Topology: Add dGPU node [0x1636:0x1002]
[ 2.230619] amdgpu 0000:07:00.0: amdgpu: SE 1, SH per SE 1, CU per SH 8, active_cu_number 7
[ 2.231360] fbcon: amdgpudrmfb (fb0) is primary device
[ 2.868665] [drm:mod_hdcp_add_display_to_topology [amdgpu]] *ERROR* Failed to add display topology, DTM TA is not initialized.
[ 2.889838] amdgpu 0000:07:00.0: fb0: amdgpudrmfb frame buffer device
[ 2.910842] amdgpu 0000:07:00.0: amdgpu: ring gfx uses VM inv eng 0 on hub 0
[ 2.910845] amdgpu 0000:07:00.0: amdgpu: ring comp_1.0.0 uses VM inv eng 1 on hub 0
[ 2.910847] amdgpu 0000:07:00.0: amdgpu: ring comp_1.1.0 uses VM inv eng 4 on hub 0
[ 2.910849] amdgpu 0000:07:00.0: amdgpu: ring comp_1.2.0 uses VM inv eng 5 on hub 0
[ 2.910850] amdgpu 0000:07:00.0: amdgpu: ring comp_1.3.0 uses VM inv eng 6 on hub 0
[ 2.910852] amdgpu 0000:07:00.0: amdgpu: ring comp_1.0.1 uses VM inv eng 7 on hub 0
[ 2.910853] amdgpu 0000:07:00.0: amdgpu: ring comp_1.1.1 uses VM inv eng 8 on hub 0
[ 2.910855] amdgpu 0000:07:00.0: amdgpu: ring comp_1.2.1 uses VM inv eng 9 on hub 0
[ 2.910857] amdgpu 0000:07:00.0: amdgpu: ring comp_1.3.1 uses VM inv eng 10 on hub 0
[ 2.910858] amdgpu 0000:07:00.0: amdgpu: ring kiq_2.1.0 uses VM inv eng 11 on hub 0
[ 2.910860] amdgpu 0000:07:00.0: amdgpu: ring sdma0 uses VM inv eng 0 on hub 1
[ 2.910862] amdgpu 0000:07:00.0: amdgpu: ring vcn_dec uses VM inv eng 1 on hub 1
[ 2.910864] amdgpu 0000:07:00.0: amdgpu: ring vcn_enc0 uses VM inv eng 4 on hub 1
[ 2.910866] amdgpu 0000:07:00.0: amdgpu: ring vcn_enc1 uses VM inv eng 5 on hub 1
[ 2.910868] amdgpu 0000:07:00.0: amdgpu: ring jpeg_dec uses VM inv eng 6 on hub 1
[ 2.936802] [drm] Initialized amdgpu 3.38.0 20150101 for 0000:07:00.0 on minor 0
[ 3.975921] [drm:mod_hdcp_add_display_to_topology [amdgpu]] *ERROR* Failed to add display topology, DTM TA is not initialized.
[ 10.617947] snd_hda_intel 0000:07:00.1: bound 0000:07:00.0 (ops amdgpu_dm_audio_component_bind_ops [amdgpu])
[ 23.376428] [drm:mod_hdcp_add_display_to_topology [amdgpu]] *ERROR* Failed to add display topology, DTM TA is not initialized.
[ 46.671895] [drm:mod_hdcp_add_display_to_topology [amdgpu]] *ERROR* Failed to add display topology, DTM TA is not initialized.
[ 66.004357] [drm:mod_hdcp_add_display_to_topology [amdgpu]] *ERROR* Failed to add display topology, DTM TA is not initialized.
[ 73.940064] [drm:mod_hdcp_add_display_to_topology [amdgpu]] *ERROR* Failed to add display topology, DTM TA is not initialized.
[ 1245.413179] [drm:mod_hdcp_add_display_to_topology [amdgpu]] *ERROR* Failed to add display topology, DTM TA is not initialized.
[ 1697.709771] [drm:mod_hdcp_add_display_to_topology [amdgpu]] *ERROR* Failed to add display topology, DTM TA is not initialized.
[ 6346.769224] [drm:mod_hdcp_add_display_to_topology [amdgpu]] *ERROR* Failed to add display topology, DTM TA is not initialized.
我怎样才能消除错误并使此设置正常工作?
答案1
AMD 版本没有雷电,因此它不能与 TB3 扩展坞一起使用。
答案2
同一台笔记本电脑在 Manjaro Linux 上遇到同样的问题
Linux thinkpad-t14 5.7.19-2-MANJARO #1 SMP PREEMPT Fri Aug 28 20:22:12 UTC 2020 x86_64 GNU/Linux
我使用 HDMI 电缆(而不是 USB-C 转 HDMI 转换器)连接外接显示器解决了这个问题。我可能会买一个 HDMI 分配器,希望我的两个外接显示器都能通过笔记本电脑的 HDMI 输出工作。
希望有帮助
答案3
我正在使用可插拔 Thunderbolt 3/USB-C 底座以及 Sabrent USB-C 双 HDMI 适配器。我将键盘、鼠标等...以及一台显示器连接到底座。当在底座上使用 USB-C 而不是 Thunderbolt 时,它将推送两个 1080p 显示器或一台 4K 显示器,在 TB3 上它将推送两者。我遇到的奇怪的事情是我无法解决的显示器不会通过键盘、鼠标等唤醒...我必须拔下并插入 USB-C 连接。我选择了磁性 USB-C 连接器,所以我可以轻松做到这一点。USB-C Sabrent 加密狗在睡眠状态下工作。我插上了两台显示器,并且能够让 AMD FreeSync(我不确定它是否准确)显示在我的屏幕上,因为显示器支持此功能。