External monitor not working on fedora 31


I am trying pretty long time to get my external monitor working with my lenovo laptop (intel graphics + nvidia geforce GTX 1650). It was working before on my fedora 30 with nvidia drivers installed by dnf. After kernel update, it stopped working and I wasn’t able to fix it. Since then, I have screwed up my operating system two times while trying to fix it, with no luck.

Yesterday I have installed fedora 31. I had some problems with xorg from the start (with clear fedora installation), so I was forced to “dnf update”. After that, I have installed nvidia drivers from gnome software. External monitor still wasn’t working, so I have uninstalled drivers with gnome software and installed nvidia drivers with dnf from negativo17. After all of that, still no luck to get it to work. External monitor is simply acting like it is not getting any signal from my notebook. Monitor and nvidia GPU is 100% working, tested on windows (I have dual boot but I guess that doesn’t matter). Nouveau is blacklisted, nvidia modules seem to be loaded. Any commands ouput that might be usefull:

Loaded nvidia modules/no nouveau modules:

[manes@ideapad ~]$ lsmod |grep -i nvidia
nvidia_drm             49152  4
nvidia_modeset       1118208  5 nvidia_drm
nvidia_uvm           1081344  0
nvidia              20439040  163 nvidia_uvm,nvidia_modeset
ipmi_msghandler       114688  2 ipmi_devintf,nvidia
drm_kms_helper        212992  2 nvidia_drm,i915
drm                   548864  16 drm_kms_helper,nvidia_drm,i915
[manes@ideapad ~]$ lsmod |grep -i nouveau
[manes@ideapad ~]$ 

Nvidia packages installed:

[manes@ideapad ~]$ dnf list *nvidia*
negativo17 - Nvidia                                                       22 kB/s | 3.9 kB     00:00    
Fedora Modular 31 - x86_64 - Updates                                     151 kB/s |  22 kB     00:00    
Fedora 31 - x86_64 - Updates                                             221 kB/s |  22 kB     00:00    
Installed Packages
akmod-nvidia.x86_64                               3:440.44-1.fc31         @fedora-nvidia                 
kmod-nvidia-5.4.8-200.fc31.x86_64.x86_64          3:440.44-1.fc31         @@commandline                  
nvidia-driver.x86_64                              3:440.44-1.fc31         @fedora-nvidia                 
nvidia-driver-NVML.x86_64                         3:440.44-1.fc31         @fedora-nvidia                 
nvidia-driver-cuda.x86_64                         3:440.44-1.fc31         @fedora-nvidia                 
nvidia-driver-cuda-libs.x86_64                    3:440.44-1.fc31         @fedora-nvidia                 
nvidia-driver-libs.i686                           3:440.44-1.fc31         @fedora-nvidia                 
nvidia-driver-libs.x86_64                         3:440.44-1.fc31         @fedora-nvidia                 
nvidia-kmod-common.noarch                         3:440.44-1.fc31         @fedora-nvidia                 
nvidia-libXNVCtrl.x86_64                          3:440.44-1.fc31         @fedora-nvidia                 
nvidia-persistenced.x86_64                        3:440.44-1.fc31         @fedora-nvidia                 
nvidia-settings.x86_64                            3:440.44-1.fc31         @fedora-nvidia                 

Some informations about GPU. I am not really sure what should I think about that warning in the bottom.

[manes@ideapad ~]$ nvidia-smi
Wed Jan 15 13:16:07 2020       
| NVIDIA-SMI 440.44       Driver Version: 440.44       CUDA Version: 10.2     |
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|   0  GeForce GTX 1650    Off  | 00000000:01:00.0 Off |                  N/A |
| N/A   37C    P8     1W /  N/A |     31MiB /  3911MiB |      0%      Default |
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|    0      1470      G   /usr/libexec/Xorg                             14MiB |
|    0      1842      G   /usr/libexec/Xorg                             14MiB |
WARNING: infoROM is corrupted at gpu 0000:01:00.0

I don’t really know what else to do after all. You are my last hope.

Thank you for any informations or help.

Hi! Your says “Xorg”. But the “Wayland” is default, aren’t it is?


I were need to read my posted link further (see the next comment)...

devtalk.nvidia.com: “infoROM is corrupted at gpu”.

When I first installed fedora 30, it was using wayland by default. Now it seems like it’s x11 by default again.

[manes@ideapad ~]$ echo $XDG_SESSION_TYPE

I found that post about damaged GPU but it seems like the moderator isn’t really sure what he is talking about. He changed his answer in next comment to “software defect”. There probably is chance that it might be somehow damaged but as I said, it’s working properly on windows - external monitor and gaming is without problems.

“There is no public specification for the behavior of the card with a corrupted inforom.” – Linux isn’t allowed to visit this party, possibly.

Try to change session to Wayland back?

Also as I mentioned, it stopped to work after kernel update (from 5.2 to 5.3 I think) - it was working fine on fedora 30 before that update. So yes, it’s still a chance that it might be damaged but that would be pretty unlucky.

When I installed fedora 30 before, default was wayland but I switched to x11 because it had problems with some applications, for example gparted. But it’s good idea, I will try that. Should I uninstall nvidia drivers and everything related first?

I think, no. After – maybe.

Reading your post and seeing that you have a intel CPU and nvidia is possible that you do have a hybrid CPU+GPU integreted (check if you cpu have a internal GPU, it look be so because the module i915 is loaded, but you would check if it is the case to be sure, maybe the module is loaded by default in the intel CPU within/without integreted i am not sure because i use amd ) which should do that you was in the case of optimus and so if you install the driver from rpm fusion you should check it:


External Monitors detection

At this time, external monitors connected to the NVIDIA GPU requires the PrimaryGPU option to be set. See the next topic about how to setup as appropriate.

NVIDIA PrimaryGPU Support

Before the Full optimus support, the only way to enable the NVIDIA driver was to set the NVIDIA GPU to be used by default. To recover this previous behaviour, you can use:

cp -p /usr/share/X11/xorg.conf.d/nvidia.conf /etc/X11/xorg.conf.d/nvidia.conf

And edit the file to use: Option “PrimaryGPU” “yes”

Like this user did too:


I hope this can help you a bit.



Wow, it really helped. I thought that I do not have to care about optimus as soon as it was working before and there was no need to add config file - obviously I was horribly wrong. Thank you very much, that helped me a lot.

So adding and editing the config file was the solution. Thanks for your help guys!

I used nvidia drivers from rpmfusion, installed via gnome software. With drivers installed from negativo17, I couldn’t find mentioned config file.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.