Unable to detect GPU - Dell XPS 9570

Hi everyone, I installed Manjaro about a week ago and I'm loving it so far. But I've ran into an issue where I'm unable to detect my discrete GPU at all.

Similar to this post: https://archived.forum.manjaro.org/t/could-not-enable-discrete-graphics-card-dell-xps-9570/59270/13 However, my machine does not seem to even detect the GPU at all. Any ideas on how to detect the GPU so I can use it again?

Machine: Dell XPS 9570

inxi -Fxz

System: Host: n-pc Kernel: 4.19.8-2-MANJARO x86_64 bits: 64 compiler: gcc v: 8.2.1 Desktop: KDE Plasma 5.14.4
Distro: Manjaro Linux
Machine: Type: Laptop System: Dell product: XPS 15 9570 v: N/A serial: <filter>
Mobo: Dell model: 02MJVY v: A00 serial: <filter> UEFI: Dell v: 1.5.0 date: 09/03/2018
Battery: ID-1: BAT0 charge: 76.0 Wh condition: 84.6/97.0 Wh (87%) model: LGC-LGC8.33 DELL 5XJ2885 status: Charging
CPU: Topology: 6-Core model: Intel Core i7-8750H bits: 64 type: MT MCP arch: Kaby Lake rev: A L2 cache: 9216 KiB
flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 53004
Speed: 959 MHz min/max: 800/4100 MHz Core speeds (MHz): 1: 959 2: 903 3: 1058 4: 884 5: 1196 6: 929 7: 926 8: 922
9: 925 10: 922 11: 915 12: 1304
Graphics: Device-1: Intel UHD Graphics 630 vendor: Dell driver: i915 v: kernel bus ID: 00:02.0
Display: x11 server: [X.Org](http://x.org/) 1.20.3 driver: modesetting resolution: 3840x2160~60Hz
OpenGL: renderer: Mesa DRI Intel UHD Graphics 630 (Coffeelake 3x8 GT2) v: 4.5 Mesa 18.2.6 direct render: Yes
Audio: Device-1: Intel Cannon Lake PCH cAVS vendor: Dell driver: snd_hda_intel v: kernel bus ID: 00:1f.3
Device-2: GYROCOM C&C type: USB driver: hid-generic,snd-usb-audio,usbhid bus ID: 1-5.2:5
Sound Server: ALSA v: k4.19.8-2-MANJARO
Network: Device-1: Intel Wireless-AC 9260 driver: iwlwifi v: kernel port: efa0 bus ID: 3b:00.0
IF: wlp59s0 state: up mac: <filter>
Device-2: Realtek RTL8153 Gigabit Ethernet Adapter type: USB driver: r8152 bus ID: 4-1.4:3
IF: ens20u1u4 state: up speed: 1000 Mbps duplex: full mac: <filter>
IF-ID-1: mullvad-gb1-gb2 state: unknown speed: N/A duplex: N/A mac: N/A
Drives: Local Storage: total: 476.94 GiB used: 49.80 GiB (10.4%)
ID-1: /dev/nvme0n1 vendor: Samsung model: SSD 970 PRO 512GB size: 476.94 GiB
Partition: ID-1: / size: 451.45 GiB used: 49.80 GiB (11.0%) fs: ext4 dev: /dev/nvme0n1p2
ID-2: swap-1 size: 16.98 GiB used: 0 KiB (0.0%) fs: swap dev: /dev/nvme0n1p3
Sensors: System Temperatures: cpu: 72.0 C mobo: N/A
Fan Speeds (RPM): N/A
Info: Processes: 278 Uptime: 25m Memory: 15.43 GiB used: 1.98 GiB (12.8%) Init: systemd Compilers: gcc: 8.2.1 Shell: bash
v: 4.4.23 inxi: 3.0.28

mhwd -li

> Installed PCI configs:

---

    NAME               VERSION          FREEDRIVER           TYPE

---

video-hybrid-intel-nvidia-bumblebee 2018.08.09 false PCI

Warning: No installed USB configs!

mhwd

> 0000:00:02.0 (0300:8086:3e9b) Display controller Intel Corporation:

---

    NAME               VERSION          FREEDRIVER           TYPE

---

    video-linux            2018.05.04                true            PCI
            video-vesa            2017.03.12                true            PCI

Some good notes to take into consideration.

1 Like

so youve tried the bumblebee method and it was less than successful, possibly by some unknown user error or maybe like my inspiron does not like playing well with bumblebee regardless of many long attempts to make it work otherwise. you have other options.

  • PRIME , works perfectly with video-nvidia proprietary drivers, the nvidia gpu does all rendering and outputs to the integrated intel gpu for output to display/hdmi/etc. there is no need for any of the bbswitch,primus,optirun and vulkan incompatibility nonsense. this method had both the igpu and dgpu powered on at all times so it can use a little more battery but performance is the best.
  • optimus-manager is another option that lets you choose which gpu to use for each x session so if your not doing graphic intensive tasks you can run on the intel gpu only and when needing the nvidia you can run it similar to how PRIME works and performance should match that of prime also when dgpu is enabled.

its user preference based on what your needs are. ive never used optimus-manager but it looks promising as a bumblebee alternative with many more benefits than bb. you can read through the below tutorials and the link @openminded suggested to the arch wiki for your specific model and decide which you'd prefer .


What is the terminal output of:
lspci -nn

Hopefully is not a hardware issue, as your inxi only shows one GPU, the intel one, and normally it should show both (if exists) whatever driver is installed.

did you turn off your dedicated gpu in bios? double checking should be your very first step

1 Like

Yeah his inxi output makes me think he has his Nvidia GPU manually disabled in BIOS. However, I've never seen such things myself, so maybe I am wrong.

not many have the option to select in bios but the ones that do sometimes either let you choose to run both igpu and dgpu or just igpu, some let you choose dgpu. they are all different based on how the hardware is setup. i wish i had the option but im not so lucky.
@usersuser if you have the option to use the nvidia dedicated gpu only, it makes compatibility incredibly simple as you have no need to utilize both intel and nvidia and would only need install nvidia drivers and be done with it.

Hi all, thank you for your rapid replies. I've never encountered such helpfulness on a forum before!

The GPU is not disabled in BIOS. My BIOS does not have the option to disable the GPU.

lspci -nn

[n@n-pc ~]$ lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers [8086:3ec4] (rev 07)
00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x16) [8086:1901] (rev 07)
00:02.0 VGA compatible controller [0300]: Intel Corporation UHD Graphics 630 (Mobile) [8086:3e9b]
00:04.0 Signal processing controller [1180]: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem [8086:1903] (rev 07)
00:08.0 System peripheral [0880]: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model [8086:1911]
00:12.0 Signal processing controller [1180]: Intel Corporation Cannon Lake PCH Thermal Controller [8086:a379] (rev 10)
00:14.0 USB controller [0c03]: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller [8086:a36d] (rev 10)
00:14.2 RAM memory [0500]: Intel Corporation Cannon Lake PCH Shared SRAM [8086:a36f] (rev 10)
00:15.0 Serial bus controller [0c80]: Intel Corporation Device [8086:a368] (rev 10)
00:15.1 Serial bus controller [0c80]: Intel Corporation Device [8086:a369] (rev 10)
00:16.0 Communication controller [0780]: Intel Corporation Cannon Lake PCH HECI Controller [8086:a360] (rev 10)
00:17.0 SATA controller [0106]: Intel Corporation Device [8086:a353] (rev 10)
00:1b.0 PCI bridge [0604]: Intel Corporation Cannon Lake PCH PCI Express Root Port #17 [8086:a340] (rev f0)
00:1c.0 PCI bridge [0604]: Intel Corporation Cannon Lake PCH PCI Express Root Port #1 [8086:a338] (rev f0)
00:1c.4 PCI bridge [0604]: Intel Corporation Cannon Lake PCH PCI Express Root Port #5 [8086:a33c] (rev f0)
00:1d.0 PCI bridge [0604]: Intel Corporation Cannon Lake PCH PCI Express Root Port #9 [8086:a330] (rev f0)
00:1f.0 ISA bridge [0601]: Intel Corporation Device [8086:a30e] (rev 10)
00:1f.3 Audio device [0403]: Intel Corporation Cannon Lake PCH cAVS [8086:a348] (rev 10)
00:1f.4 SMBus [0c05]: Intel Corporation Cannon Lake PCH SMBus Controller [8086:a323] (rev 10)
00:1f.5 Serial bus controller [0c80]: Intel Corporation Cannon Lake PCH SPI Controller [8086:a324] (rev 10)
02:00.0 PCI bridge [0604]: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] [8086:15da] (rev 02)
03:00.0 PCI bridge [0604]: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] [8086:15da] (rev 02)
03:01.0 PCI bridge [0604]: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] [8086:15da] (rev 02)
03:02.0 PCI bridge [0604]: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] [8086:15da] (rev 02)
3a:00.0 USB controller [0c03]: Intel Corporation Device [8086:15db] (rev 02)
3b:00.0 Network controller [0280]: Intel Corporation Wireless-AC 9260 [8086:2526] (rev 29)
3c:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader [10ec:525a] (rev 01)
3d:00.0 Non-Volatile memory controller [0108]: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981 [144d:a808]

not many have the option to select in bios but the ones that do sometimes either let you choose to run both igpu and dgpu or just igpu, some let you choose dgpu. they are all different based on how the hardware is setup. i wish i had the option but im not so lucky.
@usersuser if you have the option to use the nvidia dedicated gpu only, it makes compatibility incredibly simple as you have no need to utilize both intel and nvidia and would only need install nvidia drivers and be done with it.

I don't seem to have that option. Nor can I even see the nvidia GPU at all.

Tried seeing if the GPU was disabled on boot from (https://wiki.archlinux.org/index.php/Dell_XPS_15_9570)

/etc/tmpfiles.d/nvidia_pm.conf

and

/etc/modprobe.d/blacklist.conf

But both of these are empty

But is nowhere to be seen in lspci ...
Is this a new machine that you got from a reliable source or was refurbished?

But is nowhere to be seen in lspci
Is this a new machine that you got from a reliable source or was refurbished?

This a new machine. I've had it running Ubuntu for months without issues.

Please try a live media install of whatever distro to confirm the Nvidia GPU is shown with the
lspci -nn command as for now is impossible to know the cause of not being detected. You could try to take out the battery and the power cord and press the power button to run out of any static ...

i know there are firmware updates that may help with the problems your having and are easily done using fwupd.

sudo pacman -S fwupd
sudo fwupdmgr enable-remote lvfs-testing
sudo fwupdmgr get-devices
sudo fwupdmgr update
reboot
fwupd detects and retrieves any bios and hardware specific firmware from the manufacturer and installs it without needing to run updates from windows (which you can also do easily) or putting them on usb and running them at boot.

Please try a live media install of whatever distro to confirm the Nvidia GPU is shown with the
lspci -nn command as for now is impossible to know the cause of not being detected. You could try to take out the battery and the power cord and press the power button to run out of any static …

Just tried this. The Nvidia GPU is detected using a live USB.
I guess I could try removing the battery as a last resort.

Boot now in the installed system and check if something changed.

Nothing appears to have changed. lspci -nn and hardware configuration are unable to see the GPU. Any more ideas?

I would go by a fresh install

That seems like a final solution. I'd really like to see if this is fixable so others can benefit from a solution if they encounter this issue.

i agree, ive help others with your model and 9560 with optimus related issues but not detecting the card at all was not one of them. if the live environment can see the card then its something in your current install thats stopping it from being used/detected.
can you post output of:
cat /etc/default/grub
maybe you have a kernel parameter thats preventing it.

also here's another post similar to yours.

Forum kindly sponsored by