[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e94d06dcfaf34deab72a5170a95fe2e9@ausx13mpc120.AMER.DELL.COM>
Date: Thu, 5 Oct 2017 15:12:46 +0000
From: <Mario.Limonciello@...l.com>
To: <dvhart@...radead.org>
CC: <andy.shevchenko@...il.com>, <linux-kernel@...r.kernel.org>,
<platform-driver-x86@...r.kernel.org>, <luto@...nel.org>,
<quasisec@...gle.com>, <pali.rohar@...il.com>, <rjw@...ysocki.net>,
<mjg59@...gle.com>, <hch@....de>, <greg@...ah.com>
Subject: RE: [PATCH v4 11/14] platform/x86: dell-smbios-wmi: Add new WMI
dispatcher driver
> -----Original Message-----
> From: Darren Hart [mailto:dvhart@...radead.org]
> Sent: Wednesday, October 4, 2017 9:15 PM
> To: Limonciello, Mario <Mario_Limonciello@...l.com>
> Cc: Andy Shevchenko <andy.shevchenko@...il.com>; LKML <linux-
> kernel@...r.kernel.org>; platform-driver-x86@...r.kernel.org; Andy Lutomirski
> <luto@...nel.org>; quasisec@...gle.com; pali.rohar@...il.com;
> rjw@...ysocki.net; mjg59@...gle.com; hch@....de; Greg KH
> <greg@...ah.com>
> Subject: Re: [PATCH v4 11/14] platform/x86: dell-smbios-wmi: Add new WMI
> dispatcher driver
>
> On Wed, Oct 04, 2017 at 05:48:37PM -0500, Mario Limonciello wrote:
> > The dell-smbios stack only currently uses an SMI interface which grants
> > direct access to physical memory to the firmware SMM methods via a pointer.
> >
> > This dispatcher driver adds a WMI-ACPI interface that is detected by WMI
> > probe and preferred over the SMI interface in dell-smbios.
> >
> > Changing this to operate over WMI-ACPI will use an ACPI OperationRegion
> > for a buffer of data storage when SMM calls are performed.
> >
> > This is a safer approach to use in kernel drivers as the SMM will
> > only have access to that OperationRegion.
> >
> > Signed-off-by: Mario Limonciello <mario.limonciello@...l.com>
> > ---
> > MAINTAINERS | 6 +
> > drivers/platform/x86/Kconfig | 16 ++-
> > drivers/platform/x86/Makefile | 1 +
> > drivers/platform/x86/dell-smbios-wmi.c | 215
> +++++++++++++++++++++++++++++++++
> > drivers/platform/x86/dell-smbios-wmi.h | 28 +++++
> > 5 files changed, 265 insertions(+), 1 deletion(-)
> > create mode 100644 drivers/platform/x86/dell-smbios-wmi.c
> > create mode 100644 drivers/platform/x86/dell-smbios-wmi.h
> >
> ...
> > diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
> > index f0b97cb8e449..ef597f440d2e 100644
> > --- a/drivers/platform/x86/Kconfig
> > +++ b/drivers/platform/x86/Kconfig
> > @@ -93,13 +93,27 @@ config ASUS_LAPTOP
> >
> > config DELL_SMBIOS
> > tristate "Dell SMBIOS calling interface"
> > - depends on DELL_SMBIOS_SMM
> > + depends on DELL_SMBIOS_WMI || DELL_SMBIOS_SMM
> > ---help---
> > This module provides common functions for kernel modules using
> > Dell SMBIOS.
>
> You use select DELL_SMBIOS below, which implies this modules should be
> invisible. Indeed, there is no need for the user to see the DELL_SMBIOS
> option at all now, they can select DELL_SMBIOS_WMI and or
> DELL_SMBIOS_SMM, no need to keep the DELL_SMBIOS option.
>
So when you say make invisible, does that mean that it should never show
up in make menuconfig and just be implicitly selected?
When I was adjusting Kconfig for your other feedback I noticed setting something
to "select $DRIVER" that invisible driver does show up just can't be turned off.
Is that what you mean?
> > diff --git a/drivers/platform/x86/dell-smbios-wmi.c
> b/drivers/platform/x86/dell-smbios-wmi.c
> > +static void __init parse_b1_table(const struct dmi_header *dm)
> > +{
> > + struct misc_bios_flags_structure *flags =
> > + container_of(dm, struct misc_bios_flags_structure, header);
> > +
> > + /* 4 bytes header, and one word of flags */
>
> Assuming specifically 8 bytes of flags, independent of arch?
Well platform/drivers/*x86*...
Powered by blists - more mailing lists