HP Laptop 15s-eq1124nw

HardwarePCI/USB IDWorking?
Bluetooth0bda:b00cUntested
Webcam0408:5365Yes
Wi-Fi10ec:c822Yes
GPU (AMD)1002:1636Yes
TouchpadYes
KeyboardYes
TPMUntested
SD-card reader058f:6366Yes
Audio (Onboard + jack)1022:15e3Yes
Audio (HDMI?)1022:15e2Untested
SpeakersYes
MicrophoneYes

The HP 15s-eq1124nw is a laptop featuring a 15.6" FHD IPS display, 16GB of RAM (2x8GB, 2666MHz), 512GB NVMe SSD, and a AMD Ryzen 5 4500U with integrated graphics.

Installation

The Realtek RTL8822CE network card and integrated AMD GPU graphics card require linux-firmware to be installed.

Accessibility

The UEFI setup is a simple, text-based interface, navigated with a keyboard. It does not expose many options apart from the standard time/date settings, and boot configuration.

To show a list of all available menus, press Esc.

To access the UEFI setup, press F10.

To access the boot menu, press F9.

Firmware

fwupd does not support this device.

Secure Boot

Secure Boot is untested, The device does not come with any Secure Boot keys installed from the factory, but there is an option in the UEFI to install HP factory keys.

Suspend-to-RAM

See Power management/Suspend and hibernate#Changing suspend method for the general context in which this workaround applies.

The firmware does not expose the necessary ACPI object (\_S3) to support suspend-to-RAM, but it does have a similarly named object (\XS3), which is most likely patched at boot-time to enable this functionality (although there is no UEFI option to configure this). One can manually add support for suspend-to-RAM by doing the following:

First, get the iasl compiler by installing the acpica package.

Then compile the following source using iasl <file>.asl:

DefinitionBlock ("ssdt.aml", "SSDT", 1, "HACK  ", "S3      ", 0x00000001)
{
	Scope (\)
	{
		Name (_S3, Package (0x04)
		{
			0x03,
			Zero,
			Zero,
			Zero
		})
	}
}

And finally, tell the kernel to use the new ACPI table.

Webcam

The webcam supports 720p, but this resolution is only available when not using the YUYV 4:2:2 video format (checked with OBS).

Function keys

By default, keys F1-F12 perform their alternative functions, and Fn+Fx is needed to press Fx, but there is a UEFI option to change this behavior. The following table assumes this setting was disabled.

Key Visible?1 Marked?2 Effect
Fn+F2YesYesXF86XF86MonBrightnessDown
Fn+F3YesYesXF86MonBrightnessUp
Fn+F4YesYesXF86Display
Fn+F6YesYesXF86AudioMute
Fn+F7YesYesXF86AudioLowerVolume
Fn+F8YesYesXF86AudioRaiseVolume
Fn+F9YesYesXF86AudioPrev
Fn+F10YesYesXF86AudioPlay
Fn+F11YesYesXF86AudioNext
Fn+F12Yes3YesXF86RFKill
  1. The key is visible to xev and similar tools.
  2. The physical key has a symbol on it, which describes its function.
  3. systemd handles this by default, but does not consume it.

Additionally, Linux logs the following unknown key (what key combination triggers them is yet to be identified):

[11654.430121] atkbd serio0: Unknown key pressed (translated set 2, code 0xab on isa0060/serio0).
[11654.430130] atkbd serio0: Use 'setkeycodes e02b <keycode>' to make it known.
[11654.555213] atkbd serio0: Unknown key released (translated set 2, code 0xab on isa0060/serio0).
[11654.555224] atkbd serio0: Use 'setkeycodes e02b <keycode>' to make it known.

Kernel warnings

The kernel reports that the TSC timer is unstable:

[    2.611935] clocksource: timekeeping watchdog on CPU4: Marking clocksource 'tsc' as unstable because the skew is too large:
[    2.611947] clocksource:                       'hpet' wd_nsec: 504249213 wd_now: 22757d5 wd_last: 1b92cfa mask: ffffffff
[    2.611952] clocksource:                       'tsc' cs_nsec: 503421858 cs_now: 3ac0cfb3c cs_last: 364cd6eec mask: ffffffffffffffff
[    2.611955] clocksource:                       'tsc' is current clocksource.
[    2.611959] tsc: Marking TSC unstable due to clocksource watchdog
[    2.611970] TSC found unstable after boot, most likely due to broken BIOS. Use 'tsc=unstable'.

The kernel also reports the following ACPI errors:

[    0.886837] ACPI: \_SB_.PLTF.P000: Found 3 idle states
[    0.886847] ACPI: FW issue: working around C-state latencies out of order
[    0.887006] ACPI: \_SB_.PLTF.P001: Found 3 idle states
[    0.887013] ACPI: FW issue: working around C-state latencies out of order
[    0.887337] ACPI: \_SB_.PLTF.P002: Found 3 idle states
[    0.887343] ACPI: FW issue: working around C-state latencies out of order
[    0.887481] ACPI: \_SB_.PLTF.P003: Found 3 idle states
[    0.887488] ACPI: FW issue: working around C-state latencies out of order
[    0.887703] ACPI: \_SB_.PLTF.P004: Found 3 idle states
[    0.887709] ACPI: FW issue: working around C-state latencies out of order
[    0.887888] ACPI: \_SB_.PLTF.P005: Found 3 idle states
[    0.887894] ACPI: FW issue: working around C-state latencies out of order
[    0.900991] ACPI Error: AE_NOT_FOUND, While resolving a named reference package element - \_PR_.P000 (20210730/dspkginit-438)
[20108.010179] ACPI BIOS Error (bug): Could not resolve symbol [\_PR.P000.PPCV], AE_NOT_FOUND (20210730/psargs-330)
[20108.010191] ACPI Error: Aborting method \_SB.CPUS due to previous error (AE_NOT_FOUND) (20210730/psparse-529)
[20108.010198] ACPI Error: Aborting method \_SB.PCI0.SBRG.EC0._Q20 due to previous error (AE_NOT_FOUND) (20210730/psparse-529)

Despite these errors, the system is stable and operates correctly.

See also

This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.