Trying to make everything work on a legion 7i 2022 with intel CPU and NVIDIA GPU with a dual boot setup

The nvidia-inst --prime command after installation doesn’t work according to what the discovery article says. I am clueless how to get around the issue.

00:00.0 Host bridge: Intel Corporation Device 4637 (rev 02)
	Subsystem: Lenovo Device 3801
00:01.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x16 Controller #1 (rev 02)
	Subsystem: Lenovo Device 3805
	Kernel driver in use: pcieport
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-HX GT1 [UHD Graphics 770] (rev 0c)
	Subsystem: Lenovo Device 3b17
	Kernel driver in use: i915
	Kernel modules: i915
00:04.0 Signal processing controller: Intel Corporation Alder Lake Innovation Platform Framework Processor Participant (rev 02)
	Subsystem: Lenovo Device 380e
	Kernel driver in use: proc_thermal_pci
	Kernel modules: processor_thermal_device_pci
00:06.0 PCI bridge: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 (rev 02)
	Subsystem: Lenovo Device 380d
	Kernel driver in use: pcieport
00:08.0 System peripheral: Intel Corporation 12th Gen Core Processor Gaussian & Neural Accelerator (rev 02)
	Subsystem: Lenovo Device 3811
00:0a.0 Signal processing controller: Intel Corporation Platform Monitoring Technology (rev 01)
	Subsystem: Lenovo Device 3817
	Kernel driver in use: intel_vsec
	Kernel modules: intel_vsec
00:14.0 USB controller: Intel Corporation Alder Lake-S PCH USB 3.2 Gen 2x2 XHCI Controller (rev 11)
	Subsystem: Lenovo Device 3868
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
00:14.2 RAM memory: Intel Corporation Alder Lake-S PCH Shared SRAM (rev 11)
	Subsystem: Lenovo Device 386a
00:14.3 Network controller: Intel Corporation Alder Lake-S PCH CNVi WiFi (rev 11)
	Subsystem: Rivet Networks Device 1672
	Kernel driver in use: iwlwifi
	Kernel modules: iwlwifi, wl
00:15.0 Serial bus controller: Intel Corporation Alder Lake-S PCH Serial IO I2C Controller #0 (rev 11)
	Subsystem: Lenovo Device 3864
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
00:15.1 Serial bus controller: Intel Corporation Alder Lake-S PCH Serial IO I2C Controller #1 (rev 11)
	Subsystem: Lenovo Device 3865
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
00:15.2 Serial bus controller: Intel Corporation Alder Lake-S PCH Serial IO I2C Controller #2 (rev 11)
	Subsystem: Lenovo Device 3866
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
00:15.3 Serial bus controller: Intel Corporation Alder Lake-S PCH Serial IO I2C Controller #3 (rev 11)
	Subsystem: Lenovo Device 3867
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
00:16.0 Communication controller: Intel Corporation Alder Lake-S PCH HECI Controller #1 (rev 11)
	Subsystem: Lenovo Device 385e
	Kernel driver in use: mei_me
	Kernel modules: mei_me
00:19.0 Serial bus controller: Intel Corporation Alder Lake-S PCH Serial IO I2C Controller #4 (rev 11)
	Subsystem: Lenovo Device 3858
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
00:19.1 Serial bus controller: Intel Corporation Alder Lake-S PCH Serial IO I2C Controller #5 (rev 11)
	Subsystem: Lenovo Device 3859
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
00:1a.0 PCI bridge: Intel Corporation Device 7ac8 (rev 11)
	Subsystem: Lenovo Device 3801
	Kernel driver in use: pcieport
00:1b.0 PCI bridge: Intel Corporation Device 7ac5 (rev 11)
	Subsystem: Lenovo Device 3801
	Kernel driver in use: pcieport
00:1e.0 Communication controller: Intel Corporation Alder Lake-S PCH Serial IO UART #0 (rev 11)
	Subsystem: Lenovo Device 3838
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
00:1e.3 Serial bus controller: Intel Corporation Alder Lake-S PCH Serial IO SPI Controller #1 (rev 11)
	Subsystem: Lenovo Device 383b
	Kernel driver in use: intel-lpss
	Kernel modules: intel_lpss_pci
00:1f.0 ISA bridge: Intel Corporation Device 7a8c (rev 11)
	Subsystem: Lenovo Device 3818
00:1f.3 Audio device: Intel Corporation Alder Lake-S HD Audio Controller (rev 11)
	Subsystem: Lenovo Device 382b
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel, snd_sof_pci_intel_tgl
00:1f.4 SMBus: Intel Corporation Alder Lake-S PCH SMBus Controller (rev 11)
	Subsystem: Lenovo Device 3833
	Kernel driver in use: i801_smbus
	Kernel modules: i2c_i801
00:1f.5 Serial bus controller: Intel Corporation Alder Lake-S PCH SPI Controller (rev 11)
	Subsystem: Lenovo Device 3834
	Kernel driver in use: intel-spi
	Kernel modules: spi_intel_pci
01:00.0 VGA compatible controller: NVIDIA Corporation GA104M [Geforce RTX 3070 Ti Laptop GPU] (rev a1)
	Subsystem: Lenovo Device 3f96
	Kernel modules: nouveau, nvidia_drm, nvidia
01:00.1 Audio device: NVIDIA Corporation GA104 High Definition Audio Controller (rev a1)
	Subsystem: Lenovo Device 3f96
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
05:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller PM9A1/PM9A3/980PRO
	Subsystem: Samsung Electronics Co Ltd Device a801
	Kernel driver in use: nvme
	Kernel modules: nvme
06:00.0 PCI bridge: Intel Corporation Thunderbolt 4 Bridge [Maple Ridge 4C 2020] (rev 02)
	Subsystem: Device 0108:2108
	Kernel driver in use: pcieport
07:00.0 PCI bridge: Intel Corporation Thunderbolt 4 Bridge [Maple Ridge 4C 2020] (rev 02)
	Subsystem: Device 0108:2108
	Kernel driver in use: pcieport
07:01.0 PCI bridge: Intel Corporation Thunderbolt 4 Bridge [Maple Ridge 4C 2020] (rev 02)
	Subsystem: Device 0108:2108
	Kernel driver in use: pcieport
07:02.0 PCI bridge: Intel Corporation Thunderbolt 4 Bridge [Maple Ridge 4C 2020] (rev 02)
	Subsystem: Device 0108:2108
	Kernel driver in use: pcieport
07:03.0 PCI bridge: Intel Corporation Thunderbolt 4 Bridge [Maple Ridge 4C 2020] (rev 02)
	Subsystem: Device 0108:2108
	Kernel driver in use: pcieport
08:00.0 USB controller: Intel Corporation Thunderbolt 4 NHI [Maple Ridge 4C 2020]
	Subsystem: Device 0108:2108
	Kernel driver in use: thunderbolt
	Kernel modules: thunderbolt
3b:00.0 USB controller: Intel Corporation Thunderbolt 4 USB Controller [Maple Ridge 4C 2020]
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
6f:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)
	Subsystem: Lenovo Device 3803
	Kernel driver in use: r8169
	Kernel modules: r8169

What do you mean it doesn’t work? Are you getting a specific error message?

As you can see in the lspci output, it detects the device, at 01:00.0 but there are no Kernel driver in use:
I have executed nvidia-inst --prime

2023-01-19 12:22:37: Info: Running: nvidia-inst v1.8-1
2023-01-19 12:22:37: Info: Command line: nvidia-inst --prime
2023-01-19 12:22:37: Info: Selected mode: prime
NVIDIA card id: 24e0
Fetching driver data from nvidia.com ...
2023-01-19 12:22:40: Info: Installing packages: nvidia-prime
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
COMMANDS TO RUN:
    pacman -Syuq --noconfirm --noprogressbar --needed nvidia-prime
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

==> NOTE: running the commands may take several minutes...

Root Password: 
:: Synchronising package databases...
 endeavouros downloading...
 core downloading...
 extra downloading...
 community downloading...
 multilib downloading...
:: Starting full system upgrade...
resolving dependencies...
looking for conflicting packages...

Package (1)         New Version  Net Change

extra/nvidia-prime  1.0-4          0.00 MiB

Total Installed Size:  0.00 MiB

:: Proceed with installation? [Y/n] 
checking keyring...
checking package integrity...
loading package files...
checking for file conflicts...
:: Processing package changes...
installing nvidia-prime...
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
2023-01-19 12:22:46: Note: To have the changes in effect, you must reboot the computer.

I rebooted the computer and nvidia-smi hangs.

My linux kernel is Linux gluon-alderlake 6.1.6-arch1-3 #1 SMP PREEMPT_DYNAMIC Mon, 16 Jan 2023 12:51:23 +0000 x86_64 GNU/Linux

inxi -FAZ

Even this hangs up after writing up this

System:
  Host: gluon-alderlake Kernel: 6.1.6-arch1-3 arch: x86_64 bits: 64
    Desktop: Xfce v: 4.18.0 Distro: EndeavourOS
Machine:
  Type: Laptop System: LENOVO product: 82TD v: Legion 7 16IAX7
    serial: <superuser required>
  Mobo: LENOVO model: LNVNB161216 v: NO DPK serial: <superuser required>
    UEFI: LENOVO v: K1CN38WW date: 08/31/2022
Battery:
  ID-1: BAT0 charge: 32.7 Wh (31.7%) condition: 103.0/99.9 Wh (103.1%)
    volts: 15.9 min: 15.5
CPU:
  Info: 16-core (8-mt/8-st) model: 12th Gen Intel Core i7-12800HX bits: 64
    type: MST AMCP cache: L2: 14 MiB
  Speed (MHz): avg: 2050 min/max: 800/4700:4800:3400 cores: 1: 800 2: 2300
    3: 800 4: 2300 5: 2300 6: 2300 7: 2300 8: 2300 9: 800 10: 2300 11: 2300
    12: 2300 13: 2300 14: 2300 15: 800 16: 2300 17: 2300 18: 2300 19: 2300
    20: 2300 21: 2300 22: 2300 23: 2300 24: 2300
Graphics:
  Device-1: Intel Alder Lake-HX GT1 [UHD Graphics 770] driver: i915 v: kernel
  Device-2: NVIDIA GA104M [Geforce RTX 3070 Ti Laptop GPU] driver: N/A
  Device-3: Luxvisions Innotech Integrated RGB Camera type: USB
    driver: uvcvideo
  Display: x11 server: X.Org v: 21.1.6 driver: X: loaded: intel
    unloaded: modesetting dri: i965 gpu: i915 resolution: 2560x1600~60Hz
  API: OpenGL v: 4.6 Mesa 22.3.3 renderer: Mesa Intel UHD Graphics (ADL-S
    GT1)
Audio:
  Device-1: Intel Alder Lake-S HD Audio driver: snd_hda_intel
  Device-2: NVIDIA GA104 High Definition Audio driver: snd_hda_intel
  Sound API: ALSA v: k6.1.6-arch1-3 running: yes
  Sound Server-1: PipeWire v: 0.3.64 running: yes
Network:
  Device-1: Intel Alder Lake-S PCH CNVi WiFi driver: iwlwifi
  IF: wlan0 state: up mac: 8c:f8:c5:14:27:e2
  Device-2: Realtek RTL8125 2.5GbE driver: r8169
  IF: enp111s0 state: down mac: 9c:2d:cd:fe:68:2c
Bluetooth:
  Device-1: Intel type: USB driver: btusb
  Report: rfkill ID: hci0 rfk-id: 2 state: down bt-service: disabled
    rfk-block: hardware: no software: no address: see --recommends
Drives:
  Local Storage: total: 476.94 GiB used: 11.42 GiB (2.4%)
  ID-1: /dev/nvme0n1 vendor: Samsung model: MZVL2512HCJQ-00BL2
    size: 476.94 GiB
Partition:
  ID-1: / size: 289.31 GiB used: 11.14 GiB (3.8%) fs: ext4 dev: /dev/nvme0n1p7
Swap:
  ID-1: swap-1 type: partition size: 4 GiB used: 0 KiB (0.0%)
    dev: /dev/nvme0n1p6

You need ibt=off kernel parameter.

with ibt=off kernel parameter the system boots up to a black screen with a white underscore on top for 5 minutes.
Please suggest something else

Switch to LTS kernel and nvidia drivers then.

sudo pacman -S linux-lts nvidia-lts
sudo grub-mkconfig -o /boot/grub/grub.cfg

Reboot and choose LTS kernel on GRUB menu.

You need ibt=off in order for nvidia to work properly. There must be another issue going on.

Edit: Did you add the kernel parameter in/etc/default/grub and then run sudo grub-mkconfig -o /boot/grub/grub.cfg to make it permanent?

Or are you using systemd-boot which will be different then?

What does this show

inxi -Ga

Edit2: If it’s systemd-boot you add ibt=offto /etc/kernel/cmdline and then run sudo reinstall-kernels

Edit3: It would also be nice if you could post the full hardware output in a format that can be read easily. Post the URL from the output of this command.

inxi -Faz | eos-sendlog
 Device-2: NVIDIA GA104M [Geforce RTX 3070 Ti Laptop GPU] driver: N/A

This is why you need 'ibt=off` as i said above. This is why it’s hanging. You probably haven’t added it correctly depending on whether you are using grub or systemd.

1 Like

Hey ricklinux,

I am not using grub, I am using systemd-boot, so I added it during the boot menu, I pressed e which lets me edit kernel parameters, I added ibt=off there.

Output of inxi -Ga

Graphics:
  Device-1: Intel Alder Lake-HX GT1 [UHD Graphics 770] vendor: Lenovo
    driver: i915 v: kernel arch: Gen-12.2 process: Intel 10nm built: 2021-22+
    ports: active: eDP-1 empty: DP-1, DP-2, HDMI-A-1, HDMI-A-2, HDMI-A-3,
    HDMI-A-4 bus-ID: 00:02.0 chip-ID: 8086:4688 class-ID: 0300
  Device-2: NVIDIA GA104M [Geforce RTX 3070 Ti Laptop GPU] vendor: Lenovo
    driver: N/A alternate: nouveau, nvidia_drm, nvidia non-free: 525.xx+
    status: current (as of 2022-12) arch: Ampere code: GAxxx
    process: TSMC n7 (7nm) built: 2020-22 pcie: gen: 4 speed: 16 GT/s
    lanes: 16 bus-ID: 01:00.0 chip-ID: 10de:24e0 class-ID: 0300
  Device-3: Luxvisions Innotech Integrated RGB Camera type: USB
    driver: uvcvideo bus-ID: 1-11:6 chip-ID: 30c9:0056 class-ID: fe01
    serial: 01.00.00
  Display: x11 server: X.Org v: 21.1.6 compositor: xfwm v: 4.18.0 driver: X:
    loaded: intel unloaded: modesetting alternate: fbdev,vesa dri: i965
    gpu: i915 display-ID: :0.0 screens: 1
  Screen-1: 0 s-res: 2560x1600 s-dpi: 96 s-size: 677x423mm (26.65x16.65")
    s-diag: 798mm (31.43")
  Monitor-1: eDP-1 mapped: eDP1 model: BOE Display 0x0a1f built: 2021
    res: 2560x1600 hz: 60 dpi: 191 gamma: 1.2 size: 340x210mm (13.39x8.27")
    diag: 406mm (16") ratio: 16:10 modes: 2560x1600
  API: OpenGL v: 4.6 Mesa 22.3.3 renderer: Mesa Intel UHD Graphics (ADL-S
    GT1) direct render: Yes

Also inxi -Faz | eos-sendlog hangs up.

There is no driver loaded for Nvidia because you need the kernel paramter ibt=off

Edit: It has to be added correctly either to grub or systmd depending on what you are using.

Hey mrvictory,

linux-lts is kernel 5.15 which doesnt have support for my wifi driver which is why I have been using the latest kernel, as I get my wifi working here.

You said you added ibt=off for systemd-boot. Did you add it here /etc/kernel/cmdline
Then did you run sudo reinstall-kernels

Edit: You have to reboot also after.

:point_up:
Edit2: No driver is loaded!

 Device-2: NVIDIA GA104M [Geforce RTX 3070 Ti Laptop GPU] vendor: Lenovo
    driver: N/A alternate: nouveau, nvidia_drm, nvidia non-free: 525.xx+
    status: current (as of 2022-12) arch: Ampere code: GAxxx
    process: TSMC n7 (7nm) built: 2020-22 pcie: gen: 4 speed: 16 GT/s
    lanes: 16 bus-ID: 01:00.0 chip-ID: 10de:24e0 class-ID: 0300
1 Like

I tried your method of editing /etc/kernel/cmdline and then sudo reinstall-kernels after. Following this, I did a reboot. Now I ended up in a black screen with a unblinking _ on the top left.

Yes, I tried installing the driver with nvidia-inst --prime but I think this is where it just fails to install the correct driver.

Are you able to get into a TTY?

Try running nvidia-inst -n

Edit: If it reboot’s and loads run

inxi -Ga

I am able to get a TTY, with nvidia-inst -n do you want me to install nouveau?

Give it a try. This will remove the nvidia stuff if it’s installed. Just because it’s not loading doesn’t mean it’s not installed.

Ok nouveau seems to push me through to the boot, I have a desktop environment,
Output of inxi -Ga

Graphics:
  Device-1: Intel Alder Lake-HX GT1 [UHD Graphics 770] vendor: Lenovo
    driver: i915 v: kernel arch: Gen-12.2 process: Intel 10nm built: 2021-22+
    ports: active: eDP-2 empty: DP-4, DP-5, HDMI-A-2, HDMI-A-3, HDMI-A-4,
    HDMI-A-5 bus-ID: 00:02.0 chip-ID: 8086:4688 class-ID: 0300
  Device-2: NVIDIA GA104M [Geforce RTX 3070 Ti Laptop GPU] vendor: Lenovo
    driver: nvidia v: 525.78.01 alternate: nouveau non-free: 525.xx+
    status: current (as of 2022-12) arch: Ampere code: GAxxx
    process: TSMC n7 (7nm) built: 2020-22 pcie: gen: 1 speed: 2.5 GT/s
    lanes: 16 link-max: gen: 4 speed: 16 GT/s ports: active: none empty: DP-1,
    DP-2, DP-3, HDMI-A-1, eDP-1 bus-ID: 01:00.0 chip-ID: 10de:24e0
    class-ID: 0300
  Device-3: Luxvisions Innotech Integrated RGB Camera type: USB
    driver: uvcvideo bus-ID: 1-11:7 chip-ID: 30c9:0056 class-ID: fe01
    serial: 01.00.00
  Display: x11 server: X.Org v: 21.1.6 compositor: xfwm v: 4.18.0 driver: X:
    loaded: intel,modesetting,nouveau alternate: fbdev,nv,vesa dri: i965
    gpu: i915 display-ID: :0.0 screens: 1
  Screen-1: 0 s-res: 2560x1600 s-dpi: 96 s-size: 677x423mm (26.65x16.65")
    s-diag: 798mm (31.43")
  Monitor-1: eDP-2 mapped: eDP2 model: BOE Display 0x0a1f built: 2021
    res: 2560x1600 hz: 60 dpi: 191 gamma: 1.2 size: 340x210mm (13.39x8.27")
    diag: 406mm (16") ratio: 16:10 modes: 2560x1600
  API: OpenGL v: 4.6 Mesa 22.3.3 renderer: Mesa Intel UHD Graphics (ADL-S
    GT1) direct render: Yes

And output of inxi -Faz | eos-sendlog

https://0x0.st/ohO8.txt

Okay can you give me a minute to look at it.

1 Like

It does show the nivida driver is loaded now? That’s weird…i wasn’t expecting that.

 Device-2: NVIDIA GA104M [Geforce RTX 3070 Ti Laptop GPU] vendor: Lenovo
    driver: nvidia v: 525.78.01 alternate: nouveau non-free: 525.xx+
    status: current (as of 2022-12) arch: Ampere code: GAxxx
    process: TSMC n7 (7nm) built: 2020-22 pcie: gen: 1 speed: 2.5 GT/s
    lanes: 16 link-max: gen: 4 speed: 16 GT/s ports: active: none empty: DP

Edit: As you can see it’s rendering on Intel

 API: OpenGL v: 4.6 Mesa 22.3.3 renderer: Mesa Intel UHD Graphics (ADL-S
    GT1) direct render: Yes

Edit2: So now nvidia is installed and you shouldn’t have any freezing? Correct?