On Fri, May 4, 2018 at 11:16 AM, Kyösti Mälkki <kyosti.mal...@gmail.com> wrote: > On Fri, May 4, 2018 at 7:19 PM, Kyösti Mälkki <kyosti.mal...@gmail.com> wrote: >> On Fri, May 4, 2018 at 6:37 PM, Aaron Durbin <adur...@google.com> wrote: >>>> >>>> Any idea what can be result of such weird behavior? >>> > > My current guess is AP CPUs do not see initialised memory for > _car_region_start .. _end. That region is set up using fixed MTRRs in > low memory and probably not synced between cores so early in romstage. >
Ugh. Why do we allow the APs to run through all these stages? Is this for parallel node memory training? Can we ring fence where the APs actually run better? > > diff --git a/src/console/init.c b/src/console/init.c > index 8f71b09..4731e7e 100644 > --- a/src/console/init.c > +++ b/src/console/init.c > @@ -35,7 +35,7 @@ static int console_loglevel = > CONFIG_DEFAULT_CONSOLE_LOGLEVEL; > > static inline int get_log_level(void) > { > - if (car_get_var(console_inited) == 0) > + if (boot_cpu() && car_get_var(console_inited) == 0) > return -1; > if (CONSOLE_LEVEL_CONST) > return get_console_loglevel(); > > Kyösti -- coreboot mailing list: coreboot@coreboot.org https://mail.coreboot.org/mailman/listinfo/coreboot