diff mbox series

ACPI: resource: Skip IRQ override on ASUS ExpertBook B1502CGA

Message ID 20240107085305.6981-1-mekosko@projectyo.network
State Superseded
Headers show
Series ACPI: resource: Skip IRQ override on ASUS ExpertBook B1502CGA | expand

Commit Message

Michael Maltsev Jan. 7, 2024, 8:53 a.m. UTC
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>
---
 drivers/acpi/resource.c | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Rafael J. Wysocki Jan. 9, 2024, 2:23 p.m. UTC | #1
On Sun, Jan 7, 2024 at 9:59 AM Michael Maltsev
<mekosko@projectyo.network> wrote:
>
> 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>
> ---
>  drivers/acpi/resource.c | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c
> index c297e40c5bdc..b0c3da70f809 100644
> --- a/drivers/acpi/resource.c
> +++ b/drivers/acpi/resource.c
> @@ -453,6 +453,13 @@ static const struct dmi_system_id asus_laptop[] = {
>                         DMI_MATCH(DMI_BOARD_NAME, "B1402CVA"),
>                 },
>         },
> +       {
> +               .ident = "Asus ExpertBook B1502CGA",
> +               .matches = {
> +                       DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
> +                       DMI_MATCH(DMI_BOARD_NAME, "B1502CGA"),
> +               },
> +       },
>         {
>                 .ident = "Asus ExpertBook B2402CBA",
>                 .matches = {
> --

Applied as 6.8-rc1 material, but I've replaced the unnecessary .ident
field with a comment.

Thanks!
diff mbox series

Patch

diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c
index c297e40c5bdc..b0c3da70f809 100644
--- a/drivers/acpi/resource.c
+++ b/drivers/acpi/resource.c
@@ -453,6 +453,13 @@  static const struct dmi_system_id asus_laptop[] = {
 			DMI_MATCH(DMI_BOARD_NAME, "B1402CVA"),
 		},
 	},
+	{
+		.ident = "Asus ExpertBook B1502CGA",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
+			DMI_MATCH(DMI_BOARD_NAME, "B1502CGA"),
+		},
+	},
 	{
 		.ident = "Asus ExpertBook B2402CBA",
 		.matches = {