lkml.org 
[lkml]   [2022]   [Jul]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH v6] ACPI: skip IRQ override on AMD Zen platforms
On Mon, Jul 18, 2022 at 5:39 PM Limonciello, Mario
<mario.limonciello@amd.com> wrote:
>
> On 7/14/2022 13:35, Rafael J. Wysocki wrote:
> > On Tue, Jul 12, 2022 at 4:01 AM Chuanhong Guo <gch981213@gmail.com> wrote:
> >>
> >> IRQ override isn't needed on modern AMD Zen systems.
> >> There's an active low keyboard IRQ on AMD Ryzen 6000 and it will stay
> >> this way on newer platforms. This IRQ override breaks keyboards for
> >> almost all Ryzen 6000 laptops currently on the market.
> >>
> >> Skip this IRQ override for all AMD Zen platforms because this IRQ
> >> override is supposed to be a workaround for buggy ACPI DSDT and we can't
> >> have a long list of all future AMD CPUs/Laptops in the kernel code.
> >> If a device with buggy ACPI DSDT shows up, a separated list containing
> >> just them should be created.
> >>
> >> Suggested-by: Mario Limonciello <mario.limonciello@amd.com>
> >> Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
> >
> > I need an ACK from Mario here.
>
> Sure. As he mentioned this polarity change is needed going forward.
> So if we end up with a similar regression as the Baytrail attempt to
> make this generic and need to revert we'll need to find a different
> heuristic to make it generic on RMB and later.
>
> Acked-by: Mario Limonciello <mario.limonciello@amd.com>
>
> Here's some other tags to pick up too in the commit message.
>
> Tested-by: XiaoYan Li <lxy.lixiaoyan@gmail.com>
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=216118

Applied as 5.20 material with the above tags added, thanks!

> >> ---
> >> Change sice v5: reworked
> >>
> >> drivers/acpi/resource.c | 10 ++++++++++
> >> 1 file changed, 10 insertions(+)
> >>
> >> diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c
> >> index c2d494784425..510cdec375c4 100644
> >> --- a/drivers/acpi/resource.c
> >> +++ b/drivers/acpi/resource.c
> >> @@ -416,6 +416,16 @@ static bool acpi_dev_irq_override(u32 gsi, u8 triggering, u8 polarity,
> >> {
> >> int i;
> >>
> >> +#ifdef CONFIG_X86
> >> + /*
> >> + * IRQ override isn't needed on modern AMD Zen systems and
> >> + * this override breaks active low IRQs on AMD Ryzen 6000 and
> >> + * newer systems. Skip it.
> >> + */
> >> + if (boot_cpu_has(X86_FEATURE_ZEN))
> >> + return false;
> >> +#endif
> >> +
> >> for (i = 0; i < ARRAY_SIZE(skip_override_table); i++) {
> >> const struct irq_override_cmp *entry = &skip_override_table[i];
> >>
> >> --
> >> 2.36.1
> >>
>

\
 
 \ /
  Last update: 2022-07-21 17:13    [W:0.641 / U:0.080 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site