-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Add ASUS ExpertBook B9406 display and touchpad fixes for Panther Lake #5435
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| #!/bin/bash | ||
|
|
||
| # Detect ASUS ExpertBook B9406 series laptops on Intel Panther Lake. | ||
|
|
||
| omarchy-hw-match "B9406" && omarchy-hw-intel-ptl |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| # Display fixes for ASUS ExpertBook B9406 (Panther Lake / Xe3 iGPU). | ||
| # | ||
| # Panel Replay is Xe3-new, default-on in the xe driver, and has a broken | ||
| # exit/wake path on this eDP panel: the panel latches the last-presented | ||
| # frame in self-refresh and never wakes for subsequent atomic commits, so | ||
| # the screen only updates on a full modeset (e.g. a VT switch). The older | ||
| # xe.enable_psr=0 knob does not cover Panel Replay. | ||
| # | ||
| # The panel's EDID on eDP-1 reads as empty, so xe takes backlight type from | ||
| # VBT (which says PWM) but the panel actually wants DPCD AUX backlight. | ||
| # Without xe.enable_dpcd_backlight=1, intel_backlight sysfs writes succeed | ||
| # but produce no visible change; brightness is effectively binary. | ||
|
|
||
| if omarchy-hw-asus-expertbook-b9406; then | ||
| sudo mkdir -p /etc/limine-entry-tool.d | ||
| cat <<EOF | sudo tee /etc/limine-entry-tool.d/asus-expertbook-b9406-display.conf >/dev/null | ||
| # ASUS ExpertBook B9406 (Panther Lake / Xe3) display workarounds | ||
| KERNEL_CMDLINE[default]+=" xe.enable_panel_replay=0" | ||
| KERNEL_CMDLINE[default]+=" xe.enable_dpcd_backlight=1" | ||
| EOF | ||
| fi |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| # Touchpad quirks for ASUS ExpertBook B9406 (Pixart 093A:4F05 on i2c-hid). | ||
| # | ||
| # The kernel produces perfect Precision Touchpad reports but libinput's | ||
| # jump-detection heuristic discards every motion event as "kernel bug: | ||
| # Touch jump detected and discarded" because the pad reports pressure | ||
| # values of 0-1, confusing the contact stability check. Button events | ||
| # still pass, so clicks register but motion does not. | ||
| # | ||
| # Mask the pressure axes with a quirks override, same pattern as the | ||
| # Asus UX302LA entry in libinput's shipped 50-system-asus.quirks. | ||
|
|
||
| if omarchy-hw-asus-expertbook-b9406; then | ||
| sudo mkdir -p /etc/libinput | ||
| sudo tee /etc/libinput/asus-expertbook-b9406.quirks >/dev/null <<EOF | ||
| [ASUS ExpertBook B9406 Touchpad] | ||
| MatchBus=i2c | ||
| MatchUdevType=touchpad | ||
| MatchVendor=0x093A | ||
| MatchProduct=0x4F05 | ||
| MatchDMIModalias=dmi:*svnASUS*:pn*B9406* | ||
| AttrEventCode=-ABS_MT_PRESSURE;-ABS_PRESSURE; | ||
| EOF | ||
| fi | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,22 @@ | ||
| echo "Apply display and touchpad fixes for ASUS ExpertBook B9406 (Panther Lake)" | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Wondering if we even need this migration? You did a heroic effort to get it running. But I suspect that most other folks installing would not have. Thus would never be able to run this migration?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. That is true, we don't need it. Suppose anyone who fights their way to install 3.5 for PTL Expertbook doesn't need that migration script. And fresh installs are ok without. Pushed update. |
||
|
|
||
| source "$OMARCHY_PATH/install/config/hardware/asus/fix-asus-ptl-b9406-display.sh" | ||
| source "$OMARCHY_PATH/install/config/hardware/asus/fix-asus-ptl-b9406-touchpad.sh" | ||
|
|
||
| if omarchy-hw-asus-expertbook-b9406; then | ||
|
mijuny marked this conversation as resolved.
Outdated
|
||
| DROP_IN="/etc/limine-entry-tool.d/asus-expertbook-b9406-display.conf" | ||
| DEFAULT_LIMINE="/etc/default/limine" | ||
|
|
||
| # Keep /etc/default/limine in sync with the drop-in. Install-time this is | ||
| # handled by install/login/limine-snapper.sh; migrations have to do it | ||
| # themselves. Idempotent: skip if the drop-in's header comment is already | ||
| # present (a unique-to-this-drop-in marker, so it doesn't collide with | ||
| # manual cmdline tweaks a user may have made). | ||
| HEADER='# ASUS ExpertBook B9406 (Panther Lake / Xe3) display workarounds' | ||
| if [[ -f $DROP_IN && -f $DEFAULT_LIMINE ]] && \ | ||
| ! grep -Fxq "$HEADER" "$DEFAULT_LIMINE"; then | ||
| sudo tee -a "$DEFAULT_LIMINE" >/dev/null < "$DROP_IN" | ||
| fi | ||
|
|
||
| sudo limine-update | ||
| fi | ||
Uh oh!
There was an error while loading. Please reload this page.