Dell XPS 17 (9700)
Hardware | PCI/USB ID | Working? |
---|---|---|
GPU (Intel) |
8086:9bc4 (Comet Lake GT2) |
Yes |
GPU (Nvidia) |
10de:1f95 (1650 Ti) |
Yes |
Wireless |
8086:06F0 (Intel Killer AX1650s) |
Yes |
Bluetooth |
8087:0026 (Intel Killer AX1650s) |
Partial |
Audio |
8086:06c8 (Intel PCH cAVS) |
Yes |
Touchpad |
04f3:311c (Dell Touchpad) |
Yes |
Webcam | 0bda:5510 |
Yes |
Infrared emitters | Yes | |
Ambient light sensor | Unknown | Untested |
Fingerprint sensor |
27c6:533c (Goodix) |
Yes |
SD reader |
10ec:5260 (Realtek RTS5260) |
Yes |
Installation
Before installing it is necessary to modify some UEFI Settings. They can be accessed by pressing the F12 key repeatedly when booting.
- Change the SATA Mode from the default "RAID" to "AHCI". This will allow Linux to detect the NVME SSD.
- Disable secure boot to allow Linux to boot. This may be re-enabled at a later point. See Using a signed bootloader
- Disable Early Logo Display under Pre-boot Behaviour. This allows S1 sleep to function, as well as S3 sleep on some models. See #Power Management.
Dual Boot
Please note that changing from "RAID" to "AHCI" will break the default Windows installation and require a complete reinstall. The reinstall can be done through the Dell recovery in the BIOS.
Once reinstalled, Windows should boot normally in AHCI mode and without error. Then one can proceed with typical dual boot setup.
Firmware/BIOS Updates
Dell provides firmware updates that can be installed automatically using fwupd (or one of its graphical frontends such as Gnome Software or KDE Discover).
Alternatively, firmware updates can also be installed manually by downloading them from the support page and placing the exe file on a fat32 drive or the EFI boot partition, then selecting the file in the BIOS update page after pressing F12 at boot time.
It is possible to install custom Secure Boot root keys in the BIOS and use them for Secure Boot with Linux.
Power Management
Sleep
Like many modern laptops, traditional S1/S3 states are not supported and have been replaced by "Modern Standby". The ACPI configuration causes the system to suspend to idle by default s2idle which allows the CPU to dynamically enter power saving states. In order for the system to maintain residency in the lower sleep states, the SATA mode may need to be set to "ACHI" instead of the default "RAID". For models configured with a 2060 series NVIDIA GPU, the proprietary NVIDIA driver may yield lower power usage in sleep states since power management is not supported for the nouveau driver as of the time of writing.
If the system seems to have a high power usage when idling, S3 sleep can be re-enabled by adding mem_sleep_default=deep
to the Kernel parameters in order to override the ACPI settings, however, as of the time of writing, S3 sleep mode does not seem to work for models with NVIDIA GPUs when on battery power. Users of variants with no dedicated GPU report S3 sleep to be working.
Hibernation
For hibernation to work, you must turn off "SMM Security Mitigation" under Security in the BIOS setup. Otherwise the system may freeze when attempting to hibernate.
GPU
Using the integrated intel iGPU instead of the dedicated GPU can provide power savings. There are various methods for utilising NVIDIA Optimus, however using PRIME#PRIME render offload seems to have the best performance on the 9700.
Screen Brightness
Systems have a 600 nit display (which is LCD, not OLED) and so the ACPI section of the Backlight Archwiki will work, but per the Unable to control eDP Panel brightness (Intel i915 only) part of the Troubleshooting section, a kernel parameter of i915.enable_dpcd_backlight=1
is necessary.
As of December 2021, this kernel parameter does not seem to be necessary anymore for screen brightness control.
Bluetooth
Bluetooth works out of the box, but sometimes tends to get stuck in a turned off mode after boot or after manually turning it off. Sometimes, this can be fixed by a simple restart of bluetooth.service
, but frequently the only fix is to shut down the laptop and start it again.
WiFi
Intel Killer AX1650s (i5 / i7 CPU models)
WiFi may prompt you repeatedly for the WiFi network password when connecting to a 5Ghz network. This has to do with the poor support of the 11n protocol. You can instruct the iwlwifi driver to not use the 11n protocol by running the following command:
# tee /etc/modprobe.d/iwlwifi-opt.conf <<< "options iwlwifi 11n_disable=8"
More information on this problem can be found here: Network configuration/Wireless#iwlwifi and http://cachestocaches.com/2016/1/disabling-ubuntus-broken-wi-fi-driver/
Qualcomm Killer AX500s DBS (i9 CPU models)
Occasionally after turning WiFi off, attempting to turn it back on will fail and the only fix seems to be a full reboot of the device. Sometimes removing and reinserting the driver kernel module `ath11k_pci` also works.
Fingerprint sensor
The fingerprint sensor can be used by installing the proprietary Ubuntu driver released by Dell and Goodix. This requires a different fork of libfprint libfprint-tod-gitAUR - available on the AUR and built from source from the upstream repo. This is a newer version intended for use only with touch-based sensors such as the one on the XPS.
The proprietary driver can be obtained from the AUR: libfprint-2-tod1-xps9300-binAUR. Alternatively, it can also be manually installed from the Dell repository by extracting the debian file and copying its contents.
The rest of the process is identical as that described on Fprint - just make sure not to install the version of libfprint on the main repo as it conflicts with libfprint-tod
Thunderbolt
The following thunderbolt devices have been tested:
Device | Status | Comments |
---|---|---|
Dell WD19TB 130W | Working | Dual 4k through USB-c does not work, dual 4k using the thunderbolt upstream port is temperamental |
Dell TB16 | Working | - |
Audio
This laptop requires firmware from the sof-firmware package in order for the internal sound card to work. Also see Advanced Linux Sound Architecture#ALSA firmware.
Fan control
By default, fans are controlled by BIOS. Unfortunately even "Quiet" preset keeps fans spinning most of the time.
To change it, i8kmon from i8kutilsAUR can be used.
Details: Fan speed control#Dell laptops
BIOS Thermal Modes / Fan profiles
If you still decided to go with bios-driven fan control, you can switch thermal profiles like in Dell Power Manager from Windows. This is done within a terminal with the libsmbios package, or alternatively via plasma5-applets-plasma-pstateAUR:
To find out what thermal mode is set type:
# smbios-thermal-ctl -g
To find all available thermal modes type:
# smbios-thermal-ctl -i
And finally to set the desired thermal mode that you identified with the command before type:
# smbios-thermal-ctl --set-thermal-mode=THERMAL_MODE
- "Quiet" and "Cool Bottom" profiles limit CPU power to 11W (18W boost) and thus reduces overall system performance.
- "Balanced" and "Performance" profiles remove this limit.
- Thermal profile changes may not reliably alter the CPU power limit. When connected via Thunderbolt dock it appears to be worse.
- In some circumstances after booting (particularly with "Quiet" profile), power may be limited to 10W.
- Disconnecting and reconnecting power, changing thermal profile, or simply waiting may resolve these issues.