diff mbox series

ACPI: resource: do IRQ override on XMG Core 15

Message ID ce1a70db-1b0b-ac9e-5829-8110b2ddbbd5@googlemail.com
State Accepted
Commit 7592b79ba4a91350b38469e05238308bcfe1019b
Headers show
Series ACPI: resource: do IRQ override on XMG Core 15 | expand

Commit Message

Erik Schumacher Dec. 11, 2022, 1:33 p.m. UTC
The Schenker XMG CORE 15 (M22) is Ryzen-6 based and needs IRQ overriding
for the keyboard to work. Adding an entry for this laptop to the
override_table makes the internal keyboard functional again.

Signed-off-by: Erik Schumacher <ofenfisch@googlemail.com>
---
 drivers/acpi/resource.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

Rafael J. Wysocki Dec. 22, 2022, 4:43 p.m. UTC | #1
On Sun, Dec 11, 2022 at 2:33 PM Erik Schumacher
<ofenfisch@googlemail.com> wrote:
>
> The Schenker XMG CORE 15 (M22) is Ryzen-6 based and needs IRQ overriding
> for the keyboard to work. Adding an entry for this laptop to the
> override_table makes the internal keyboard functional again.
>
> Signed-off-by: Erik Schumacher <ofenfisch@googlemail.com>
> ---
>  drivers/acpi/resource.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
>
> diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c
> index f27914aed..037d1aa10 100644
> --- a/drivers/acpi/resource.c
> +++ b/drivers/acpi/resource.c
> @@ -446,6 +446,17 @@ static const struct dmi_system_id lenovo_82ra[] = {
>         { }
>  };
>
> +static const struct dmi_system_id schenker_gm_rg[] = {
> +       {
> +               .ident = "XMG CORE 15 (M22)",
> +               .matches = {
> +                       DMI_MATCH(DMI_SYS_VENDOR, "SchenkerTechnologiesGmbH"),
> +                       DMI_MATCH(DMI_BOARD_NAME, "GMxRGxx"),
> +               },
> +       },
> +       { }
> +};
> +
>  struct irq_override_cmp {
>         const struct dmi_system_id *system;
>         unsigned char irq;
> @@ -460,6 +471,7 @@ static const struct irq_override_cmp override_table[] = {
>         { asus_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, false },
>         { lenovo_82ra, 6, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, true },
>         { lenovo_82ra, 10, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, true },
> +       { schenker_gm_rg, 1, ACPI_EDGE_SENSITIVE, ACPI_ACTIVE_LOW, 1, true },
>  };
>
>  static bool acpi_dev_irq_override(u32 gsi, u8 triggering, u8 polarity,
> --

Applied as 6.2-rc material, thanks!
diff mbox series

Patch

diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c
index f27914aed..037d1aa10 100644
--- a/drivers/acpi/resource.c
+++ b/drivers/acpi/resource.c
@@ -446,6 +446,17 @@  static const struct dmi_system_id lenovo_82ra[] = {
 	{ }
 };
 
+static const struct dmi_system_id schenker_gm_rg[] = {
+	{
+		.ident = "XMG CORE 15 (M22)",
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "SchenkerTechnologiesGmbH"),
+			DMI_MATCH(DMI_BOARD_NAME, "GMxRGxx"),
+		},
+	},
+	{ }
+};
+
 struct irq_override_cmp {
 	const struct dmi_system_id *system;
 	unsigned char irq;
@@ -460,6 +471,7 @@  static const struct irq_override_cmp override_table[] = {
 	{ asus_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, false },
 	{ lenovo_82ra, 6, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, true },
 	{ lenovo_82ra, 10, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, true },
+	{ schenker_gm_rg, 1, ACPI_EDGE_SENSITIVE, ACPI_ACTIVE_LOW, 1, true },
 };
 
 static bool acpi_dev_irq_override(u32 gsi, u8 triggering, u8 polarity,