Re: [RFC PATCH 00/14] Support timezone of ACPI TAD and EFI TIME

Rafael J. Wysocki
2013-12-20T21:45:11Z

On Friday, December 20, 2013 01:10:26 PM H. Peter Anvin wrote:
> On 12/19/2013 09:38 PM, joeyli wrote:
> >
> > If don't use EFI time, then the first priority is using ACPI TAD if it
> > present. Due to ACPI TAD is a generic acpi device that's need OS parsing
> > DSDT table before set system time.
> >
> > Either move DSDT parser from subsystem initial stage to start_kernel or
> > move timekeeping initial to after DSDT be parsed. Which one you think is
> > more possible and risk less? Then I will try that way.
> >
>
> I discussed the DSDT/SSDT parsing issue with Rafael and he claims it
> would require a lot of restructuring. Unfortunately ACPI is at this
> point done rather late, as I understand. All of this is a big problem.

My understanding, however, is that to use the TAD, we don't actually need to
create a struct acpi_device for it. We just need a handle to the ACPICA
object which can be found using acpi_get_devices() as soon as the namespace
has been extracted from the DSDT and friends. That in turn happens in
acpi_early_init(), which is called from start_kernel() right before
efi_late_init().

Is that early enough?

Rafael