0

I have a Lenovo Legion 7 16ACHg6 that for a week decided not to detect any external HDMIs nor other types of cables. It is a dual booted laptop with Windows 10 on another disk (disabled Secure Boot, Dynamic graphics).


Software specs

$ 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

Whenever I connect an HDMI, USB-C or other type of monitor output there is not detected whatsoever.

$ 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 

The laptop is currently using recommended NVIDIA drivers v525 drivers

$ 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

Also when I run nvidia-smi I get (I found nvidia-smi “No devices were found” on NVIDIA forum but couldn't understand if there were a solution other than try to update)

$ nvidia-smi
No devices were found

and examining the dmesg output

 $ 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

Status of the NVIDIA modules

$ 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

File /etc/default/grub contents:

$ 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"


Hardware informations

Output of lspci when an HDMI and a USB-C are plugged

$ 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)

i.e.

$ 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])

Running inxi -G gives (i think this could help)

$ 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

What I tried

I have already tried updating ubuntu-drivers

sudo ubuntu-drivers autoinstall

I tried re configuring gdm3

sudo dpkg-reconfigure gdm3

I tried commenting out options nvidia-drm modeset=1 in /lib/modprobe.d/nvidia-kms.conf file and leaving Power mode. I am currently running on Balance mode. enter image description here


A brief personal comment

Citing a very similar question (and also looking at the amount of questions arising in this realm of NVIDIA-HDMIs-graphics-drivers-etc.)

Aside from these considerations, thanks, as always, to the community.

David
  • 2,101
  • 13
  • 16
  • 25

1 Answers1

0

Ok so apparently the solution was super easy, even though now I am asking myself some "why?".

I could solve the problem by switching from the recommended driver for NVIDIA graphics to the proprietary non-open,

$ 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

with the reference to the above output from nvidia-driver-525-open - distro non-free recommended to nvidia-driver-525 - distro non-free, or with the GUI, from the 1st one to the 2nd.

enter image description here

Then what recommended means? I sense this is a misleading recommendation, and I suggest to maybe give some informations about that choice, maybe explaining that with some notebooks one is recommended, and with another another one is.

Hope this helps.