On 2019/8/1 16:13, Thomas Gleixner wrote: > On Thu, 1 Aug 2019, Aubrey Li wrote: >> On Thu, Aug 1, 2019 at 3:35 PM Thomas Gleixner <t...@linutronix.de> wrote: >>> >>> On Thu, 1 Aug 2019, Aubrey Li wrote: >>>> On Thu, Aug 1, 2019 at 2:26 PM Daniel Drake <dr...@endlessm.com> wrote: >>>>> global_clock_event is NULL here. This is a "reduced hardware" ACPI >>>>> platform so acpi_generic_reduced_hw_init() has set timer_init to NULL, >>>>> avoiding the usual codepaths that would set up global_clock_event. >>>>> >>>> IIRC, acpi_generic_reduced_hw_init() avoids initializing PIT, the status of >>>> this legacy device is unknown in ACPI hw-reduced mode. >>>> >>>>> I tried the obvious: >>>>> if (!global_clock_event) >>>>> return -1; >>>>> >>>> No, the platform needs a global clock event, can you turn on some other >>> >>> Wrong. The kernel boots perfectly fine without a global clock event. But >>> for that the TSC and LAPIC frequency must be known. >> >> I think LAPIC fast calibrate is only supported on intel platform, while >> Daniel's box is an AMD platform. That's why lapic_init_clockevent() failed >> and fall into the code path which needs a global clock event. > > We know that. > > The point is that it does not matter which vendor a CPU comes from. The > kernel does support legacyless boot when the frequencies are known. Whether > that's currently possible on that particular CPU is a different question. > Yeah, I should specify, Daniel, your platform needs a global clock event, ;-)
Thanks, -Aubrey