Tips and tricks to run Linux on “Dell Latitude 7400”
$ dmidecode | grep -i Product
Product Name: Latitude 7400
Product Name: 07WDVW
Bios
By default, the function keys f1 .. are disabled, which is an issue for Alt-F4 (close window), etc.
In BIOS, disable “launch hotkeys without fn keypress”.
Graphics
$ lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 620 (Whiskey Lake) (rev 02)
Graphics works with the Xorg drivers: “vesa” (default), “modesetting” (recommended, eDP-1), “intel” (eDP1). Default resolution is 1920x1080, in Randr/Xrandr the laptop screen is eDP-1
modesetting is the most recent, recommended driver according to https://wiki.gentoo.org/wiki/Intel. To get xbacklight working, see https://gitlab.com/wavexx/acpilight/
intel
$ cat /etc/X11/xorg.conf.d/20-intel.conf
Section "Device"
Identifier "card0"
Driver "intel"
Option "AccelMethod" glamor # "glamor" (using it) "sna" od "uxa"
Option "Backlight" "intel_backlight"
EndSection
Suspend on Lid closed works if handled by systemd with “HandleLidSwitchDocked=suspend”. ‘wake when lid is opened’ is disabled by default in Bios, must be re-enabled.
Touchpad
Touchpad works out of the box. It supports two-fingers scrolling.
Docking
Docking with Thunderbolt somehow works:
- you may have to activate “No security” in the BIOS
- you have to deactivate docked screen and reactivate laptop screen before hotplug
Wireless Wifi
Wireless works with kernel module “iwlwifi” and firmware “firmware-iwlwifi”.
# dmesg | grep iwl
[ 5.687696] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[ 5.692292] iwlwifi 0000:00:14.3: loaded firmware version 38.3235921300.0 op_mode iwlmvm
[ 5.712064] iwlwifi 0000:00:14.3: Detected Intel(R) Dual Band Wireless AC 9560, REV=0x318
Wireless Mobile Broadband (LTE)
It works! System: Default Ubuntu installation from Dell, Module cdc_mbim + ModemManager + NetworkManager. You may have to restart ModemManager after supsend (service ModemManager restart
)
# mmcli -m 0
------------------------------------
General | dbus path: /org/freedesktop/ModemManager1/Modem/0
| device id:
------------------------------------
Hardware | manufacturer: Dell Inc.
| model: DW5821e Snapdragon X20 LTE
| revision: T77W968.F1.0.0.4.2.GC.010
| 026
Virtualization
The processor provides hardware support for virtualization. It is enabled by default in the BIOS.
To enable it:
- press F10 at startup, choose Bios setup
- in the BIOS, select Advanced >> System Options >> Enable Intel Virtualization Technology
- in the BIOS, select Advanced >> System Options >> Enable VT for Direct I/O
Audio/Webcam
Sound works with the module snd-hda-intel (’‘$ modprobe snd-hda-intel’’).
$ lspci | grep Audio
00:1f.3 Audio device: Intel Corporation Device 9dc8 (rev 30)
# head -n 1 /proc/asound/card0/codec#0
Codec: Realtek ALC3254
# head -n 1 /proc/asound/card0/codec#2
Codec: Intel Kabylake HDMI
Hard drive
It is a M.2 NVME (hence the partition starts with nvme).
$ apt-get install nvme-cli
$ nvme list
Node SN Model Namespace Usage Format FW Rev
---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------
/dev/nvme0n1 NS04N892410304S2W PC611 NVMe SK hynix 512GB 1 512,11 GB / 512,11 GB 512 B + 0 B 11000111
$ # nvme id-ctrl /dev/nvme0
NVME Identify Controller:
vid : 0x1c5c
ssvid : 0x1c5c
sn : NS04N892410304S2W
mn : PC611 NVMe SK hynix 512GB
$ cat /sys/class/block/nvme0n1/queue//physical_block_size
512
$ cat /sys/class/block/nvme0n1/queue//logical_block_size
512
$ cat /sys/class/block/nvme0n1/queue/scheduler
[none] mq-deadline
$ hdparm -tT /dev/nvme0n1
/dev/nvme0n1:
Timing cached reads: 33194 MB in 2.00 seconds = 16630.94 MB/sec
Timing buffered disk reads: 5080 MB in 3.00 seconds = 1693.06 MB/sec
Opsec
One can set an admin password in the BIOS. Grub entries has to protected as well.
Trusted Platform Module
There is a TPM that can be activated in the bios.
$ dmidecode
TPM Device
Vendor ID: MTS
Specification Version: 2.0
Firmware Revision: 74.8
Description: ST
Characteristics:
Family configurable via platform software support
OEM-specific Information: 0x00000000
$ cat /sys/class/tpm/tpm0/tpm_version_major
2
See also https://www.monperrus.net/martin/7-things-to-do-with-your-TPM-on-Linux
Troubleshooting
$ lspci
00:00.0 Host bridge: Intel Corporation Device 3e34 (rev 0c)
00:02.0 VGA compatible controller: Intel Corporation Device 3ea0 (rev 02)
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 0c)
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model
00:12.0 Signal processing controller: Intel Corporation Device 9df9 (rev 30)
00:14.0 USB controller: Intel Corporation Device 9ded (rev 30)
00:14.2 RAM memory: Intel Corporation Device 9def (rev 30)
00:14.3 Network controller: Intel Corporation Device 9df0 (rev 30)
00:15.0 Serial bus controller [0c80]: Intel Corporation Device 9de8 (rev 30)
00:15.1 Serial bus controller [0c80]: Intel Corporation Device 9de9 (rev 30)
00:15.3 Serial bus controller [0c80]: Intel Corporation Device 9deb (rev 30)
00:16.0 Communication controller: Intel Corporation Device 9de0 (rev 30)
00:19.0 Serial bus controller [0c80]: Intel Corporation Device 9dc5 (rev 30)
00:1c.0 PCI bridge: Intel Corporation Device 9dbc (rev f0)
00:1d.0 PCI bridge: Intel Corporation Device 9db3 (rev f0)
00:1d.4 PCI bridge: Intel Corporation Device 9db4 (rev f0)
00:1f.0 ISA bridge: Intel Corporation Device 9d84 (rev 30)
00:1f.3 Audio device: Intel Corporation Device 9dc8 (rev 30)
00:1f.4 SMBus: Intel Corporation Device 9da3 (rev 30)
00:1f.5 Serial bus controller [0c80]: Intel Corporation Device 9da4 (rev 30)
01:00.0 PCI bridge: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] (rev 02)
02:00.0 PCI bridge: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] (rev 02)
02:01.0 PCI bridge: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] (rev 02)
02:02.0 PCI bridge: Intel Corporation JHL6340 Thunderbolt 3 Bridge (C step) [Alpine Ridge 2C 2016] (rev 02)
03:00.0 System peripheral: Intel Corporation JHL6340 Thunderbolt 3 NHI (C step) [Alpine Ridge 2C 2016] (rev 02)
04:00.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
05:02.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
05:04.0 PCI bridge: Intel Corporation JHL7540 Thunderbolt 3 Bridge [Titan Ridge DD 2018] (rev 06)
06:00.0 USB controller: Intel Corporation JHL7540 Thunderbolt 3 USB Controller [Titan Ridge DD 2018] (rev 06)
39:00.0 USB controller: Intel Corporation Device 15db (rev 02)
3a:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS525A PCI Express Card Reader (rev 01)
3b:00.0 Non-Volatile memory controller: SK hynix Device 1639
$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 142
model name : Intel(R) Core(TM) i5-8365U CPU @ 1.60GHz
stepping : 12
microcode : 0xd6
cpu MHz : 700.470
cache size : 6144 KB
physical id : 0
siblings : 8
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 22
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d arch_capabilities
bugs : spectre_v1 spectre_v2 spec_store_bypass swapgs taa itlb_multihit srbds
bogomips : 3799.90
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
$ dmidecode
BIOS Information
Vendor: Dell Inc.
Version: 1.7.3
Release Date: 03/23/2020
Address: 0xF0000
Runtime Size: 64 kB
ROM Size: 32 MB
Characteristics:
PCI is supported
PNP is supported
BIOS is upgradeable
BIOS shadowing is allowed
Boot from CD is supported
Selectable boot is supported
EDD is supported
Japanese floppy for NEC 9800 1.2 MB is supported (int 13h)
5.25"/1.2 MB floppy services are supported (int 13h)
3.5"/720 kB floppy services are supported (int 13h)
3.5"/2.88 MB floppy services are supported (int 13h)
Print screen service is supported (int 5h)
8042 keyboard services are supported (int 9h)
Serial services are supported (int 14h)
Printer services are supported (int 17h)
ACPI is supported
USB legacy is supported
Smart battery is supported
BIOS boot specification is supported
Function key-initiated network boot is supported
Targeted content distribution is supported
UEFI is supported
BIOS Revision: 1.7