[BOOT-WRAPPER 11/11] Boot CPUs sequentially

Mark Rutland mark.rutland at arm.com
Sat Aug 3 03:57:51 PDT 2024


On Wed, Jul 31, 2024 at 10:57:34AM +0100, Luca Fancellu wrote:
> Hi Mark,
> 
> > diff --git a/arch/aarch64/init.c b/arch/aarch64/init.c
> > index 68c220b..81fe33a 100644
> > --- a/arch/aarch64/init.c
> > +++ b/arch/aarch64/init.c
> > @@ -6,6 +6,7 @@
> >  * Use of this source code is governed by a BSD-style license that can be
> >  * found in the LICENSE.txt file.
> >  */
> > +#include <boot.h>
> > #include <cpu.h>
> > #include <gic.h>
> > #include <platform.h>
> > @@ -159,24 +160,28 @@ static void cpu_init_el3(void)
> > #ifdef PSCI
> > extern char psci_vectors[];
> >
> > -bool cpu_init_psci_arch(void)
> > +static void cpu_init_psci_arch(unsigned int cpu)
> > {
> > - if (mrs(CurrentEL) != CURRENTEL_EL3)
> > - return false;
> > + if (mrs(CurrentEL) != CURRENTEL_EL3) {
> > + print_cpu_warn(cpu, "PSCI could not be initialized (not booted at EL3).\r\n");
> > + return;
> > + }
> >
> > msr(VBAR_EL3, (unsigned long)psci_vectors);
> > isb();
> > -
> > - return true;
> > }
> > +#else
> > +static void cpu_init_psci_arch(unsigned int cpu);
> 
> This needs {} otherwise I’m getting:
> 
> | aarch64-poky-linux-ld: arch/aarch64/init.o: in function `cpu_init_arch’:
> | /usr/src/debug/boot-wrapper-aarch64/gitAUTOINC+cd7fe8a88e-r0/arch/aarch64/init.c:246: undefined reference to `cpu_init_psci_arch’
> | aarch64-poky-linux-ld: /usr/src/debug/boot-wrapper-aarch64/gitAUTOINC+cd7fe8a88e-r0/arch/aarch64/init.c:246: undefined reference to `cpu_init_psci_arch’
> 
> When compiling without PSCI.

Whoops; I've fixed that up locally. Thanks for the report.

Mark.



More information about the linux-arm-kernel mailing list