On Mon, 2 Jan 2023 at 15:46, Rebecca Cran <rebe...@quicinc.com> wrote: > > For the SBSA-REF machine start all APs in the powered-off state. > This reduces host CPU usage until PSCI_CPU_ON is called when the APs > are needed. > > Signed-off-by: Rebecca Cran <rebe...@quicinc.com> > --- > hw/arm/sbsa-ref.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/hw/arm/sbsa-ref.c b/hw/arm/sbsa-ref.c > index 4bb444684f40..cf0af35c7807 100644 > --- a/hw/arm/sbsa-ref.c > +++ b/hw/arm/sbsa-ref.c > @@ -753,6 +753,12 @@ static void sbsa_ref_init(MachineState *machine) > &error_abort); > } > > + /* Configure all APs to be powered off at start */ > + if (n != 0 && object_property_find(cpuobj, "start-powered-off")) { > + object_property_set_bool(cpuobj, "start-powered-off", > + true, &error_abort); > + } > + > object_property_set_link(cpuobj, "memory", OBJECT(sysmem), > &error_abort);
This board disables QEMU's own PSCI implementation and relies on a guest EL3 firmware to provide PSCI. So how will that EL3 firmware implement the "power on" to bring up the secondaries? QEMU has the APIs to allow implementation of a model of a hardware power controller (target/arm/arm-powerctl.h) but as far as I can see the sbsa-ref board doesn't yet implement one, so if you start the CPUs in the powered-off state there's no way for them ever to be powered on. thanks -- PMM