Dell XPS 15 7590

From ArchWiki
Revision as of 04:01, 18 July 2019 by Duper51 (talk | contribs) (Add in backlight documentation, as backlight does not work by default on OLED displays.)
Jump to navigation Jump to search
Note: This page refers to the 7590 revision of the XPS 15. Most of it also applies to the Precision 5540.


Device/Functionality Status
Suspend Working
Hibernate Working
Integrated Graphics Working
Discrete Nvidia Graphics Modify
Backlight Modify
Wifi Modify
Bluetooth Working
rfkill Working
Audio Working
Touchpad Working
Touchscreen Working
Webcam Working
Card Reader Working
Function/Multimedia Keys Working
Power Management Working
EFI firmware updates Working
Fingerprint reader[broken link: invalid section] Not working


This page contains recommendations for running Arch Linux on the Dell XPS 15 7590 (2019).

Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: This page is work in progress. (Discuss in Talk:Dell XPS 15 7590#)

UEFI

Before installing it is necessary to modify some UEFI Settings. They can be accessed by pressing the F2 key repeatedly when booting.

  • Change the SATA Mode from the default "RAID" to "AHCI". This will allow Linux to detect the NVME SSD. If dual booting with an existing Windows installation, Windows will not boot after the * change but this can be fixed without a reinstallation.
  • Change Fastboot to "Thorough" in "POST Behaviour". This prevents intermittent boot failures.
  • Disable secure boot to allow Linux to boot.

The WIFI will not be working out of the box, a internet connection via cable or USB tethering is needed. To get it working, a manual installation of the driver is required, see Dell XPS 15 7590#WIFI.

Firmware Update

Firmware images can be found at Dell support page. Keeping an existing Windows system will make updates of BIOS much simpler. If a clean Arch Linux install is the case in order to install:

  • Download the desired firmware from section "Dell XPS 15 7590 System BIOS"
  • Save it in /boot/EFI/Dell/Bios/ (this path may vary, depending on your installation)
  • Reboot the system, and enter the boot menu by pressing repeatedly F12 on Dell logo
  • Choose "Bios Flash Update"
  • Select the file previously saved, and start the process

The process will take about five minutes, during which the system will have some reboots and push fans at maximum speed. Finally the system will reboot normally.

Power Management

Suspend

Hibernate

Powertop

Graphics

kernel modules

NVIDIA Optimus

Backlight

If using a desktop environment with an OLED screen, you may notice the backlight does not function. Since on some models the screen is OLED (which do not have physical backlights), you may need to shim the ACPI backlight functions to update Xrandr's "--backlight" option. This is done by monitoring the acpi_video0 levels, and updating the xrandr brightness levels accordingly.

For this to work, you must first install inotify-tool and bc. Then, create the following file:

$ cat /usr/local/bin/xbacklightmon
#!/bin/sh

# modify this path to the location of your backlight class
path=/sys/class/backlight/intel_backlight

luminance() {
    read -r level < "$path"/actual_brightness
    factor=$((max))
    new_brightness="$(bc -l <<< "scale = 2; $level / $factor")"
    printf '%f\n' $new_brightness
}

read -r max < "$path"/max_brightness

xrandr --output eDP-1-1 --brightness "$(luminance)"

inotifywait -me modify --format  "$path"/actual_brightness | while read; do
    xrandr --output eDP-1-1 --brightness "$(luminance)"
done

Then make this file executable and owned by root:

$ chown root:root /usr/local/bin/xbacklightmon
$ chmod 755 /usr/local/bin/xbacklightmon

You may test this by running the file, and using the backlight keys to test if the brightness updates. Finally, configure the script to run when you display manager starts.

Wifi and Bluetooth

WIFI

WIFI will not be working out of the box, a manual installation is required. Connect to the internet via a cable or via USB tethering, then consult this page, i.e. Make sure you are on the latest Kernel.

$ pacman -S git
$ git clone https://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/backport-iwlwifi.git
$ cd backport-iwlwifi
$ make defconfig-iwlwifi-public
$ make -j4
$ sudo make install

Additionally, you will need to ensure you have the latest iwlwifi firmware:

$ sudo git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
$ cd linux-firmware
$ sudo cp iwlwifi-* /lib/firmware/

Reboot.

Touchpad and Touchscreen

Docks

EFI firmware updates

Thermal management

Tips and Tricks

Fingerprint reader