[PATCH] ACPI: OSI: Enable _OSI("Windows 2022") on HP OmniBook X Flip 16-ar0xxx

From: David Del Sol

Date: Tue Aug 11 2026 - 13:49:40 EST


Hi all,

This fixes slow battery charging on the 2025 HP OmniBook X Flip (AMD Ryzen
AI 5 340, DMI board 8DA8): with a 65 W charger plugged in, the battery
charges at only ~0.2 W on Linux instead of the ~30 W Windows gets.

The EC firmware only enables normal charging when the OS claims
_OSI("Windows 2022"), and the DSDT/SSDT only check up to that string.
Linux's default claimed OSI strings stop short of it, so the fast-charging
branch never runs. Adding acpi_osi=! acpi_osi="Windows 2022" to the kernel
cmdline restores 31-33 W - verified across multiple charge cycles on
kernels 7.1.6 and 6.18.42-LTS.

I checked with HP first: they declined in writing (warranty case
#5163282638, supervisor email 2026-08-10), saying the firmware is
"specifically manufactured and optimized for the Windows operating system"
and not supported for other OSes. A kernel-side quirk is therefore the
only fix path.

The patch claims _OSI("Windows 2022") via acpi_osi_setup() with a DMI
match scoped to board 8DA8 (same mechanism as dmi_enable_osi_linux), so
no other platform is affected. Full evidence - DSDT/SSDT strings, EC RAM
dumps, measurement logs - is on the bugzilla report below; happy to add
sibling boards as owners confirm.

Thanks for looking,
David

Link: https://bugzilla.kernel.org/show_bug.cgi?id=221866
ACPI: OSI: Enable _OSI("Windows 2022") on HP OmniBook X Flip 16-ar0xxx

The HP OmniBook X Flip (2025, AMD Ryzen AI 5 340, board 8DA8) throttles
battery charging to ~0.2 W on Linux because the EC firmware only enables
normal charging (30 W, matching Windows) when the OS claims
_OSI("Windows 2022"). The DSDT/SSDT contain firmware OSI checks only up
to "Windows 2022", and Linux's default claimed OSI strings stop before
that, so the EC's fast-charging branch never activates.

Claiming the string is verified to restore 31-33 W charging on kernels
7.1.6 and 6.18.42-LTS across multiple charge cycles. HP has declined in
writing (warranty case #5163282638) to provide a BIOS/EC update, so a
kernel-side quirk is the only fix path. Scope the quirk to this board
only (DMI 103C_5335M8 HP OmniBook X, board 8DA8); sibling boards can be
added as they are confirmed.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=221866
Signed-off-by: David Del Sol <daviddelsol1998@xxxxxxxxx>

diff --git a/drivers/acpi/osi.c b/drivers/acpi/osi.c
index ffdf504..8e2b3d4 100644
--- a/drivers/acpi/osi.c
+++ b/drivers/acpi/osi.c
@@ -464,6 +464,21 @@ static const struct dmi_system_id acpi_osi_dmi_table[] __initconst = {
},
},

+ /*
+ * The HP OmniBook X Flip (AMD) throttles battery charging to ~0.2 W
+ * unless _OSI("Windows 2022") is claimed: the EC firmware only
+ * enables normal charging on that firmware path. Verified to restore
+ * 31-33 W charging (Windows parity).
+ */
+ {
+ .callback = dmi_enable_osi_win22,
+ .ident = "HP OmniBook X Flip 16-ar0xxx",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "HP"),
+ DMI_MATCH(DMI_BOARD_NAME, "8DA8"),
+ },
+ },
+
/*
* BIOS invocation of _OSI(Linux) is almost always a BIOS bug.
* Linux ignores it, except for the machines enumerated below.