Dell Inspiron 15 (7590)

From ArchWiki

Tango-edit-clear.pngThis article or section does not follow the Laptop page guidelines.Tango-edit-clear.png

Reason: Stub (Discuss in Talk:Dell Inspiron 15 (7590))
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 OR snd_sof
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 information on this page may also be useful to those with the Dell Inspiron 7391 (13" screen correspondent model).

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 cannot 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.

Note: The power of the GTX 1650 dedicated card appears to be hardware-limited while the laptop is running on battery power. Regardless of software settings (e.g. nvidia NVreg_RegistryDwords module options), the GPU does not go beyond performance level 2 (out of 3) as shown in nvidia-settings. However it will run at full speed even if the laptop is charging via the USB C port, even though the battery will likely continue to deplete.

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 do not 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).
  • Switching graphics card by logout may cause wifi function in NetworkManager stop working, you can restart NetworkManager.service 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).

Audio

Use the new sof-hda-dsp driver

Note: The internal digital microphone only works with the new driver.

This laptop requires firmware in order for the soundcard to work. See Advanced Linux Sound Architecture#ALSA firmware.

After reboot, you should see a list of audio devices with names include Cannon Lake PCH cAVS. Also, you should be able to see Digital Microphone appearing in the "Recording Devices". If using the new sof-hda-dsp driver does not solve the problem, you will need to follow instructions below to use the legacy driver.

As of July 2020, there exists a bug that the Master device is automatically muted after rebooting. If you can hear no sound from output, install alsa-utils and run alsamixer -c 0. Then, switch to "Master" device, press "m" to unmute it so that you see "00" instead of "MM" under it. If it has 0% volume, you should also press up arrow key to increase the volume to 100%. After that, the sound should work.

You can use following command to store your current setting, so you do not need to un-mute the device manually after each reboot.

# alsactl store
Note: There is a bug report against the SOF driver for this laptop: https://github.com/thesofproject/linux/issues/1917

Automatically un-muting Master device after booting

If entering alsamixer -c 0 and un-muting the device manually after each reboot seems too laborious, you can also automate this process.

Create an executable script with the following commands and make it autostart depending on your environment (see Autostarting for details).

amixer -Dhw:0 cset name='Master Playback Switch' on
amixer -Dhw:0 cset name='Master Playback Volume' 100%

Use legacy HDA-Intel driver

Note: Using the old audio driver means that the internal microphone will not be available.

Create the following file:

/etc/modprobe.d/audio-fix.conf
blacklist snd-sof-pci
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.

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 do not know how to change UEFI var, this may help you.

It is 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 /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 intel-undervolt.service.

S3 Suspend

By default, the i2idle suspend variant is enabled, instead of the more conventional deep (suspend-to-ram) variant. The resume speed difference is negligible, but the battery drains noticeable faster when the laptop is suspended with i2idle.

To test the deep variant:

$ cat /sys/power/mem_sleep
[s2idle] deep
$ echo deep > /sys/power/mem_sleep

To make the change permanent, add mem_sleep_default=deep to your kernel parameters.

Note: In deep (S3) sleep, it seems that pressing any button on the built-in keyboard will cause the laptop to resume. You will need to be particularly careful about this, as slight pressure on the lid of the laptop can cause keyboard presses.

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 plasma5-applets-plasma-pstateAUR:

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 are 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.

You should install the sof-firmware package and reboot.

No audio from 3.5mm headphone jack port when using legacy driver

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

Microphone not working

Instruct the kernel to use the new SOF drivers. See #Use the new sof-hda-dsp driver

Removing HDMI Audio devices when using SOF driver

Note: This disables all HDMI devices and will break audio output with HDMI. Use with caution.

If the three HDMI entries in the Audio Devices bothers you, you can remove ALL of them by the following config file:

/etc/modprobe.d/audio-fix.conf
options snd_sof_intel_hda_common codec_mask=0x1