Dell Precision M4600

From ArchWiki
Jump to navigation Jump to search

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

Reason: Needs to be completed (Discuss in Talk:Dell Precision M4600)
Hardware PCI/USB ID1 Working?
Touchpad Yes
Keyboard Yes
Video Yes
Ethernet Yes
Power management Yes
USB Ports Yes
SD-Card slot Yes
HDMI Yes
VGA Yes
Audio Yes
Wireless Yes
Fingerprint reader Untested
TPM Untested

Installation

This laptop shipped with a BIOS only firmware option. A subsequent firmware update introduced the option for UEFI. This option is disabled by default, and must be selected in BIOS. BIOS settings can be reached by tapping F2 at the first loading screen. It is also important to note that at the boot device selection screen, the first section is for Legacy boot devices only. While an Arch Linux install USB will boot if selected here, it will boot in Legacy (BIOS) Mode, NOT UEFI. To boot an Arch Install USB in UEFI mode, it is necessary to arrow down to the second section, "UEFI BOOT" and select the option that shows up as "UEFI: INT13(USB,0x80)". From that point on, installation should proceed according to the Arch Wiki Install instructions without issue.

Accessibility

The appearance of the BIOS is pretty simple and not very colorful, so it might work well with OCR software. However, it requires the user to use a mouse.

Note: Blind users should request the help of a sighted person to change BIOS settings

Firmware

fwupd does not support this device yet. Further, there are reports all over the interwebs, and experienced by the Author, of this laptop refusing to update the firmware beyond a certain point, potentially due to Secure Firmware Update being enabled in one BIOS update, which then blocks all subsequent updates due to a signature mismatch. There is no known work around at this time, other than replacing the Motherboard.

SecureBoot

Requires further research. I believe it is supported, but I need further verification.

Fingerprint reader

Needs further research.

Function keys

Key Visible?1 Marked?2 Effect
Fn+F1 Yes Yes 1 2 XF86Sleep
Fn+F3 Yes Yes 1 2 Scroll_Lock
Fn+F5 Yes Yes 1 2 XF86TouchpadToggle
Fn+F8 Yes Yes 1 2 Super+p(?)
Fn+Home Yes Yes 1 3 Print
Fn+End Yes Yes 1 2 Print
Fn+Ins Yes Yes 1 2 Pause
  1. The key is visible via xev and similar tools
  2. The physical key has a symbol on it, which describes its function
  3. Does not seem to coincide with mark on key
  • Mute, Volume+, Volume-, Prev, Play/Pause, and Next buttons are present, but currently on my system behave very erratically. To wit, pressed singly, they return a generic keycode.
FocusOut event, serial 34, synthetic NO, window 0x2400001,
    mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 34, synthetic NO, window 0x2400001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 34, synthetic NO, window 0x0,
    keys:  2   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

If pressed two at a time, one of the expected XF86 codes is returned, but it is nearly imposible to guarentee which code it will be.

Power buttons

This device has two detected power buttons and one sleep button.

$ loginctl seat-status
├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3
│ input:input3 "Power Button"
├─/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:01/input/input14
│ input:input14 "Video Bus"
├─/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:28/LNXVIDEO:00/input/input13
│ input:input13 "Video Bus"
├─/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input1
│ input:input1 "Power Button"
├─/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/input/input0
│ input:input0 "Lid Switch"
├─/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0E:00/input/input2
│ input:input2 "Sleep Button"
[...]

(The following is copied from the Dell Latitude 3500 page. As far as I can tell it is correct and accurate, but I was unable to log the PowerButton events on my system.)

In this case, LNXPWRBN:00 (/dev/input/event3) is the "real", physical power button. You can verify this by inhibiting the handling of the power button

# systemd-inhibit --what=handle-power-key sleep 1h

and recording the events:

# stdbuf -o0 evemu-record /dev/input/event3 > event3

Pressing the power button should log an event.

The other detected power button seems to be a virtual, firmware-handled button. This power button will be triggered when your device runs out of battery. It seems like this is a long button press and it will cause systemd to only wait a few seconds before killing a process, so your machine will most likely only take a few seconds to power off.

Sleep button

Sleep button is Fn+F1. It appears to work with no necessary configuration.

See logind.conf(5) for more information on handling specific keys.