lkml.org 
[lkml]   [2017]   [Aug]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v4 1/5] treewide: Consolidate Apple DMI checks
From
Date
On Tue, 2017-08-01 at 15:35 +0300, Andy Shevchenko wrote:
> On Tue, 2017-08-01 at 14:10 +0200, Lukas Wunner wrote:
> > We're about to amend ACPI bus scan with DMI checks whether we're
> > running
> > on a Mac to support Apple device properties in AML.  The DMI checks
> > are
> > performed for every single device, adding overhead for everything
> > x86
> > that isn't Apple, which is the majority.  Rafael and Andy therefore
> > request to perform the DMI match only once and cache the result.
> >
> > Outside of ACPI various other Apple DMI checks exist and it seems
> > reasonable to use the cached value there as well.  Rafael, Andy and
> > Darren suggest performing the DMI check in arch code and making it
> > available with a header in include/linux/platform_data/x86/.
> >
> > To this end, add early_platform_quirks() to arch/x86/kernel/quirks.c
> > to perform the DMI check and invoke it from setup_arch().  Switch
> > over
> > all existing Apple DMI checks, thereby fixing two deficiencies:
> >
> > * They are now #defined to false on non-x86 arches and can thus be
> >   optimized away if they're located in cross-arch code.
> >
> > * Some of them only match "Apple Inc." but not "Apple Computer,
> > Inc.",
> >   which is used by BIOSes released between January 2006 (when the
> > first
> >   x86 Macs started shipping) and January 2007 (when the company name
> >   changed upon introduction of the iPhone).
>
>
> I like the idea, though I can repeat what I commented on your Github
> page.
>
> We might need to distinguish 2006 vs 2007 Apple hardware. Thus, my
> proposal was to use unsigned int (as bitwise flags) instead of bool
> and
> provide two definitions for the hardware. Set those bits accordingly.
> In case of most of the checks it will be the same as in this patch,
> but
> leaves a flexibility of a choice.

Okay, and you answered there.

TWIMC
https://github.com/l1k/linux/commit/20f8b74b83ed45171583fe501182c93e5c6e
b4d9


--
Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Intel Finland Oy

\
 
 \ /
  Last update: 2017-08-01 14:44    [W:0.055 / U:7.268 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site