# HP EliteBook 840 G1

Device | Status | Modules
Intel graphics | Working | xf86-video-intel
HDMI | Working | xf86-video-intel
Ethernet | Working |
Wireless | Working |
Bluetooth | Working |
Audio | Working | snd_hda_intel
Touchpad | Working | xf86-input-synaptics
Camera | Working | uvcvideo
Fingerprint reader | Not working |
USB 3.0 | Working | xhci-hcd
Card Reader | Working |
Function Keys | Working |

## System Specifications

HP EliteBook 840 G1

- 4th generation (Haswell) Intel Core Processor (1.6 GHz)
- 14-inch diagonal LED-backlit FHD anti-glare UWVA slim (1920 x 1080)
- 128 2.5" Solid State Drive
- 8 GB DDR3L SODIMM SDRAM (1600 MHz, Two slots supporting dual-channel memory)
- Intel Dual Band Wireless-AC 7260 802.11 ac (2 x 2) WiFi + BT 4.0 combo adapter

## Configuration

### UEFI Setup

Note: Make sure you have the latest HP UEFI firmware installed.

Even if UEFI, Arch Linux and (e.g.) GRUB are correctly configured and with the correct UEFI NVRAM variables set, the system will not boot from the HDD/SSD. The problem is that HP hard coded the paths for the OS boot manager in their UEFI boot manager to `\EFI\Microsoft\Boot\bootmgfw.efi` to boot Microsoft Windows, regardless of how the UEFI NVRAM variables are changed. There are two workarounds:

#### Workaround 1: Using the "Customized Boot" path option (recommended)

The latest HP firmware allows defining a “Customized Boot” path in the UEFI pre-boot graphical environment. Select the “Customized Boot” option in the UEFI pre-boot graphical environment under “Boot Options” and set the path to your OS boot loader on the ESP (see UEFI#EFI System Partition), e.g.:

`\EFI\grub_archlinux\grubx64.efi`

Always verify the correct path to the .efi file.

Also, adjust the device boot order (also in the UEFI pre-boot graphical environment) to boot this entry first.

#### Workaround 2: Change the OS boot loader path to match the hard coded path

Change the UEFI application path of the OS boot loader to that hard coded path. On your ESP (see UEFI#EFI System Partition; e.g. with the $MOUNTPOINT `/boot/efi`), do (e.g. with GRUB entry `grub_archlinux`):

     $ sudo mkdir -p $MOUNTPOINT/EFI/Microsoft/Boot
     $ sudo cp $MOUNTPOINT/EFI/grub_archlinux/grubx64.efi $MOUNTPOINT/EFI/Microsoft/Boot/bootmgfw.efi

or

     $ sudo mkdir -p $MOUNTPOINT/EFI/Boot
     $ sudo cp $MOUNTPOINT/EFI/grub_archlinux/grubx64.efi $MOUNTPOINT/EFI/Boot/Bootx64.efi

Note: This method is not recommended, as it obviously will create conflicts in a dual boot setup with Microsoft Windows. Also, everytime you install GRUB, you have to remmeber to copy it to the hard coded path.

### Encryption

This notebook supports HDD FDE (SED). The HDD/SSD can be locked by setting a password in the UEFI pre-boot graphical environment under the option "DriveLock" (this requires setting a password for the UEFI pre-boot graphical environment first). If you replace the HDD/SSD, make sure to get a compatible one to make use of this feature.

Otherwise, see Disk_encryption for software-based encryption.

### Video

Simply install xf86-video-intel.

### Audio

Works out of the box.

For HDMI Audio you need CONFIG_INTEL_IOMMU_DEFAULT_ON=n in your kernel config (see https://bugzilla.kernel.org/show_bug.cgi?id=61471).

### Network

#### Wireless

Note: Below procedure was only tested for the "Intel Dual Band Wireless-AC 7260 802.11 ac (2 x 2) WiFi + BT 4.0 combo" adapter

The wireless connection works out of the box using

     # wifi-menu

during system installation from the Arch install media.

Just make sure to install linux-firmware, iw, wpa_supplicant and dialog (for using `wifi-menu`).

Set CONFIG_HP_WIRELESS=y in your kernel config to enable the hardware button (Linux 3.14+).

### Suspend to RAM

Works out of the box (with systemd).

### Resume / wake on lid open

This feature needs to be enabled in the bios / uefi setup.

Advanced >> Built-in deice options >> Wake unit from sleep when lid is opened

## See also

- UEFI, GNU/Linux and HP notebooks – problems and how to get it working

- Changing Boot Order on Dual Boot Windows 8 and Ubuntu

- Setting GRUB as the default boot manager on a UEFI-based system

Category:

- HP