]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ACPI: resource: Skip IRQ override on ASUS ExpertBook B1502CGA
authorMichael Maltsev <mekosko@projectyo.network>
Sun, 7 Jan 2024 08:53:07 +0000 (13:53 +0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 5 Feb 2024 20:17:03 +0000 (20:17 +0000)
[ Upstream commit e315e8692f7922cd1b2a26bd7a1741cc8ce77085 ]

Like the ASUS ExpertBook B1502CBA and various ASUS laptops, the
ASUS ExpertBook B1502CGA has an ACPI DSDT table that describes IRQ 1 as
ActiveLow while the kernel overrides it to Edge_High.

$ sudo dmesg | grep DMI
[    0.000000] DMI: ASUSTeK COMPUTER INC. ASUS EXPERTBOOK B1502CGA_B1502CGA/B1502CGA, BIOS B1502CGA.303 06/05/2023
$ grep -A 40 PS2K dsdt.dsl | grep IRQ -A 1
                IRQ (Level, ActiveLow, Exclusive, )
                    {1}

This prevents the keyboard from working. To fix this issue, add this laptop
to the skip_override_table so that the kernel does not override IRQ 1.

Signed-off-by: Michael Maltsev <mekosko@projectyo.network>
[ rjw: rebase, replace .ident field with a comment ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/acpi/resource.c

index 7d58d8b4ca76f0ee8d7d3737a455bdaa28664b34..03b52d31a3e3fc0481d8d63a8e80f6233add573f 100644 (file)
@@ -461,6 +461,13 @@ static const struct dmi_system_id irq1_level_low_skip_override[] = {
                        DMI_MATCH(DMI_BOARD_NAME, "B1502CBA"),
                },
        },
+       {
+               /* Asus ExpertBook B1502CGA */
+               .matches = {
+                       DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
+                       DMI_MATCH(DMI_BOARD_NAME, "B1502CGA"),
+               },
+       },
        {
                /* Asus ExpertBook B2402CBA */
                .matches = {