I’ve been trouble-shooting an RTX 5000 Quaddro card most of the day and I believe I’ve narrowed down the issue. MHWD reports a conflict between the prime and 470 drivers.
The rub is, I removed the prime driver and installed the 470 driver. However I believe some conf file is still pointing to the prime driver in name only.
Here’s my evidence so far:
$sudo mhwd -a pci nonfree 0300
> Using config 'video-hybrid-intel-nvidia-prime' for device: 0000:01:00.0 (0300:10de:1eb5) Display controller nVidia Corporation TU104GLM [Quadro RTX 5000 Mobile / Max-Q]
> Using config 'video-hybrid-intel-nvidia-prime' for device: 0000:00:02.0 (0300:8086:9bf6) Display controller Intel Corporation
Error: config 'video-hybrid-intel-nvidia-prime' conflicts with config(s): video-hybrid-intel-nvidia-470xx-prime
mhwd --listinstalled
> Installed PCI configs:
--------------------------------------------------------------------------------
NAME VERSION FREEDRIVER TYPE
--------------------------------------------------------------------------------
video-hybrid-intel-nvidia-470xx-prime 2021.11.04 false PCI
video-modesetting 2020.01.13 true PCI
Warning: No installed USB configs!
Indeed. Only one can be installed at a time. You already have the 470 drivers installed, so using mhwd -a wants to install the default config which is video-hybrid-intel-nvidia-prime (495).
That is odd, it should have already been generated.
No Nvidia Device Found for OpenGL (RTX 5000 Quaddro)
I’ve resorted to re-installing with free drivers, then installing 470 such that prime never gets installed to attempt to avoid the conflict. I’ll report back if it works.
The issue is I want to use Optimus-Manager hybrid mode to pass X11 through to a Docker container like I’m already doing on another laptop (AMD Ryzen 5900HX, Nvidia GTX 3080) with this new laptop (Intel Xeon 10855, Nvidia RTX 5000).
Upon a fresh install and choosing proprietary drivers then removing prime and installing 470 this was not possible because OpenGL was only recognizing the integrated graphics.
To get around the conflict between prime and 470 as detailed above I’ve re-installed with free drivers then installed 470 and optimus-manager. However this also did not resolve the RTX 5000 series not being recognized by OpenGL (as shown below).
Also I think optimus-manager may be the culprit for the missing 90-mhwd-conf file.
optimus-manager --switch hybrid ✔
ERROR: a GPU setup was initiated but Xorg post-start hook did not run.
Log at /var/log/optimus-manager/switch/switch-20211214T182331.log
If your login manager is GDM, make sure to follow those instructions:
https://github.com/Askannz/optimus-manager#important--gnome-and-gdm-users
If your display manager is neither GDM, SDDM nor LightDM, or if you don't use one, read the wiki:
https://github.com/Askannz/optimus-manager/wiki/FAQ,-common-issues,-troubleshooting
Cannot execute command because of previous errors.
cat /var/log/optimus-manager/switch/switch-20211214T182331.log 1 ✘
[14] INFO: # Xorg pre-start hook
[14] INFO: Previous state was: {'type': 'pending_pre_xorg_start', 'requested_mode': 'integrated', 'current_mode': None}
[14] INFO: Requested mode is: integrated
[794] INFO: Available modules: ['nouveau', 'nvidia', 'nvidia_drm', 'nvidia_modeset', 'nvidia_uvm']
[794] INFO: Unloading modules ['nvidia_drm', 'nvidia_modeset', 'nvidia_uvm', 'nvidia'] (if loaded)
[798] INFO: switching=none, nothing to do
841] INFO: Found MHWD-generated Xorg config file at /etc/X11/xorg.conf.d/90-mhwd.conf. Removing.
[841] INFO: Writing to /etc/X11/xorg.conf.d/10-optimus-manager.conf
[841] INFO: Writing state {'type': 'pending_post_xorg_start', 'switch_id': '20211214T182331', 'requested_mode': 'integrated'}
[841] INFO: Xorg pre-start hook completed successfully.
Thank you for your help, the issue is now resolved.
I missed this step in my recollection on how to configure optimus-manager hybrid mode for KDE.
6. For Manjaro KDE users (others ignore at this point):
Edit the file /etc/sddm.conf and simply put a # before the line starting with DisplayCommand and the one starting with DisplayStopCommand.
To edit the sddm.conf in terminal:
sudo nano /etc/sddm.conf
The reason for that is that Manjaro ships with a default configuration for SDDM (the default login manager for KDE) which overrides some keys needed by optimus-manager.
Weirdly enough, it’s possible that you may not have lines:
DisplayCommand
DisplayStopCommand
In such a case you are fine and you have nothing to do. It’s possible some recent Manjaro updates deleted those additional lines (they are not present in non-Manjaro systems anyway).