https://bugzilla.kernel.org/show_bug.cgi?id=222065

               URL: https://github.com/Pawls/acer-e5-575g-touchpad-fix
            Bug ID: 222065
           Summary: i2c-hid: ELAN0501 touchpad on Acer Aspire E5-575G
                    stalls; firmware declares its IRQ edge-triggered
           Product: ACPI
           Version: 2.5
    Kernel Version: 7.0.0-34-generic (Ubuntu/Mint build)
          Hardware: Intel
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P3
         Component: Config-Interrupts
          Assignee: [email protected]
          Reporter: [email protected]
        Regression: No

Created attachment 310932
  --> https://bugzilla.kernel.org/attachment.cgi?id=310932&action=edit
dmesg, E5-575G BIOS V1.47, touchpad in Advanced mode, stock DSDT (no override),
kernel 7.0.0-34

Hardware: Acer Aspire E5-575G, BIOS V1.47 (DMI: Acer / Aspire E5-575G / V1.47),
touchpad ELAN0501:00 04F3:3019 on i2c_designware.0.
Kernel: 7.0.0-34-generic (Ubuntu/Mint build).

With the BIOS touchpad option set to "Advanced", the DSDT exposes
\_SB.PCI0.I2C0.TPDE (ELAN0501) with:
  Interrupt (ResourceConsumer, Edge, ActiveLow, Exclusive, ,, ) { 0x52 }
(TPD1 / SYNA7DB5 has the same descriptor.) i2c-hid honours the edge trigger
from ACPI, the touchpad asserts its level-low interrupt, and after a missed
edge the line stays asserted and no more interrupts arrive. /proc/interrupts
shows "82-edge" with the count stuck; dmesg shows "i2c_hid_get_input: IRQ
triggered but there's no data". Rebinding the driver partially revives it.

Overriding the DSDT to declare the interrupt Level/ActiveLow (only change: flag
byte 0x07 -> 0x05 in both descriptors) makes the touchpad work fully: IRQ 82
becomes fasteoi and delivers interrupts normally. Windows works with the stock
table.

Suggested fix: a DMI quirk forcing IRQF_TRIGGER_LOW for this device in
i2c-hid-acpi, or an ACPI IRQ trigger override for this system. Override
scripts: https://github.com/Pawls/acer-e5-575g-touchpad-fix

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

_______________________________________________
acpi-bugzilla mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to