Re: [PATCH] ACPI: Parse entire table as a term_list for Dell XPS 9570 and Precision M5530

From: Rafael J. Wysocki
Date: Thu Feb 08 2018 - 04:50:00 EST


On Tuesday, January 30, 2018 9:09:04 PM CET Moore, Robert wrote:
>
> > -----Original Message-----
> > From: Mario.Limonciello@xxxxxxxx [mailto:Mario.Limonciello@xxxxxxxx]
> > Sent: Tuesday, January 30, 2018 11:03 AM
> > To: Schmauss, Erik <erik.schmauss@xxxxxxxxx>; andy.shevchenko@xxxxxxxxx;
> > kai.heng.feng@xxxxxxxxxxxxx
> > Cc: rjw@xxxxxxxxxxxxx; lenb@xxxxxxxxxx; linux-acpi@xxxxxxxxxxxxxxx;
> > linux-kernel@xxxxxxxxxxxxxxx; Moore, Robert <robert.moore@xxxxxxxxx>
> > Subject: RE: [PATCH] ACPI: Parse entire table as a term_list for Dell
> > XPS 9570 and Precision M5530
> >
> >
> >
> > > -----Original Message-----
> > > From: Schmauss, Erik [mailto:erik.schmauss@xxxxxxxxx]
> > > Sent: Tuesday, January 30, 2018 12:38 PM
> > > To: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>; Kai-Heng Feng
> > > <kai.heng.feng@xxxxxxxxxxxxx>
> > > Cc: Rafael J. Wysocki <rjw@xxxxxxxxxxxxx>; Len Brown
> > > <lenb@xxxxxxxxxx>; ACPI Devel Maling List
> > > <linux-acpi@xxxxxxxxxxxxxxx>; Linux Kernel Mailing List <linux-
> > > kernel@xxxxxxxxxxxxxxx>; Limonciello, Mario
> > > <Mario_Limonciello@xxxxxxxx>; Moore, Robert <robert.moore@xxxxxxxxx>
> > > Subject: RE: [PATCH] ACPI: Parse entire table as a term_list for Dell
> > > XPS 9570 and Precision M5530
> > >
> > > Hi,
> > > > -----Original Message-----
> > > > From: linux-acpi-owner@xxxxxxxxxxxxxxx [mailto:linux-acpi-
> > > > owner@xxxxxxxxxxxxxxx] On Behalf Of Andy Shevchenko
> > > > Sent: Tuesday, January 30, 2018 10:18 AM
> > > > To: Kai-Heng Feng <kai.heng.feng@xxxxxxxxxxxxx>
> > > > Cc: Rafael J. Wysocki <rjw@xxxxxxxxxxxxx>; Len Brown
> > > > <lenb@xxxxxxxxxx>; ACPI Devel Maling List
> > > > <linux-acpi@xxxxxxxxxxxxxxx>; Linux Kernel Mailing List <linux-
> > > > kernel@xxxxxxxxxxxxxxx>; Mario Limonciello
> > > > <mario.limonciello@xxxxxxxx>
> > > > Subject: Re: [PATCH] ACPI: Parse entire table as a term_list for
> > > > Dell XPS 9570 and Precision M5530
> > > >
> > > > On Tue, Jan 30, 2018 at 8:07 AM, Kai-Heng Feng
> > > > <kai.heng.feng@xxxxxxxxxxxxx> wrote:
> > > > > The i2c touchpad on Dell XPS 9570 and Precision M5530 doesn't work
> > > > > out of box.
> > > > >
> > > > > The touchpad relies on its _INI method to update its _HID value
> > > > > from
> > > > > XXXX0000 to SYNA2393.
> > > > > Also, the _STA relies on value of I2CN to report correct status.
> > > > >
> > > > > Set acpi_gbl_parse_table_as_term_list so the value of I2CN can be
> > > > > correctly set up, and _INI can get run. The ACPI table in this
> > > > > machine is designed to get parsed this way.
> > >
> > > I thought I would give everyone an update: we are getting close to
> > > finishing patches to enable this term list parsing by default as well
> > > as a few other fixes with forward referencing of package elements.
> > > Once we have established that these patches are stable, we will get
> > > rid of acpi_gbl_parse_table_as_term_list. So this quirk may not be
> > needed in the near future...
> >
> > Rafael,
> >
> > Would you be opposed to carrying a patch similar to this (proposed)
> > quirk patch in kernel and reverting when Erik submits patches that get
> > rid of acpi_gbl_parse_table_as_term_list?
> >
> > The reason being, I think this could also be a candidate to bring back
> > to @stable and fix this problem on earlier kernels too.
> >
> > I donât believe the patches that get rid of
> > acpi_gbl_parse_table_as_term_list likely will be good candidates for
> > @stable.
> >
>
>
> Does anyone remember what was the exact problem that forced the creation of
> parse_table_as_term_list in the first place?

I don't remember exactly, but it was related to the MLC code.

That was introduced by this kernel commit:

commit de56ba95e8d6d760910711744a548b50b3a4262d
Author: Lv Zheng <lv.zheng@xxxxxxxxx>
Date: Wed Sep 7 14:06:54 2016 +0800

ACPICA: Interpreter: Fix MLC issues by switching to new term_list grammar for table loading

ACPICA commit 0e24fb67cde08d7df7671d7d7b183490dc79707e

which has a very detailed changelog including links to several bug entries.

Thanks,
Rafael