Add HP EliteBook X G2i hardware support - #6596
Draft
meirdick wants to merge 2 commits into
Draft
Conversation
Elan readers report "ELAN:ARM-M4" as their product string, so the *fingerprint* and *biometric* checks miss them. Elan's 04f3 is also left out of the vendor list on purpose, because Elan makes touchscreens too. Both checks fail, so the machine looks like it has no reader. Add "elan:arm-m4" to the product string check. The comment above the vendor list already says the excluded vendors should still match there, so this makes that true. The vendor list and its has_kernel_driver guard are unchanged, and touchscreens still cannot cause a false positive. The string is a family name, not one device. libfprint uses it for 04f3:0c9c and 04f3:0ca7 as well as 04f3:0ca8. Tested on an HP EliteBook X G2i with 04f3:0ca8.
On a stock install this machine has no working speakers, microphone or webcam. Adds a hardware-gated script that installs the two packages from omacom-io/omarchy-pkgs#124, and the speaker tuning. The audio gate matches the model line; the camera gate also requires the OV05C10 sensor, so an EliteBook with a different camera module does not get it. The call goes after intel/ptl-kernel.sh: both packages pull DKMS modules, and the existing comment for intel-ipu7-camera gives the same reason. The tuning coefficients were decoded from HP's factory DTS:X Ultra data on the machine's own Windows partition. They are derived values; no vendor file is included. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds targeted HP EliteBook X G2i support for audio, webcam, speaker tuning, and fingerprint detection.
Changes:
- Installs model-specific audio and camera packages.
- Adds SKU-gated PipeWire speaker tuning.
- Detects Elan ARM-M4 fingerprint readers.
Tip
If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.
Reviewed changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
install/hardware/hp/elitebook-x-g2i.sh |
Adds HP hardware detection and package installation. |
install/hardware/all.sh |
Runs the new HP setup leaf. |
default/audio/tunings/hp-elitebook-x-g2i/tuning.conf |
Defines tuning matching and metadata. |
default/audio/tunings/hp-elitebook-x-g2i/README.md |
Documents tuning provenance and activation. |
default/audio/tunings/hp-elitebook-x-g2i/filter-chain.conf |
Implements the stereo EQ and limiter graph. |
bin/omarchy-hw-fingerprint |
Recognizes Elan ARM-M4 readers. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+30
to
+31
| derived_from="HP/DTS factory tuning blob dts_gpeq_mode1 (SSID 8E86103C), decoded" | ||
| validated_hardware="HP EliteBook X G2i (D4DU1UT#ABA, SSID 8E86103C)" |
Comment on lines
+33
to
+36
| ## Headroom: the EQ cascade (high-pass included) peaks at +3.66 dB at 1.86 kHz | ||
| ## on the 48 kHz bank. The limiter input gain of -4.66 dB places a full-scale | ||
| ## sine at that frequency exactly at the -1 dBFS limiter threshold. | ||
| limiter_headroom_db="0.0" |
Comment on lines
+33
to
+34
| Established by decoding both sample-rate variants of every mode to mutually | ||
| consistent curves (see `../decode_dts_gpeq.py`): |
Comment on lines
+94
to
+101
| ## Install | ||
|
|
||
| ``` | ||
| sudo cp -r audio-tuning/hp-elitebook-x-g2i /usr/share/omarchy/default/audio/tunings/ | ||
| omarchy-audio-tuning on | ||
| ``` | ||
|
|
||
| Requires `lsp-plugins-lv2` for the limiter. |
meirdick
marked this pull request as draft
August 7, 2026 11:25
meirdick
marked this pull request as ready for review
August 7, 2026 11:27
meirdick
marked this pull request as draft
August 7, 2026 13:07
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds hardware support for the HP EliteBook X G2i (Panther Lake). On a stock
install this machine has no working speakers, microphone or webcam, and the
fingerprint reader is not detected.
The packages are in omacom-io/omarchy-pkgs#124. This PR adds the gate that
installs them, the speaker tuning, and the fingerprint detection fix.
install/hardware/hp/elitebook-x-g2i.sh
New
hp/directory, following the existingasus/,apple/,lenovo/,framework/andintel/layout.The audio fix applies to the model line. The camera fix also requires the
OV05C10 sensor, so an EliteBook with a different camera module does not get it.
In
all.shthe call goes afterintel/ptl-kernel.sh. Both packages pull DKMSmodules, and the existing comment for
intel-ipu7-cameragives the same reason:building against the stock kernel and then rebuilding against
linux-ptlwastesinstall time.
default/audio/tunings/hp-elitebook-x-g2i/
Same shape as
dell-xps-2026. A 100 Hz high-pass, thirteen biquads and alookahead limiter, applied in front of the internal speaker sink. It adds the
voicing the Windows DTS APO layer provides and Linux does not. The stock path
already programs the TAS2783 amps.
Matched on
match_sku=("D4DU1UT#ABA"). HP keys the tuning per board, so thematch must stay narrow.
Provenance: the biquad coefficients were decoded from HP's factory DTS:X Ultra
data on the machine's own Windows partition. They are derived values. No vendor
file is included.
bin/omarchy-hw-fingerprint
Adds
elan:arm-m4to the product string check. Elan match-on-chip readersreport
ELAN:ARM-M4rather than a function name, and Elan's vendor ID is leftout of
fingerprint_vendorson purpose because Elan also makes touchscreens. Soboth existing checks miss, and the reader is never found.
This is the same change as #6578. This branch is stacked on that one, so this PR
delivers a complete machine while #6578 is open. If #6578 merges first, a rebase
removes the change from this diff.
Testing
Verified on the reference machine. Both gates match. Speakers, microphone and
webcam work, the tuning applies, and the fingerprint reader is detected.
🤖 Generated with Claude Code