[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 05/24] aspeed: Don't create unwanted "cortex-a7-arm-cpu" devi
From: |
Joel Stanley |
Subject: |
Re: [PATCH 05/24] aspeed: Don't create unwanted "cortex-a7-arm-cpu" devices |
Date: |
Tue, 19 May 2020 00:40:00 +0000 |
On Mon, 18 May 2020 at 12:24, Cédric Le Goater <address@hidden> wrote:
>
> On 5/18/20 7:03 AM, Markus Armbruster wrote:
> > The number of CPUs is controlled by property "num-cpus".
> > aspeed_soc_ast2600_init() creates the maximum supported number.
> > aspeed_soc_ast2600_realize() realizes only the wanted number. Works,
> > although it leaves unrealized devices hanging around in the QOM
> > composition tree. Affects machines ast2600-evb and tacoma-bmc.
> >
> > Make the init functions create only the wanted ones. Visible in "info
> > qom-tree"; here's the change for ast2600-evb:
> >
> > /machine (ast2600-evb-machine)
> > [...]
> > /soc (ast2600-a1)
> > [...]
> > /cpu[0] (cortex-a7-arm-cpu)
> > /unnamed-gpio-in[0] (irq)
> > /unnamed-gpio-in[1] (irq)
> > /unnamed-gpio-in[2] (irq)
> > /unnamed-gpio-in[3] (irq)
> > - /cpu[1] (cortex-a7-arm-cpu)
> > - /unnamed-gpio-in[0] (irq)
> > - /unnamed-gpio-in[1] (irq)
> > - /unnamed-gpio-in[2] (irq)
> > - /unnamed-gpio-in[3] (irq)
> > /ehci[0] (platform-ehci-usb)
> >
> > Cc: "Cédric Le Goater" <address@hidden>
> > Cc: Peter Maydell <address@hidden>
> > Cc: Andrew Jeffery <address@hidden>
> > Cc: Joel Stanley <address@hidden>
> > Cc: address@hidden
> > Signed-off-by: Markus Armbruster <address@hidden>
>
> Reviewed-by: Cédric Le Goater <address@hidden>
>
> Joel, Andrew,
>
> Shouldn't we enforce a default/min/max number of CPUs of 2 for the AST2600 ?
> That's the SoC definition. The fact it is configurable in the Aspeed model
> was nice to have during bringup but we are now done.
Agreed, we want there to always be two CPUs for the 2600.
>
> Thanks,
>
> C.
>
> > ---
> > hw/arm/aspeed_ast2600.c | 3 +++
> > 1 file changed, 3 insertions(+)
> >
> > diff --git a/hw/arm/aspeed_ast2600.c b/hw/arm/aspeed_ast2600.c
> > index 0a6a77dd54..6ffa587a7f 100644
> > --- a/hw/arm/aspeed_ast2600.c
> > +++ b/hw/arm/aspeed_ast2600.c
> > @@ -287,6 +287,9 @@ static void aspeed_soc_ast2600_realize(DeviceState
> > *dev, Error **errp)
> > return;
> > }
> > }
> > + for (; i < sc->num_cpus; i++) {
> > + object_unparent(OBJECT(&s->cpu[i]));
> > + }
> >
> > /* A7MPCORE */
> > object_property_set_int(OBJECT(&s->a7mpcore), s->num_cpus, "num-cpu",
> >
>