Re: [PATCH v4 1/2] ACPI / x86: boot: Not all platforms require acpi_reduced_hw_init()

From: Andy Shevchenko
Date: Tue Feb 20 2018 - 12:25:57 EST


On Tue, 2018-02-20 at 17:27 +0100, Rafael J. Wysocki wrote:
> On Tue, Feb 20, 2018 at 5:03 PM, Andy Shevchenko
> <andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
> > Some platforms might take care of legacy devices on theirs own. Due
> > to this,
> > export acpi_reduced_hw_init() and put it into struct x86_init_acpi.
>
> IMO this completely doesn't explain what really happens here.
>
> You basically want to provide your own versions of
> x86_init.timers.timer_init, x86_init.irqs.pre_vector_init and
> legacy_pic on some HW-reduced platforms AFAICS, so you make it
> possible for the platform to provide its own variant of
> acpi_reduced_hw_init().

In this particular case only timers matter, though in general you are
right.

> I would say something like this:
>
> "Some ACPI hawdware-reduced platforms need to initialize certain
> devices defined by the ACPI hardware specification even though in
> principle those devices should not be present in an ACPI
> hawdware-reduced platform. To allow that to happen, make it possible
> to override the generic x86_init callbacks and provide a custom
> legacy_pic value, add a new ->reduced_hw_early_init() callback to
> struct x86_init_acpi and make acpi_reduced_hw_init() use it."

Thanks for review! I will use your suggestions in the next version.

--
Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
Intel Finland Oy