NVIDIA RTX 4060 Mobile PCIe link stuck at Gen1 (2.5GT/s)

Hello everyone.
After updating to fedora 43 from fedora 42, i’ve noticed that my discrete gpu has become effectively unusable. Any workloads that requires the nvidia gpu performs as if the gpu was not there at all, or barely active. After a long while of messing with the terminal and searching on the internet (since i am admittedly not very knowledgeable) i think i have identified the cause:
the PCIe link to my gpu is stuck at Gen1 (2.5GT/s) and it does not scales up, not even on gaming workloads.

Here you have what happens when running, for example, goat simulator 3:

nvidia-smi
Mon Mar 16 13:04:14 2026       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.126.18             Driver Version: 580.126.18     CUDA Version: 13.0     |
+-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce RTX 4060 ...    On  |   00000000:01:00.0 Off |                  N/A |
| N/A   37C    P8              4W /   60W |     964MiB /   8188MiB |     26%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A           20267    C+G   ...in64\Goat2-Win64-Shipping.exe        884MiB |
|    0   N/A  N/A           20458    C+G   ...Win64/UnrealCEFSubProcess.exe         33MiB |
+-----------------------------------------------------------------------------------------+

sudo lspci -vv -s 01:00.0 | grep LnkCap:
LnkCap: Port #0, Speed 16GT/s, Width x8, ASPM L1, Exit Latency L1 <4us

sudo lspci -vv -s 01:00.0 | grep LnkSta:
LnkSta: Speed 2.5GT/s (downgraded), Width x8

I’ve admittedly not tried many things (since as i have said, i don’t know much). I mainly i tried to disable tuned and tuned-ppd just in case it was the power management the one limiting my gpu, rebuilding and reinstalling the drivers with akmods --rebuild --force and playing with setpci.

I have found a similar issue on the nvidia open gpu modules github:

But after reading, it says its specific of the 590 drivers, and that the writer did not have such problems witht the 580 drivers (that are the ones i am using); so i am in a loss of what to do.

Has anyone experienced a similar problem? Or know how to solve this?

System info:

  • Laptop: Acer Nitro ANV15-41 (BIOS V1.15)
  • CPU: AMD Ryzen 7 7735HS
  • GPU 0: AMD Radeon 680M [Integrated]
  • GPU 1: NVIDIA GeForce RTX 4060 Max-Q / Mobile [10de:28a0] [Discrete]
  • OS: Fedora 43 KDE Plasma 6.6.2, Wayland
  • Kernel: Linux 6.19.7-200.fc43.x86_64
  • Nvidia Driver: NVIDIA 580.126.18 (the open one)

Not an answer to your issue, but a commenter on that issue does say that they had (slightly less severe) issues with the 580 drivers too:

nvidia-open 580.126.18 (partially better but only temporarily)

So your issue could be connected to the one described there.

Yeah, I just saw it. Though the comments in the issue don’t seem to provide any actual fix to the problem. I mean, I could update to the 590 drivers and try, but for that I would have to get out of the stable nvidia drivers branch and I don’t think that is something I should do :sweat_smile: .