[Mobile GTX 1650 Ti + amdgpu] cannot turn on HDMI output after turning it off/if not turned on at boot time
Lenovo Legion 5-15ARH05 has the HDMI and DP (via USB-C) outputs connected to the Nvidia card, while the internal display is connected to the integrated AMD GPU [1]. lspci -nn|grep -E -i 'vga|3d'
shows:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:1f95] (rev a1)
05:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Renoir [1002:1636] (rev c6)
If the system is booted with an HDMI monitor attached, the monitor works properly [2]. But when I run xrandr --output HDMI-1-1 --off
followed by xrandr --output HDMI-1-1 --auto
, xrandr respond a failure along the line of "configure crtc 4 failed" (sorry, lost the exact line). Then, xrandr
returns the output as disconnected, and dmesg
contains the following lines (the full dmesg will be attached):
[ 320.574955] pcieport 0000:00:01.1: Data Link Layer Link Active not set in 10
00 msec
[ 320.591096] nouveau 0000:01:00.0: can't change power state from D3cold to D0
(config space inaccessible)
[ 320.591154] nouveau 0000:01:00.0: can't change power state from D3cold to D0
(config space inaccessible)
[ 320.652355] nouveau 0000:01:00.0: can't change power state from D3cold to D0
(config space inaccessible)
[ 320.652584] nvkm: mm not clean!
[ 320.652586] nvkm: node list:
[ 320.652588] nvkm: 00000000 00002000 0
...
[ 320.656596] nouveau 0000:01:00.0: timer: stalled at ffffffffffffffff
[ 320.656600] ------------[ cut here ]------------
[ 320.656601] nouveau 0000:01:00.0: timeout
...
If the HDMI monitor is not connected at boot, then such message appears right away, and the HDMI output cannot be turned on afterward.
With a hint from #31 (closed), booting with nouveau.runpm=0
seems to allow me to connect or disconnect the HDMI monitor without a reboot [3]. So, it might be a related issue. The issue differs as 1). the GPU is slightly different (GTX 1660 Ti vs. GTX 1650 Ti) and 2.) in this case the output is correct (apart from [2]).
The full dmesg and Xorg logs, both when booting with and without the HDMI monitor, are attached. Also attached are vbios.bin
and the full output of lspci -nn
and dmidecode
(just in case).
The environment is GNOME 3.36.8 from Ubuntu 20.04, running in X.org mode. The version of software are:
- Linux: Linus's tree, commit 1c273e10 (post 5.12-rc3, nouveau ttm fix merged).
- X.org:
1:7.7+19ubuntu14
. - Nouveau DDX:
1.0.16-1
(I also tried latest master (e80e73c
), however it seems like the DDX doesn't support this card yet?) - libdrm: Oibaf's PPA, version
2.4.104+git2103161700.52f05d~oibaf~f
- Mesa: Oibaf's PPA, version
21.1~git2103201800.6e6cd7~oibaf~f
[1] One might config the internal display to go to the Nvidia card instead in the UEFI config screen.
[2] Aside from partial, flickery, white band around the lower third of the screen (which sometimes expands to the whole screen) when using Wayland GNOME, but that's probably another bug. It doesn't happen on Xorg session.
[3] That is, until I suspend the machine, but let's not get ahead of ourself.
dmesg_2021-03-21T15_29_5.12_rc3-187-g1c273e10bc0c_boot-with-hdmi_xrandr-off-on_xrandr-off-on.log
Xorg_2021-03-21T15_29_5.12_rc3-187-g1c273e10bc0c_boot-with-hdmi_xrandr-off-on_xrandr-off-on.log
dmesg_2021-03-21T16_25_5.12_rc3-187-g1c273e10bc0c_boot-without-hdmi.log
Xorg_2021-03-21T16_25_5.12_rc3-187-g1c273e10bc0c_boot-without-hdmi.log