Message ID | 20230728183921.17230-1-mario.limonciello@amd.com (mailing list archive) |
---|---|
State | Superseded, archived |
Headers | show |
Series | ACPI: resource: Add a quirk for Lenovo Yoga 7 14ARB7 | expand |
On 2023-07-28 20:39, Mario Limonciello wrote: > Lenovo Yoga 7 needs to have keyboard interrupt signaling polarity > is incorrect in the MADT and the value from the DSDT should be used. > > Reported-by: August Wikerfors <git@augustwikerfors.se> > Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217718 > Fixes: a9c4a912b7dc ("ACPI: resource: Remove "Zen" specific match and quirks") > Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> > --- > drivers/acpi/resource.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c > index 1dd8d5aebf678..1a826419d5837 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 lenovo_laptop[] = { > + { > + .ident = "Lenovo Yoga 7 14ARB7", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), > + DMI_MATCH(DMI_PRODUCT_NAME, "82QF"), > + }, > + }, > + { } > +}; > + > struct irq_override_cmp { > const struct dmi_system_id *system; > unsigned char irq; > @@ -494,6 +505,7 @@ 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 }, > + { lenovo_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 1, false} This should have ACPI_EDGE_SENSITIVE, not ACPI_LEVEL_SENSITIVE, see https://bugzilla.kernel.org/show_bug.cgi?id=217718#c11
On 7/28/2023 2:25 PM, August Wikerfors wrote: > On 2023-07-28 20:39, Mario Limonciello wrote: >> Lenovo Yoga 7 needs to have keyboard interrupt signaling polarity >> is incorrect in the MADT and the value from the DSDT should be used. >> >> Reported-by: August Wikerfors <git@augustwikerfors.se> >> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217718 >> Fixes: a9c4a912b7dc ("ACPI: resource: Remove "Zen" specific match and >> quirks") >> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> >> --- >> drivers/acpi/resource.c | 12 ++++++++++++ >> 1 file changed, 12 insertions(+) >> >> diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c >> index 1dd8d5aebf678..1a826419d5837 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 lenovo_laptop[] = { >> + { >> + .ident = "Lenovo Yoga 7 14ARB7", >> + .matches = { >> + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), >> + DMI_MATCH(DMI_PRODUCT_NAME, "82QF"), >> + }, >> + }, >> + { } >> +}; >> + >> struct irq_override_cmp { >> const struct dmi_system_id *system; >> unsigned char irq; >> @@ -494,6 +505,7 @@ 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 }, >> + { lenovo_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 1, false} > This should have ACPI_EDGE_SENSITIVE, not ACPI_LEVEL_SENSITIVE, see > https://bugzilla.kernel.org/show_bug.cgi?id=217718#c11 Thanks, sorry about that mistake. I'll resend it.
On Fri, Jul 28, 2023 at 8:58 PM Mario Limonciello <mario.limonciello@amd.com> wrote: > > Lenovo Yoga 7 needs to have keyboard interrupt signaling polarity > is incorrect in the MADT and the value from the DSDT should be used. > > Reported-by: August Wikerfors <git@augustwikerfors.se> > Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217718 > Fixes: a9c4a912b7dc ("ACPI: resource: Remove "Zen" specific match and quirks") > Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> Is this still needed after the recent changes from Hans? > --- > drivers/acpi/resource.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c > index 1dd8d5aebf678..1a826419d5837 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 lenovo_laptop[] = { > + { > + .ident = "Lenovo Yoga 7 14ARB7", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), > + DMI_MATCH(DMI_PRODUCT_NAME, "82QF"), > + }, > + }, > + { } > +}; > + > struct irq_override_cmp { > const struct dmi_system_id *system; > unsigned char irq; > @@ -494,6 +505,7 @@ 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 }, > + { lenovo_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 1, false} > }; > > static bool acpi_dev_irq_override(u32 gsi, u8 triggering, u8 polarity, > -- > 2.34.1 >
[AMD Official Use Only - General] > -----Original Message----- > From: Rafael J. Wysocki <rafael@kernel.org> > Sent: Thursday, August 17, 2023 11:24 AM > To: Limonciello, Mario <Mario.Limonciello@amd.com> > Cc: rafael@kernel.org; linux-kernel@vger.kernel.org; linux- > acpi@vger.kernel.org; regressions@lists.linux.dev; August Wikerfors > <git@augustwikerfors.se>; Hans de Goede <hdegoede@redhat.com> > Subject: Re: [PATCH] ACPI: resource: Add a quirk for Lenovo Yoga 7 14ARB7 > > On Fri, Jul 28, 2023 at 8:58 PM Mario Limonciello > <mario.limonciello@amd.com> wrote: > > > > Lenovo Yoga 7 needs to have keyboard interrupt signaling polarity > > is incorrect in the MADT and the value from the DSDT should be used. > > > > Reported-by: August Wikerfors <git@augustwikerfors.se> > > Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217718 > > Fixes: a9c4a912b7dc ("ACPI: resource: Remove "Zen" specific match and > quirks") > > Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> > > Is this still needed after the recent changes from Hans? No, it's not thanks for checking. > > > --- > > drivers/acpi/resource.c | 12 ++++++++++++ > > 1 file changed, 12 insertions(+) > > > > diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c > > index 1dd8d5aebf678..1a826419d5837 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 lenovo_laptop[] = { > > + { > > + .ident = "Lenovo Yoga 7 14ARB7", > > + .matches = { > > + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), > > + DMI_MATCH(DMI_PRODUCT_NAME, "82QF"), > > + }, > > + }, > > + { } > > +}; > > + > > struct irq_override_cmp { > > const struct dmi_system_id *system; > > unsigned char irq; > > @@ -494,6 +505,7 @@ 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 }, > > + { lenovo_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 1, > false} > > }; > > > > static bool acpi_dev_irq_override(u32 gsi, u8 triggering, u8 polarity, > > -- > > 2.34.1 > >
diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c index 1dd8d5aebf678..1a826419d5837 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 lenovo_laptop[] = { + { + .ident = "Lenovo Yoga 7 14ARB7", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), + DMI_MATCH(DMI_PRODUCT_NAME, "82QF"), + }, + }, + { } +}; + struct irq_override_cmp { const struct dmi_system_id *system; unsigned char irq; @@ -494,6 +505,7 @@ 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 }, + { lenovo_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 1, false} }; static bool acpi_dev_irq_override(u32 gsi, u8 triggering, u8 polarity,
Lenovo Yoga 7 needs to have keyboard interrupt signaling polarity is incorrect in the MADT and the value from the DSDT should be used. Reported-by: August Wikerfors <git@augustwikerfors.se> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217718 Fixes: a9c4a912b7dc ("ACPI: resource: Remove "Zen" specific match and quirks") Signed-off-by: Mario Limonciello <mario.limonciello@amd.com> --- drivers/acpi/resource.c | 12 ++++++++++++ 1 file changed, 12 insertions(+)