CachyOS / CachyOS/linux-cachyos

HP OmniBook X Flip charges at ~0.2 W without acpi_osi="Windows 2022" - carry DMI OSI quirk

Open
#971 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
Shell
Stars
4.5k
Forks
160
Avg merge
2d 12h
Merged PRs (30d)
1

Description

## HP OmniBook X Flip charges at ~0.2 W without `acpi_osi="Windows 2022"` — carrying the DMI OSI quirk would fix all CachyOS users

### Summary

On HP OmniBook X Flip laptops (2025, AMD Ryzen AI 5 340 — DMI board `8DA8`, `103C_5335M8 HP OmniBook X`), battery charging is throttled to **~0.2 W** on stock Linux. Root cause is verified: the EC firmware only enables normal charging when the OS claims `_OSI("Windows 2022")`. The DSDT/SSDT contain OSI checks only up to `Windows 2022` (confirmed via `strings` on `/sys/firmware/acpi/tables/*`), and the kernel's default claimed OSI strings stop before it — so the fast-charging branch never activates on Linux.

### Measurements (65 W USB-C PD adapter)

| Condition | Charging rate |
|---|---|
| Stock CachyOS | 0.2 W (`POWER_SUPPLY_POWER_NOW ≈ 200000 µW`) |
| `acpi_osi=! acpi_osi="Windows 2022"` on cmdline | **31–33 W** (Windows parity; ~30 W on / ~60 W off is HP firmware design) |
| Windows (per HP spec) | ~30 W while system on |

Verified across kernels `7.1.6-1-cachyos` and `6.18.42-1-cachyos-lts` and multiple charge cycles (currently 27.8 W charging at 79%).

### Workaround (confirmed, persistent)

Kernel cmdline: `acpi_osi=! acpi_osi="Windows 2022"` — persistent config:

```text
# /etc/default/limine
KERNEL_CMDLINE[linux-cachyos]+=acpi_osi=! acpi_osi="Windows 2022"
KERNEL_CMDLINE[linux-cachyos-lts]+=acpi_osi=! acpi_osi="Windows 2022"
```

then `sudo limine-update` (also rebuilds the initramfs, so it takes a while) and reboot.
GRUB users: add the same to `GRUB_CMDLINE_LINUX_DEFAULT` in /etc/default/grub, then `sudo grub-mkconfig -o /boot/grub/grub.cfg`.

### Upstream

Filed with full evidence + EC RAM attachments:
- **kernel bugzilla [221866](https://bugzilla.kernel.org/show_bug.cgi?id=221866)** (ACPI / Power-Battery) — requesting a DMI-scoped OSI quirk in `drivers/acpi/osi.c` for board `8DA8` (same mechanism as existing `dmi_enable_osi_linux` entries).
- Previous report [221776](https://bugzilla.kernel.org/show_bug.cgi?id=221776) (closed ANSWERED — the earlier UCSI-corruption theory was withdrawn; UCSI is not involved, the quirk request for `ucsi_acpi` should not be pursued).
- Same firmware pattern also documented on the Samsung Galaxy Book 4 (Arch forum thread 297580) and across the HP OmniBook X Flip line (HP Community).

### Request

1. **Carry the quirk in the CachyOS kernel** (`drivers/acpi/osi.c`, DMI-scoped, board `8DA8` + siblings `8EA2` etc.) until it lands upstream — this is the single-line change that fixes every affected CachyOS user with zero config.
2. Document the workaround on the wiki (kernel cmdline + Limine config location) so users can self-help today.

### Extra (separate, rare)

~1 in 4 plug/unplug events: PD contract sticks at 5 V/3 A until reboot (UCSI reload, suspend/resume, replug all fail to recover). Tracked in bugzilla 221866 as a secondary issue; a sink-side PDO request interface in UCSI would fix it OS-side.

**Hardware:** HP OmniBook X Flip Laptop 16-ar0xxx, SKU B5UJ4UA#ABA, serial VNY540CBJH, BIOS/EC 49.34, 68 Wh battery (CI04068XL), 65 W adapter.

Contributor guide

Open the contributing guide

Research direction

Start in drivers/acpi/osi.c, especially existing dmi_enable_osi_linux entries, and review kernel bugzilla 221866 for the DMI identifiers and evidence. Add and validate the DMI-scoped OSI handling for the HP OmniBook X boards, then test charging with and without the workaround. Document the persistent Limine and GRUB configuration requested in the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
documentation, operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.