![联想更新后 HDMI 无法工作](https://linux22.com/image/1191519/%E8%81%94%E6%83%B3%E6%9B%B4%E6%96%B0%E5%90%8E%20HDMI%20%E6%97%A0%E6%B3%95%E5%B7%A5%E4%BD%9C.png)
我有一台联想 Legion 7 16ACHg6,一周内检测不到任何外部 HDMI 或其他类型的电缆。这是一台双启动笔记本电脑,Windows 10 在另一个磁盘上(禁用安全启动、动态图形)。
软件规格
$ uname -a
Linux Legion-7-16ACHg6 5.15.0-56-generic #62-Ubuntu SMP Tue Nov 22 19:54:14 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
每当我连接 HDMI、USB-C 或其他类型的显示器输出时,都检测不到任何内容。
$ xrandr
Screen 0: minimum 320 x 200, current 2560 x 1600, maximum 16384 x 16384
eDP connected primary 2560x1600+0+0 (normal left inverted right x axis y axis) 344mm x 215mm
2560x1600 60.00*+
1920x1200 60.00
1920x1080 60.00
1600x1200 60.00
1680x1050 60.00
1280x1024 60.00
1440x900 60.00
1280x800 60.00
1280x720 60.00
1024x768 60.00
800x600 60.00
640x480 60.00
笔记本电脑目前正在使用推荐的 NVIDIA 驱动程序 v525
$ sudo ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0 ==
modalias : pci:v000010DEd000024DCsv000017AAsd00003A58bc03sc00i00
vendor : NVIDIA Corporation
model : GA104M [GeForce RTX 3080 Mobile / Max-Q 8GB/16GB]
driver : nvidia-driver-515-server - distro non-free
driver : nvidia-driver-515-open - distro non-free
driver : nvidia-driver-510 - distro non-free
driver : nvidia-driver-470 - distro non-free
driver : nvidia-driver-525 - distro non-free
driver : nvidia-driver-525-open - distro non-free recommended
driver : nvidia-driver-515 - distro non-free
driver : nvidia-driver-470-server - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin
此外,当我跑步时nvidia-smi
,我发现nvidia-smi
“未找到任何设备”在 NVIDIA 论坛上,但不明白除了尝试更新之外是否还有其他解决方案)
$ nvidia-smi
No devices were found
并检查dmesg
输出
$ dmesg
kernel_gsp_ga102.c:164
[ 1171.051704] NVRM nvAssertFailedNoLog: Assertion failed: status == NV_OK @ kernel_gsp_ga102.c:235
[ 1171.051706] NVRM kgspInitRm_IMPL: cannot bootstrap riscv/gsp: 0xffff
[ 1171.051709] NVRM RmInitAdapter: Cannot initialize GSP firmware RM
[ 1171.052644] NVRM: GPU 0000:01:00.0: RmInitAdapter failed! (0x62:0xffff:1622)
[ 1171.053189] NVRM: GPU 0000:01:00.0: rm_init_adapter failed, device minor number 0
NVIDIA 模块的状态
$ lsmod | grep nv
nvidia_uvm 1388544 0
nvidia_drm 69632 0
nvidia_modeset 1363968 1 nvidia_drm
nvidia 5935104 5 nvidia_uvm,nvidia_modeset
drm_kms_helper 311296 2 amdgpu,nvidia_drm
drm 622592 15 gpu_sched,drm_kms_helper,nvidia,amdgpu,drm_ttm_helper,nvidia_drm,ttm
nvme 49152 5
nvme_core 135168 8 nvme
文件/etc/default/grub
内容:
$ sudo cat /etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
硬件信息
lspci
插入 HDMI 和 USB-C 时的输出
$ lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne Root Complex
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne IOMMU
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:01.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge
00:01.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:02.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
00:08.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 51)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 5
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 6
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 7
01:00.0 VGA compatible controller: NVIDIA Corporation GA104M [GeForce RTX 3080 Mobile / Max-Q 8GB/16GB] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GA104 High Definition Audio Controller (rev a1)
02:00.0 Non-Volatile memory controller: SK hynix Gold P31 SSD
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
04:00.0 Network controller: Intel Corporation Wi-Fi 6 AX200 (rev 1a)
05:00.0 Non-Volatile memory controller: Micron Technology Inc Device 5405
06:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne (rev c5)
06:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
06:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
06:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
06:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) HD Audio Controller
07:00.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 81)
07:00.1 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 81)
IE
$ lspci -v | grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GA104M [GeForce RTX 3080 Mobile / Max-Q 8GB/16GB] (rev a1) (prog-if 00 [VGA controller])
06:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne (rev c5) (prog-if 00 [VGA controller])
跑步inxi -G
给予(我认为这可能会有帮助)
$ inxi -G
Graphics:
Device-1: NVIDIA GA104M [GeForce RTX 3080 Mobile / Max-Q 8GB/16GB]
driver: nvidia v: 525.60.11
Device-2: AMD Cezanne driver: amdgpu v: kernel
Device-3: Acer Integrated Camera type: USB driver: uvcvideo
Display: x11 server: X.Org v: 1.21.1.3 driver: X: loaded: ati,fbdev
unloaded: modesetting,radeon,vesa gpu: nvidia,amdgpu resolution: 2560x1600
OpenGL: renderer: llvmpipe (LLVM 13.0.1 256 bits) v: 4.5 Mesa 22.0.5
我尝试过
我已经尝试过了更新ubuntu-drivers
sudo ubuntu-drivers autoinstall
我试过重新配置gdm3
sudo dpkg-reconfigure gdm3
我试过注释掉options nvidia-drm modeset=1
进入/lib/modprobe.d/nvidia-kms.conf
文件并退出电源模式。我目前在平衡模式下运行。
简短的个人评论
引用非常相似的问题(并且还查看了 NVIDIA-HDMIs-graphics-drivers-etc 领域中出现的问题数量)
除了这些考虑之外,一如既往地感谢社区。
答案1
好吧,显然解决方案非常简单,尽管现在我在问自己“为什么?”。
我可以通过将 NVIDIA 显卡的推荐驱动程序切换到专有的非开放驱动程序来解决这个问题,
$ sudo ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0 ==
modalias : pci:v000010DEd000024DCsv000017AAsd00003A58bc03sc00i00
vendor : NVIDIA Corporation
model : GA104M [GeForce RTX 3080 Mobile / Max-Q 8GB/16GB]
driver : nvidia-driver-525-open - distro non-free recommended
driver : nvidia-driver-515 - distro non-free
driver : nvidia-driver-515-server - distro non-free
driver : nvidia-driver-470 - distro non-free
driver : nvidia-driver-510 - distro non-free
driver : nvidia-driver-525 - distro non-free
driver : nvidia-driver-470-server - distro non-free
driver : nvidia-driver-515-open - distro non-free
driver : xserver-xorg-video-nouveau - distro free builtin
参考上面的输出,从nvidia-driver-525-open - distro non-free recommended
到nvidia-driver-525 - distro non-free
,或者使用 GUI,从第一个到第二个。
那是什么recommended
意思呢?我觉得这是一个误导性的建议,我建议也许提供一些关于这个选择的信息,也许解释一下对于一些笔记本推荐一种,而对于另一种笔记本则推荐另一种。
希望这可以帮助。