Re: [PATCH v2] platform/x86: wmi-bmof: New driver to expose embedded Binary WMI MOF metadata

From: Andy Lutomirski
Date: Mon Jun 19 2017 - 12:24:17 EST


On Mon, Jun 19, 2017 at 9:19 AM, Pali RohÃr <pali.rohar@xxxxxxxxx> wrote:
> On Monday 19 June 2017 18:13:13 Mario.Limonciello@xxxxxxxx wrote:
>> > -----Original Message-----
>> > From: Pali RohÃr [mailto:pali.rohar@xxxxxxxxx]
>> > Sent: Monday, June 19, 2017 11:08 AM
>> > To: Andy Lutomirski <luto@xxxxxxxxxx>
>> > Cc: platform-driver-x86@xxxxxxxxxxxxxxx; Andy Shevchenko
>> > <andriy.shevchenko@xxxxxxxxxxxxxxx>; Andy Lutomirski
>> > <luto@xxxxxxxxxxxxxx>; Limonciello, Mario
>> > <Mario_Limonciello@xxxxxxxx>; Rafael Wysocki <rjw@xxxxxxxxxxxxx>;
>> > linux-kernel@xxxxxxxxxxxxxxx; linux-acpi@xxxxxxxxxxxxxxx Subject:
>> > Re: [PATCH v2] platform/x86: wmi-bmof: New driver to expose
>> > embedded Binary WMI MOF metadata
>> >
>> > On Tuesday 06 June 2017 05:16:44 Andy Lutomirski wrote:
>> > > Many laptops (and maybe servers?) have embedded WMI Binary MOF
>> > > metadata. We do not yet have open-source tools for processing the
>> > >
>> > > data, although one is in the works thanks to Pali:
>> > > https://github.com/pali/bmfdec
>> > >
>> > > There is currently no interface to get the data in the first
>> > > place. By exposing it, we facilitate the development of new
>> > > tools.
>> > >
>> > > Signed-off-by: Andy Lutomirski <luto@xxxxxxxxxx>
>> > > Cc: Andy Lutomirski <luto@xxxxxxxxxxxxxx>
>> > > Cc: Mario Limonciello <mario_limonciello@xxxxxxxx>
>> > > Cc: Pali RohÃr <pali.rohar@xxxxxxxxx>
>> > > Cc: linux-kernel@xxxxxxxxxxxxxxx
>> > > Cc: platform-driver-x86@xxxxxxxxxxxxxxx
>> > > Cc: linux-acpi@xxxxxxxxxxxxxxx
>> > > [dvhart: make sysfs mof binary read only, fixup comment block
>> > > format] [dvhart: use bmof terminology and dev_err instead of
>> > > dev_warn] Acked-by: Rafael J. Wysocki
>> > > <rafael.j.wysocki@xxxxxxxxx> Signed-off-by: Darren Hart (VMware)
>> > > <dvhart@xxxxxxxxxxxxx> ---
>> > >
>> > > since-v1:
>> > > * address Pali's comments:
>> > > * update the cover letter for clarity and accuracy
>> > > * update mof->bmof and MOF to Binary MOF throughout the patch
>> > > * use dev_err instead of dev_warn in wmi_bmof_probe
>> > >
>> > > drivers/platform/x86/Kconfig | 12 ++++
>> > > drivers/platform/x86/Makefile | 1 +
>> > > drivers/platform/x86/wmi-bmof.c | 125
>> >
>> > Another suggestion (unrelated to this patch): For working with
>> > ACPI-WMI, this binary MOF buffer is not enough. It is needed also
>> > content of _WDG buffer. What about exporting it too via sysfs?
>> > Probably not part of of wmi-bmof driver, but wmi driver itself.
>>
>> I think this depends upon how the userspace access to WMI methods
>> gets implemented, no? If userpsace access to WMI methods show up as
>> /dev/wmi-$GUID-$INSTANCE and those internally to the kernel map to
>> the proper ASL methods for example, what you get from wmi-bmof
>> should be enough shouldn't it?
>
> Ok. Such interface for userspace application could be enough.
>
> But for debugging purposes or writing new WMI driver it is needed to
> have both _WDG + BMOF.

With the busification patches applied, all the _WDG data should be
available in sysfs in parsed form. I have no particular objection to
adding a new sysfs for debugfs file to give the raw binary blob, but
I'm not sure it's needed.

--Andy