You are not logged in.

#1 2022-05-11 17:01:52

ShyGal64
Member
Registered: 2022-05-11
Posts: 2

Xrandr not detecting my discrete NVIDIA GPU

Hi,
I'm setting up Arch Linux on my Lenovo ThinkPad P15 Gen 2, which has an integrated Intel GPU and a discrete NVIDIA RTX A3000.
For now, most things worked like a charm, but I wanted to set up PRIME to make use of the discrete GPU.
While both GPUs are detected, and it even seems like it's correctly loading the Nouveau drivers:

$ lspci -k | grep -A 2 -E "(VGA|3D)"
00:02.0 VGA compatible controller: Intel Corporation TigerLake-H GT1 [UHD Graphics] (rev 01)
        Subsystem: Lenovo Device 22d8
        Kernel driver in use: i915
--
01:00.0 VGA compatible controller: NVIDIA Corporation GA104GLM [RTX A3000 Mobile] (rev a1)
        Subsystem: Lenovo Device 22d8
        Kernel driver in use: nouveau

Xrandr seemingly doesn't detect the discrete GPU:

$ xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x4b cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 5 outputs: 8 associated providers: 1 name:Intel
Provider 1: id: 0x556 cap: 0x2, Sink Output crtcs: 4 outputs: 5 associated providers: 1 name:modesetting

After looking at this page, that is linked on the PRIME page in the Arch Wiki: https://wiki.freedesktop.org/nouveau/Optimus/ this is apparently what I'm supposed to see:

$ xrandr --listproviders 
Providers: number : 2
Provider 0: id: 0x8a cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 2 outputs: 2 associated providers: 1 name:Intel
Provider 1: id: 0x66 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 2 outputs: 5 associated providers: 1 name:nouveau

I initially thought that "modesetting" was just another name for the Nouveau driver, but it doesn't see to be the case since I get this if I try to use it with Xrandr:

$ xrandr --setprovideroffloadsink modesetting Intel
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  140 (RANDR)
  Minor opcode of failed request:  34 (RRSetProviderOffloadSink)
  Value in failed request:  0x556
  Serial number of failed request:  16
  Current serial number in output stream:  17

I tried to follow the instructions here: https://wiki.archlinux.org/title/PRIME# … t_provider , but I don't have any Xorg configuration files:

$ ls -l /etc/X11
total 8
drwxr-xr-x 3 root root 4096 Apr 28 21:32 xinit
drwxr-xr-x 2 root root 4096 Feb 19 22:19 xorg.conf.d
$ ls -la /etc/X11/xorg.conf.d/
total 8
drwxr-xr-x 2 root root 4096 Feb 19 22:19 .
drwxr-xr-x 4 root root 4096 Apr 29 00:08 ..

And I also don't seem to have anything in my modprobe folders, at least not related to Nouveau.

$ ls -la /etc/modprobe.d/
total 8
drwxr-xr-x  2 root root 4096 Apr  4 13:33 .
drwxr-xr-x 83 root root 4096 May 11 18:44 ..
$ ls -la /usr/lib/modprobe.d/
total 268
drwxr-xr-x   2 root root   4096 May 11 18:59 .
drwxr-xr-x 147 root root 249856 May 11 18:59 ..
-rw-r--r--   1 root root    306 Apr 28 21:36 README
-rw-r--r--   1 root root    128 Mar 19 10:42 bluetooth-usb.conf
-rw-r--r--   1 root root    101 May  4 10:48 nvdimm-security.conf
-rw-r--r--   1 root root    773 Apr 28 21:36 systemd.conf

Searching for "No modes" in my Xorg log also doesn't return anything.
Is there something I can do to use my discrete graphics?

Thanks a lot.

Offline

#2 2022-05-12 03:00:04

jonno2002
Member
Registered: 2016-11-21
Posts: 684

Re: Xrandr not detecting my discrete NVIDIA GPU

do you have "xf86-video-nouveau" installed

EDIT: aparently nouveau does not fully support ampere cards yet - https://nouveau.freedesktop.org/FeatureMatrix.html
so you will have to use the proprietary drivers

Last edited by jonno2002 (2022-05-12 03:12:34)

Offline

#3 2022-05-12 06:50:03

ShyGal64
Member
Registered: 2022-05-11
Posts: 2

Re: Xrandr not detecting my discrete NVIDIA GPU

Thank you, I should have suspected that it was due to partial support for Ampere cards. I guess I'll just use proprietary drivers for now. Thanks a lot.

Offline

Board footer

Powered by FluxBB