https://bugzilla.kernel.org/show_bug.cgi?id=217731
Ni (ran...@gmail.com) changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ran...@gmail.com --- Comment #3 from Ni (ran...@gmail.com) --- Just as I was about to click submit on my own report... I'll just copy and paste it here then -------------------- Link to #217718 and coup of others, but given the situation of things, I thought it could be more appropriate if I file a report specifically for my machine model. Last year, I've successfully tested and published a diff on https://bbs.archlinux.org/viewtopic.php?pid=2045467#p2045467. However, in my more recent (hours ago) test, Lenovo has changed the `DMI_BOARD_NAME` value to `21EF0002CD`, so created a new diff based on kernel `6.4.8` and attached it as the last section of this comment. I've already confirmed that my modification fixed the keyboard and trackpoint situation. But I do hope that someone give it a closer look because the modification is a little different compare to the others, notably: 1. I have to add two items into `override_table`, one for `irq` 1 and one for 12, in order to make both the keyboard and trackpoint to work. Which is different compare to other items listed (they only added one for `irq` 1). I've confirmed that only add `irq` 1 don't fix my keyboard neither trackpoint. 2. In my case, I have to use `ACPI_EDGE_SENSITIVE` instead of `ACPI_LEVEL_SENSITIVE` for `triggering`. `ACPI_LEVEL_SENSITIVE` don't match my machine. Here is notable messages before I applied my patch (and they no longer appear after my patch): [ 0.284061] ACPI: IRQ 1 override to edge, high(!) [ 0.284069] ACPI: IRQ 12 override to edge, high(!) And here is some information produced by `dmidecode`: $ sudo dmidecode -t system # dmidecode 3.4 Getting SMBIOS data from sysfs. SMBIOS 3.3.0 present. Handle 0x0014, DMI type 1, 27 bytes System Information Manufacturer: LENOVO Product Name: 21EF0002CD Version: ThinkPad neo 14 Serial Number: <reduced> UUID: <reduced> Wake-up Type: Power Switch SKU Number: LENOVO_MT_21EF_BU_Think_FM_ThinkPad neo 14 Family: ThinkPad neo 14 $ sudo dmidecode -t baseboard # dmidecode 3.4 Getting SMBIOS data from sysfs. SMBIOS 3.3.0 present. Handle 0x0015, DMI type 2, 15 bytes Base Board Information Manufacturer: LENOVO Product Name: 21EF0002CD Version: ThinkPad Serial Number: <reduced> Asset Tag: Not Available Features: Board is a hosting board Board is replaceable Location In Chassis: Not Available Chassis Handle: 0x0016 Type: Motherboard Contained Object Handles: 0 -------------------- $ git diff -- drivers/acpi/resource.c diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c index 1dd8d5aeb..c2419b020 100644 --- a/drivers/acpi/resource.c +++ b/drivers/acpi/resource.c @@ -481,6 +481,17 @@ static const struct dmi_system_id lg_laptop[] = { { } }; +static const struct dmi_system_id thinkpad_laptop[] = { + { + .ident = "ThinkPad neo 14", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_BOARD_NAME, "21EF0002CD"), + }, + }, + { } +}; + struct irq_override_cmp { const struct dmi_system_id *system; unsigned char irq; @@ -494,6 +505,8 @@ static const struct irq_override_cmp override_table[] = { { medion_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, false }, { asus_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, false }, { lg_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, false }, + { thinkpad_laptop, 1, ACPI_EDGE_SENSITIVE, ACPI_ACTIVE_LOW, 0, false }, + { thinkpad_laptop, 12, ACPI_EDGE_SENSITIVE, ACPI_ACTIVE_LOW, 0, false }, }; static bool acpi_dev_irq_override(u32 gsi, u8 triggering, u8 polarity, -- 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 acpi-bugzilla@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla