Dell Inspiron 15 (7590)

From ArchWiki
Jump to navigation Jump to search
Note: This page refers to the 7590 revision of the Inspiron 15. Most of it also applies to the Vostro 7590 and the Inspiron 15 7591
Device Status Modules
Video Working i915
Wireless Working iwlwifi
Bluetooth Working btusb
Audio Working snd_hda_intel
Microphone Working snd_sof
Touchpad Working hid_multitouch
Webcam Working uvcvideo
USB-C / Thunderbolt 3 Working intel_wmi_thunderbolt
Wireless switch Working intel_hid
Function/Multimedia Keys Working ?
Fingerprint Reader Unsupported 27c6:538d Shenzhen Goodix

The Dell Inspiron 15 (7590) was released in May 2019, some country released it called Vostro 7590, and the aluminum alloy body version is Inspiron 7591. They use the same BIOS and Motherboard.

The installation process for Arch on the Inspiron 15 does not differ from any other PC. For installation help, please see the Installation guide and UEFI. This page covers the current status of hardware support on Arch, as well as post-installation recommendations.

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 you can do this before switching to AHCI.
  • If you have already changed RAID to AHCI and can't boot into Windows, just continue booting utill showing up WINRE, then enter safe mode for once. Reboot once more and Windows will automatically start with AHCI drivers enabled.
  • Disable secure boot to allow Linux to boot. If not, Linux can be booting with secure boot by rEFInd

Booting and installing from a microSD card is also possible, as long as SD Card and SD Card Boot are both enabled in the UEFI setup.

Graphics

Display

The video should work with the i915 driver of the current linux kernel. Consult Intel graphics for a detailed installation and configuration guide as well as for Intel graphics#Troubleshooting.

If you have the 4K (3840x2160) model, also check out HiDPI for UI scaling configurations.

DisplayPort connection via the USB C / Thunderbolt port is detected automatically and appears to work flawlessly.

Graphics Configuration

The Dell Inspiron 15 7590 has Intel HD Graphics 630 integrated graphics, and some models have an Nvidia GeForce GTX 1650 dedicated card as well in a hybrid configuration.

For computers with only integrated graphics, just install the xf86-video-intel driver.

If your Inspiron has a hybrid graphics configuration (GTX1650 + HD Graphics 630) and you want to maximize battery life you can just use the Intel Graphics.

Intel Only

If your model comes with an nVidia card which you don't use then you can try to disable it with an ACPI command. Depending on the model, this can have a small to profound effect on the laptop's temperature and battery life (it can more than double battery life!)

Optimus Configuration (Hybrid Intel and Nvidia)

PRIME Offload

Follow the instructions for PRIME. In the case of this laptop, there are only two required steps:

Warning: Without the second step above, the dGPU will remain powered, and will drain your battery quicker.
Note: The power-saving features described in the second step are available only for the GTX 1650. If your laptop comes with the older GTX 1050, you may do better to use the older switching method (described below).
arch-prime-git
Note: arch-prime-gitAUR has been obsoleted upstream in favour of PRIME#PRIME render offload.

You can use arch-prime-gitAUR to switch the graphics card. Make sure you have installed xf86-video-intel, nvidia driver, and bbswitch-dkms, then, as the root user run prime-select service restore before first time using it. Here is an example of using prime-select below:

# prime-select boot intel2    # select default card at boot with xf86-video-intel
# prime-select nvidia         # select nvidia graphics card for next login
# prime-select get-current    # display driver currently configured
  • Switching graphics card by logout may cause wifi function in NetworkManager stop working, you can systemctl restart NetworkManager to solve it.
  • The Optimus setup consists of the integrated Intel chip connected to the laptop screen and the Nvidia card runs through this. As such, the Nvidia chip cannot be used without the Intel chip (some other laptops have the option in BIOS to turn Intel off and use just Nvidia, but not this laptop).

Wifi

The Wifi adapter contains a Intel(R) Wireless-AC 9560 160MHz module. It should work out of the box with the iwlwifi driver in recent linux kernels.

Keyboard

The keyboard backlight has a feature that makes it automatically turn off after a given timeout. This timeout can be adjusted by writing into /sys/class/leds/dell\:\:kbd_backlight/stop_timeout. For example,

echo "5m" > /sys/class/leds/dell\:\:kbd_backlight/stop_timeout

This would set the timeout to 5 minutes.

Power Saving

Enable thermald

Thermald is a daemon created by Intel to control CPU heat more intelligently than the laptop's firmware is capable of. It plays nicely with TLP.

Enable TLP

The TLP may increase battery life.

You can monitor the used power and also the temperature of your machine with the s-tui tool.

CPU Undervolting

Note: For Bios 1.6.0 0x78C need set to 0x0 so undervolt can be used, if you don't know how to change UEFI var, this may help you.

It's possible to undervolt CPU and GPU with intel-undervolt

This is an example of stable values for i7-9750H (depend of your cpu):

CPU (0): -155.27 mV
GPU (1): -110.35 mV
CPU Cache (2): -139.65 mV
System Agent (3): -0.00 mV
Analog I/O (4): -0.00 mV

Edit the config file

$ nano /etc/intel-undervolt.conf

This is an example for i7-9750H

# CPU Undervolting

undervolt 0 'CPU' -155
undervolt 1 'GPU' -110
undervolt 2 'CPU Cache' -140
undervolt 3 'System Agent' 0
undervolt 4 'Analog I/O' 0

# Daemon Update Interval

interval 5000

then enable/start the daemonĀ :)

$ systemctl enable intel-undervolt
$ systemctl start intel-undervolt

Firmware Updates

Dell provides firmware updates via Linux Vendor Firmware Service (LVFS). Refer to Flashing BIOS from Linux#fwupd for additional information. A package is readily available at fwupd. Updates are provided for the Thunderbolt controller as well. There is an issue where the Thunderbolt version number is detected as 00.00 after reflashing (currently being investigated).

Dell has also released updates to the SSD firmware, but these can only be updated from Windows, not from Linux.

Thermal Modes / Fan profiles

Just like in Windows by using Dell Power Manager you can set the thermal configuration and behavior of the fans and CPU of your machine. This is done within a terminal with the commands below, or via a KDE Plasma widget:

To find out what thermal mode is set to 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" profile limits CPU power to 25W and thus reduces overall system performance.
  • "Balanced" and "Performance" profiles remove this limit.

Touchpad

Sensitivity

By default, the libinput driver might not have the desired sensitivity. The acceleration can be changed via xinput as follows:

 xinput --set-prop $(xinput | grep 'DELL.*Touchpad' | awk '{print $6}' | sed 's/id=//g') 'libinput Accel Speed' 0.5

USB Type-C ports

Troubleshooting

I/O Operating is very slow

While running sudo, htop, lspci and so on, then get freezing or very slow, to fix it below:

If you're running over Linux Kernel 5.2, while staying in bootloader, add kernel parameter nomodeset to boot, then add nouveau to blacklist (Kernel module#Blacklisting)

Freezing while resume from suspend

Add these kernel parameters: acpi_rev_override=1 acpi_osi=Linux mem_sleep_default=deep

  • S0ix(or S2idle) suspend mode may cause freezing, only S3 can work properly.

Sound card not detected

This may be caused by newer kernels attempting to load the newer SOF audio driver in preference to the old driver.

First, install the sof-firmware package and reboot. If this does not solve the problem, you will need to instruct the kernel to use the old driver.

Note: Using the old audio driver means that the internal microphone will not be available.
Note: There is a bug report against the SOF driver for this laptop: https://github.com/thesofproject/linux/issues/1917

Create the following file:

/etc/modprobe.d/audio-fix.conf
options snd-intel-dspcfg dsp_driver=1

It is also possible to provide this as a kernel parameter in GRUB configuration: snd-intel-dspcfg.dsp_driver=1.

You could also try setting the snd_hda_intel.dmic_detect=0 kernel parameter, although this is due to be deprecated in favour of the above method.

No audio from 3.5mm headphone jack port

In pavucontrol, try changing the Pulseaudio output profile from "Analog Stereo Output" to "Analog Stereo Duplex".

Microphone not working

Install sof-firmware (Sound Open Firmware). Remove snd_hda_intel.dmic_detect=0 kernel parameter if you added it. With this, Microphone will be working. If mic level is still low, it's possible to raise it in alsamixer.

Note: For me, this resulted in no audio and errors in the kernel log. Bug reported here: https://github.com/thesofproject/linux/issues/1917