Nvidia EGPU with AMD/AMD laptop only works on DRI_PRIME

Hello all,

I am using a Thinkpad P14s Gen 6 with a R9 PRO 370 with a Radeon 390M.
I have a Razer Core X V2 enclosure with a 5080 on it. This setup works on ubuntu (with a lot of glitching) and windows 11.

In manjaro it only allows for EGPU passthrough via DRI_PRIME=1 %command%, meaning I lose about 15% performance on top of the performance loss that EGPUs have.

Main issue: I get stuck on boot if I have the EGPU plugged in. If I don’t plug it in it boots but nvidia-smi doesn’t work and as soon as I reload the DE (hyprland or KDE) I go back to black screen.

If I don’t have those parameters the machine works as expected except I have no output on the card’s DP and my monitor gets no signal. Monitor works on internal GPU.

I have followed the arch wiki and it still doesn’t work at all.

Some info:

ls /dev/dri/  
by-path  card1  renderD128

sudo sh -c 'cat /sys/kernel/debug/dri/*/name'
amdgpu dev=0000:c4:00.0 unique=0000:c4:00.0
amdgpu dev=0000:c4:00.0 unique=0000:c4:00.0
amdgpu dev=0000:c4:00.0 unique=0000:c4:00.0

lsmod | grep nvidia                               
nvidia_drm            151552  1
nvidia_modeset       2195456  1 nvidia_drm
nvidia              16568320  2 nvidia_modeset
drm_ttm_helper         20480  2 amdgpu,nvidia_drm
video                  81920  3 thinkpad_acpi,amdgpu,nvidia_modeset

Please provide the output of:

inxi --filter --verbosity=8

or the short form (preferred):

inxi -zv8
Running `inxi` in `chroot`
Providing `inxi` when you cannot access your desktop environment

Unfortunatly inxi just hangs when it gets to the graphical units.
nvidia-smi also hangs when I connect the egpu after boot.

Also attached is the output of dmesg regarding nvidia

System:
  Kernel: 7.0.10-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 16.1.1
    clocksource: tsc avail: hpet,acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-7.0-x86_64
    root=UUID=f09aa16a-5e78-406c-96b8-1c7b99e9faa8 rw quiet splash
    udev.log_priority=3 pci=pcie_bus_perf iommu=pt
  Desktop: Hyprland v: 0.55.2 with: waybar tools: avail: swaylock vt: 1
    dm: SDDM Distro: Manjaro base: Arch Linux
Machine:
  Type: Laptop System: LENOVO product: 21RVCTO1WW v: ThinkPad P14s Gen 6 AMD
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: LENOVO model: 21RVCTO1WW serial: <superuser required>
    part-nu: LENOVO_MT_21RV_BU_Think_FM_ThinkPad P14s Gen 6 AMD
    uuid: <superuser required> Firmware: UEFI vendor: LENOVO
    v: R2XET33W (1.13 ) date: 06/03/2025
Battery:
  ID-1: BAT0 charge: 48.9 Wh (86.2%) condition: 56.7/57 Wh (99.5%)
    volts: 17.09 min: 15.6 model: Sunwoda 5B11M90127 type: Li-poly
    serial: <filter> charging: status: not charging control: start: 85%
    end: 90% cycles: 55
  Device-1: hidpp_battery_0 model: Logitech MX Keys Wireless Keyboard
    serial: <filter> charge: 100% (should be ignored) rechargeable: yes
    status: discharging
  Device-2: hidpp_battery_1 model: Logitech MX Master 3S serial: <filter>
    charge: 80% rechargeable: yes status: discharging
Memory:
  System RAM: total: 64 GiB available: 54.56 GiB used: 3.36 GiB (6.2%)
  Message: For most reliable report, use superuser + dmidecode.
  Array-1: capacity: 64 GiB slots: 2 modules: 2 EC: None
    max-module-size: 32 GiB note: est.
  Device-1: Channel-A DIMM 0 type: DDR5 detail: synchronous unbuffered
    (unregistered) size: 32 GiB speed: 5600 MT/s volts: note: check curr: 1
    min: 1 max: 1 width (bits): data: 64 total: 64 manufacturer: Samsung
    part-no: M425R4GA3EB0-CWMOD serial: <filter>
  Device-2: Channel-B DIMM 0 type: DDR5 detail: synchronous unbuffered
    (unregistered) size: 32 GiB speed: 5600 MT/s volts: note: check curr: 1
    min: 1 max: 1 width (bits): data: 64 total: 64 manufacturer: Samsung
    part-no: M425R4GA3EB0-CWMOD serial: <filter>
PCI Slots:
  Permissions: Unable to run dmidecode. Root privileges required.
CPU:
  Info: model: AMD Ryzen AI 9 HX PRO 370 w/ Radeon 890M bits: 64 type: MT MCP
    arch: Zen 5 gen: 5 level: v4 note: check built: 2024+ process: TSMC n4 (4nm)
    family: 0x1A (26) model-id: 0x24 (36) stepping: 0 microcode: 0xB204037
  Topology: cpus: 1x dies: 1 clusters: 1 cores: 12 threads: 24 tpc: 2
    smt: enabled cache: L1: 960 KiB desc: d-12x48 KiB; i-12x32 KiB L2: 12 MiB
    desc: 12x1024 KiB L3: 24 MiB desc: 1x16 MiB, 1x8 MiB
  Speed (MHz): avg: 605 min/max: 605/5158:3289 boost: enabled scaling:
    driver: amd-pstate-epp governor: powersave cores: 1: 605 2: 605 3: 605
    4: 605 5: 605 6: 605 7: 605 8: 605 9: 605 10: 605 11: 605 12: 605 13: 605
    14: 605 15: 605 16: 605 17: 605 18: 605 19: 605 20: 605 21: 605 22: 605
    23: 605 24: 605 bogomips: 95828
  Flags: 3dnowprefetch abm adx aes amd_lbr_pmc_freeze amd_lbr_v2 aperfmperf
    apic arat avic avx avx2 avx512_bf16 avx512_bitalg avx512_vbmi2
    avx512_vnni avx512_vp2intersect avx512_vpopcntdq avx512bw avx512cd
    avx512dq avx512f avx512ifma avx512vbmi avx512vl avx_vnni bmi1 bmi2 bpext
    bus_lock_detect cat_l3 cdp_l3 clflush clflushopt clwb clzero cmov
    cmp_legacy constant_tsc cpb cppc cpuid cpuid_fault cqm cqm_llc
    cqm_mbm_local cqm_mbm_total cqm_occup_llc cr8_legacy cx16 cx8 de
    decodeassists erms extapic extd_apicid f16c flush_l1d flushbyasid fma fpu
    fsgsbase fsrm fxsr fxsr_opt gfni ht hw_pstate ibpb ibrs ibrs_enhanced ibs
    invpcid irperf lahf_lm lbrv lm mba mca mce misalignsse mmx mmxext monitor
    movbe movdir64b movdiri msr mtrr mwaitx nonstop_tsc nopl npt nrip_save nx
    ospke osvw overflow_recov pae pat pausefilter pclmulqdq pdpe1gb
    perfctr_core perfctr_llc perfctr_nb perfmon_v2 pfthreshold pge pku pni
    popcnt pse pse36 rapl rdpid rdpru rdrand rdseed rdt_a rdtscp rep_good sep
    sha_ni skinit smap smca smep ssbd sse sse2 sse4_1 sse4_2 sse4a ssse3
    stibp succor svm svm_lock syscall tce topoext tsc tsc_adjust tsc_scale
    umip user_shstk v_spec_ctrl v_vmsave_vmload vaes vgif vmcb_clean vme
    vmmcall vnmi vpclmulqdq wbnoinvd wdt x2avic xgetbv1 xsave xsavec
    xsaveerptr xsaveopt xsaves xtopology
  Vulnerabilities:
  Type: gather_data_sampling status: Not affected
  Type: ghostwrite status: Not affected
  Type: indirect_target_selection status: Not affected
  Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data status: Not affected
  Type: old_microcode status: Not affected
  Type: reg_file_data_sampling status: Not affected
  Type: retbleed status: Not affected
  Type: spec_rstack_overflow mitigation: IBPB on VMEXIT only
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Enhanced / Automatic IBRS; IBPB:
    conditional; STIBP: always-on; PBRSB-eIBRS: Not affected; BHI: Not
    affected
  Type: srbds status: Not affected
  Type: tsa status: Not affected
  Type: tsx_async_abort status: Not affected
  Type: vmscape mitigation: IBPB on VMEXIT
sudo dmesg | grep -iE "nvidia|nvrm|gsp"                                  ✔ 

[    0.851135] nvidia: loading out-of-tree module taints kernel.
[    0.851143] nvidia: module verification failed: signature and/or required key missing - tainting kernel
[    0.920501] nvidia-nvlink: Nvlink Core is being initialized, major device number 239
[    0.920506] NVRM: No NVIDIA GPU found.
[    0.922281] nvidia-nvlink: Unregistered Nvlink Core, major device number 239
[    1.114418] nvidia-nvlink: Nvlink Core is being initialized, major device number 239
[    1.114422] NVRM: No NVIDIA GPU found.
[    1.116089] nvidia-nvlink: Unregistered Nvlink Core, major device number 239
[    1.286911] nvidia-nvlink: Nvlink Core is being initialized, major device number 239
[    1.286918] NVRM: No NVIDIA GPU found.
[    1.288797] nvidia-nvlink: Unregistered Nvlink Core, major device number 239
[    1.462208] nvidia-nvlink: Nvlink Core is being initialized, major device number 239
[    1.462211] NVRM: No NVIDIA GPU found.
[    1.463984] nvidia-nvlink: Unregistered Nvlink Core, major device number 239
[    3.759253] nvidia-nvlink: Nvlink Core is being initialized, major device number 237
[    3.759262] NVRM: No NVIDIA GPU found.
[    3.761397] nvidia-nvlink: Unregistered Nvlink Core, major device number 237
[   30.383439] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.1/sound/card3/input32
[   30.383578] input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.1/sound/card3/input33
[   30.383693] input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.1/sound/card3/input34
[   30.383800] input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.1/sound/card3/input35
[   30.499919] nvidia-nvlink: Nvlink Core is being initialized, major device number 510
[   30.501638] nvidia 0000:03:00.0: enabling device (0000 -> 0003)
[   30.501736] nvidia 0000:03:00.0: vgaarb: VGA decodes changed: olddecodes=io+mem,decodes=none:owns=none
[   30.516458] NVRM: loading NVIDIA UNIX Open Kernel Module for x86_64  595.71.05  Release Build  (root@pramos-p14s)  
[   30.536803] nvidia-modeset: Loading NVIDIA UNIX Open Kernel Mode Setting Driver for x86_64  595.71.05  Release Build  (root@pramos-p14s)  
[   30.540688] [drm] [nvidia-drm] [GPU ID 0x00000300] Loading driver
[  246.878726]  ? portSyncSpinlockAcquire+0x18/0x30 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.878904]  ? osGetCurrentThread+0x29/0x60 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.879148]  os_acquire_rwlock_write+0x26/0x40 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.879281]  portSyncRwLockAcquireWrite+0x10/0x40 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.879414]  rmapiLockAcquire+0x2a4/0x3b0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.879581]  rm_power_source_change_event+0x51/0x1b5 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.880179]  ? _regRead.isra.0+0xc9/0x170 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.880397]  os_acquire_rwlock_write+0x26/0x40 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.880529]  portSyncRwLockAcquireWrite+0x10/0x40 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.880663]  rmapiLockAcquire+0x2a4/0x3b0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.880794]  kgspInitRm_IMPL+0x1413/0x2460 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.880976]  RmInitAdapter+0x134e/0x2330 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.881206]  rm_init_adapter+0x135/0x140 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.881408]  nv_start_device+0x273/0x820 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.881516]  nv_open_device+0x96/0x260 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.881641]  nvidia_dev_get+0x87/0xf0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.881757]  nvkms_open_gpu+0x59/0xa0 [nvidia_modeset 98a28758ae17703479b66d354d9decebf4afd62f]
[  246.881790]  AllocateDevice+0x4f/0x3f0 [nvidia_modeset 98a28758ae17703479b66d354d9decebf4afd62f]
[  246.881820]  nv_drm_dev_load+0xba/0xbb2 [nvidia_drm b3840c0f70a512a2e9906354e0cfc16a3491bcd0]
[  246.881835]  ? portSyncSpinlockAcquire+0x18/0x30 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.882021]  ? __pfx_nv_drm_event_callback+0x10/0x10 [nvidia_drm b3840c0f70a512a2e9906354e0cfc16a3491bcd0]
[  246.882037]  ? _tlsEntryRelease+0x11c/0x180 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.882188]  ? rmapiFreeWithSecInfo+0x226/0x2a0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.882361]  nv_drm_register_drm_device.cold+0x1a/0x157 [nvidia_drm b3840c0f70a512a2e9906354e0cfc16a3491bcd0]
[  246.882369]  ? __pfx_nv_drm_register_drm_device+0x10/0x10 [nvidia_drm b3840c0f70a512a2e9906354e0cfc16a3491bcd0]
[  246.882376]  EnumerateGpus+0x1af/0x1c0 [nvidia_modeset 98a28758ae17703479b66d354d9decebf4afd62f]
[  246.882425]  ? __pfx_nv_linux_drm_init+0x10/0x10 [nvidia_drm b3840c0f70a512a2e9906354e0cfc16a3491bcd0]
[  246.882432]  nv_drm_probe_devices+0x5c/0x70 [nvidia_drm b3840c0f70a512a2e9906354e0cfc16a3491bcd0]
[  246.882692] INFO: task nvidia-smi:5469 blocked for more than 122 seconds.
[  246.882695] task:nvidia-smi      state:D stack:0     pid:5469  tgid:5469  ppid:1      task_flags:0x400000 flags:0x00080002
[  246.882712]  ? portSyncSpinlockAcquire+0x18/0x30 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.882848]  ? osGetCurrentThread+0x29/0x60 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.883118]  os_acquire_rwlock_write+0x26/0x40 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.883253]  portSyncRwLockAcquireWrite+0x10/0x40 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.883387]  rmapiLockAcquire+0x2a4/0x3b0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.883542]  serverTopLock_Prologue+0x54/0x110 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.883707]  serverAllocResource+0x1d8/0x5f0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.883840]  rmapiAllocWithSecInfo+0x233/0x490 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.883981]  rmapiAllocWithSecInfoTls+0x75/0xa0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.884123]  Nv04AllocWithAccessSecInfo+0x69/0x80 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.884272]  RmIoctl+0xa62/0xdf0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.884509]  ? os_get_monotonic_time_ns+0x3a/0xa0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.884645]  ? os_acquire_spinlock+0x12/0x30 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.884776]  ? portSyncSpinlockAcquire+0x18/0x30 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.884909]  rm_ioctl+0x7b/0x600 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.885144]  nvidia_unlocked_ioctl+0x6ff/0xaa0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.885299]  ? nvidia_unlocked_ioctl+0x1f5/0xaa0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.885479] INFO: task nvidia-smi:5469 <writer> blocked on an rw-semaphore likely owned by task kworker/16:2:1465 <writer>
[  246.885526] INFO: task nvidia-smi:5586 blocked for more than 122 seconds.
[  246.885529] task:nvidia-smi      state:D stack:0     pid:5586  tgid:5586  ppid:5496   task_flags:0x400000 flags:0x00080000
[  246.885546]  ? portSyncSpinlockAcquire+0x18/0x30 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.885682]  ? osGetCurrentThread+0x29/0x60 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.885893]  os_acquire_rwlock_write+0x26/0x40 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.886022]  portSyncRwLockAcquireWrite+0x10/0x40 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.886150]  rmapiLockAcquire+0x2a4/0x3b0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.886303]  serverTopLock_Prologue+0x54/0x110 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.886455]  serverAllocResource+0x1d8/0x5f0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.886589]  rmapiAllocWithSecInfo+0x233/0x490 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.886729]  rmapiAllocWithSecInfoTls+0x75/0xa0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.886864]  Nv04AllocWithAccessSecInfo+0x69/0x80 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.887006]  RmIoctl+0xa62/0xdf0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.887224]  ? os_get_monotonic_time_ns+0x3a/0xa0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.887354]  ? os_acquire_spinlock+0x12/0x30 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.887483]  ? portSyncSpinlockAcquire+0x18/0x30 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.887625]  rm_ioctl+0x7b/0x600 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.887846]  nvidia_unlocked_ioctl+0x6ff/0xaa0 [nvidia e2dd7f887d9ebc2032e2907916c0c88486cca15d]
[  246.888002] INFO: task nvidia-smi:5586 <writer> blocked on an rw-semaphore likely owned by task kworker/16:2:1465 <writer>

nvidia-open does not work on my Tuxedo. I must use the proprietary Drivers.

Unfortunatly not a solution for me as the Blackwell cards are not supported by nvidia proprietary drivers, only nvidia-open as stated in this table.

I haven’t seen anyone with a Blackwell card working on a arch setup, but thats probably due to not being that common of a setup.
I am on kernel 7.0.13-1.