[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type
From: |
Nicholas Piggin |
Subject: |
Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type |
Date: |
Tue, 21 Nov 2023 11:33:44 +1000 |
On Tue Nov 21, 2023 at 9:51 AM AEST, Glenn Miles wrote:
> Create a new powernv machine type, powernv10-rainier, that
> will contain rainier-specific devices.
Is the plan to have a base powernv10 common to all and then
powernv10-rainier looks like a Rainier? Or would powernv10
just be a rainier?
It's fine to structure code this way, I'm just wondering about
the machine types available to user. Is a base powernv10 machine
useful to run?
Thanks,
Nick
>
> Signed-off-by: Glenn Miles <milesg@linux.vnet.ibm.com>
> ---
> hw/ppc/pnv.c | 29 +++++++++++++++++++++++++++--
> 1 file changed, 27 insertions(+), 2 deletions(-)
>
> diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c
> index 9c29727337..3481a1220e 100644
> --- a/hw/ppc/pnv.c
> +++ b/hw/ppc/pnv.c
> @@ -2249,7 +2249,7 @@ static void pnv_machine_power9_class_init(ObjectClass
> *oc, void *data)
> machine_class_allow_dynamic_sysbus_dev(mc, TYPE_PNV_PHB);
> }
>
> -static void pnv_machine_power10_class_init(ObjectClass *oc, void *data)
> +static void pnv_machine_p10_common_class_init(ObjectClass *oc, void *data)
> {
> MachineClass *mc = MACHINE_CLASS(oc);
> PnvMachineClass *pmc = PNV_MACHINE_CLASS(oc);
> @@ -2261,7 +2261,6 @@ static void pnv_machine_power10_class_init(ObjectClass
> *oc, void *data)
> { TYPE_PNV_PHB_ROOT_PORT, "version", "5" },
> };
>
> - mc->desc = "IBM PowerNV (Non-Virtualized) POWER10";
> mc->default_cpu_type = POWERPC_CPU_TYPE_NAME("power10_v2.0");
> compat_props_add(mc->compat_props, phb_compat, G_N_ELEMENTS(phb_compat));
>
> @@ -2274,6 +2273,23 @@ static void pnv_machine_power10_class_init(ObjectClass
> *oc, void *data)
> machine_class_allow_dynamic_sysbus_dev(mc, TYPE_PNV_PHB);
> }
>
> +static void pnv_machine_power10_class_init(ObjectClass *oc, void *data)
> +{
> + MachineClass *mc = MACHINE_CLASS(oc);
> +
> + pnv_machine_p10_common_class_init(oc, data);
> + mc->desc = "IBM PowerNV (Non-Virtualized) POWER10";
> +
> +}
> +
> +static void pnv_machine_p10_rainier_class_init(ObjectClass *oc, void *data)
> +{
> + MachineClass *mc = MACHINE_CLASS(oc);
> +
> + pnv_machine_p10_common_class_init(oc, data);
> + mc->desc = "IBM PowerNV (Non-Virtualized) POWER10 rainier";
> +}
> +
> static bool pnv_machine_get_hb(Object *obj, Error **errp)
> {
> PnvMachineState *pnv = PNV_MACHINE(obj);
> @@ -2379,6 +2395,15 @@ static void pnv_machine_class_init(ObjectClass *oc,
> void *data)
> }
>
> static const TypeInfo types[] = {
> + {
> + .name = MACHINE_TYPE_NAME("powernv10-rainier"),
> + .parent = TYPE_PNV_MACHINE,
> + .class_init = pnv_machine_p10_rainier_class_init,
> + .interfaces = (InterfaceInfo[]) {
> + { TYPE_XIVE_FABRIC },
> + { },
> + },
> + },
> {
> .name = MACHINE_TYPE_NAME("powernv10"),
> .parent = TYPE_PNV_MACHINE,
- [PATCH v4 00/11] Add powernv10 I2C devices and tests, Glenn Miles, 2023/11/20
- [PATCH v4 02/11] misc/pca9552: Let external devices set pca9552 inputs, Glenn Miles, 2023/11/20
- [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type, Glenn Miles, 2023/11/20
- Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type,
Nicholas Piggin <=
- Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type, Cédric Le Goater, 2023/11/21
- Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type, Miles Glenn, 2023/11/21
- Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type, Cédric Le Goater, 2023/11/21
- Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type, Cédric Le Goater, 2023/11/21
- Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type, Miles Glenn, 2023/11/21
- Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type, Nicholas Piggin, 2023/11/22
Re: [PATCH v4 03/11] ppc/pnv: New powernv10-rainier machine type, Cédric Le Goater, 2023/11/21
[PATCH v4 01/11] misc/pca9552: Fix inverted input status, Glenn Miles, 2023/11/20
[PATCH v4 08/11] ppc/pnv: Use resettable interface to reset child I2C buses, Glenn Miles, 2023/11/20