Root cause found for the HP OmniBook X Flip 16 (board 8DA1, BIOS F.20),
and it also explains the slow pen.

The slow stylus is not the ELAN digitizer or the i2c-hid driver. HP's
ACPI power resource for the touchscreen (\_SB.PC00.I2C4.PTPL._ON) clears
the GPIROUTIOXAPIC bit of the touchscreen interrupt pad (GPP_E_18),
which disconnects the interrupt from the IO-APIC. Linux runs _ON at boot
and on every resume; Windows does not, so Windows is unaffected.

With the pad disconnected, the level-triggered interrupt never
deasserts. The driver then reads the controller about 630 times per
second, even when nothing touches the screen. That causes the "IRQ
triggered but there's no data" and "incomplete report (67/7167)"
messages, the frames shifted by 0xff, and a pen report rate of about 25
Hz instead of the native ~268 Hz (measured on Windows on the same
machine).

Quick check if you have this: run
  grep ELAN /proc/interrupts; sleep 1; grep ELAN /proc/interrupts
If the count jumps by several hundred while you are not touching the screen, 
you are affected.

With the interrupt routing restored:
- idle interrupts go from ~630/s to 0, after boot and after suspend/resume
- the pen is smooth with pressure and tilt, touch works, and touch is ignored 
while the pen is near
- no frame-salvaging patch is needed

Kernel patch posted to the HID maintainers (Cc stable), tested on 8DA1 with 
Linux 7.2.8:
https://patch.msgid.link/[email protected]

Full write-up, ACPI excerpts, Windows/Linux measurements, and an ACPI table 
workaround that needs no custom kernel (Secure Boot must be off):
https://github.com/iamwaqargulzar/hp-omnibook-x-flip-16-linux-touchscreen-pen-fix

Owners of other models in this bug (Flip 14 04F3:4428 / 442A, OmniBook 7
Flip 04F3:43EF, Flip 16 04F3:43F5): if the check above shows the
interrupt storm, you probably have the same firmware bug. Please report
your board ID (cat /sys/class/dmi/id/board_name) and BIOS version so the
patch can cover your model too.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2142384

Title:
  ELAN2514:00 (04F3:4428) stylus report rate extremely low (~10–25 Hz)
  on Ubuntu 24.04 kernel 6.17

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2142384/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to