Message ID | 20250306103846.429221-9-jamin_lin@aspeedtech.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Support AST2700 A1 | expand |
On 3/6/25 11:38, Jamin Lin wrote: > Currently, AST2700 SoC only supports A0. To support AST2700 A1, rename its IRQ > table and machine name. > > To follow the machine deprecation rule, the initial machine "ast2700-evb" is > aliased to "ast2700a0-evb." In the future, we will alias "ast2700-evb" to new > SoCs, such as "ast2700a1-evb." > > Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> Reviewed-by: Cédric Le Goater <clg@redhat.com> Thanks, C. > --- > hw/arm/aspeed.c | 9 +++++---- > hw/arm/aspeed_ast27x0.c | 8 ++++---- > 2 files changed, 9 insertions(+), 8 deletions(-) > > diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c > index c6c18596d6..18f7c450da 100644 > --- a/hw/arm/aspeed.c > +++ b/hw/arm/aspeed.c > @@ -1673,12 +1673,13 @@ static void ast2700_evb_i2c_init(AspeedMachineState *bmc) > TYPE_TMP105, 0x4d); > } > > -static void aspeed_machine_ast2700_evb_class_init(ObjectClass *oc, void *data) > +static void aspeed_machine_ast2700a0_evb_class_init(ObjectClass *oc, void *data) > { > MachineClass *mc = MACHINE_CLASS(oc); > AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc); > > - mc->desc = "Aspeed AST2700 EVB (Cortex-A35)"; > + mc->alias = "ast2700-evb"; > + mc->desc = "Aspeed AST2700 A0 EVB (Cortex-A35)"; > amc->soc_name = "ast2700-a0"; > amc->hw_strap1 = AST2700_EVB_HW_STRAP1; > amc->hw_strap2 = AST2700_EVB_HW_STRAP2; > @@ -1817,9 +1818,9 @@ static const TypeInfo aspeed_machine_types[] = { > .class_init = aspeed_minibmc_machine_ast1030_evb_class_init, > #ifdef TARGET_AARCH64 > }, { > - .name = MACHINE_TYPE_NAME("ast2700-evb"), > + .name = MACHINE_TYPE_NAME("ast2700a0-evb"), > .parent = TYPE_ASPEED_MACHINE, > - .class_init = aspeed_machine_ast2700_evb_class_init, > + .class_init = aspeed_machine_ast2700a0_evb_class_init, > #endif > }, { > .name = TYPE_ASPEED_MACHINE, > diff --git a/hw/arm/aspeed_ast27x0.c b/hw/arm/aspeed_ast27x0.c > index 10e1358166..de79724446 100644 > --- a/hw/arm/aspeed_ast27x0.c > +++ b/hw/arm/aspeed_ast27x0.c > @@ -73,7 +73,7 @@ static const hwaddr aspeed_soc_ast2700_memmap[] = { > #define AST2700_MAX_IRQ 256 > > /* Shared Peripheral Interrupt values below are offset by -32 from datasheet */ > -static const int aspeed_soc_ast2700_irqmap[] = { > +static const int aspeed_soc_ast2700a0_irqmap[] = { > [ASPEED_DEV_UART0] = 132, > [ASPEED_DEV_UART1] = 132, > [ASPEED_DEV_UART2] = 132, > @@ -762,7 +762,7 @@ static void aspeed_soc_ast2700_realize(DeviceState *dev, Error **errp) > create_unimplemented_device("ast2700.io", 0x0, 0x4000000); > } > > -static void aspeed_soc_ast2700_class_init(ObjectClass *oc, void *data) > +static void aspeed_soc_ast2700a0_class_init(ObjectClass *oc, void *data) > { > static const char * const valid_cpu_types[] = { > ARM_CPU_TYPE_NAME("cortex-a35"), > @@ -785,7 +785,7 @@ static void aspeed_soc_ast2700_class_init(ObjectClass *oc, void *data) > sc->uarts_num = 13; > sc->num_cpus = 4; > sc->uarts_base = ASPEED_DEV_UART0; > - sc->irqmap = aspeed_soc_ast2700_irqmap; > + sc->irqmap = aspeed_soc_ast2700a0_irqmap; > sc->memmap = aspeed_soc_ast2700_memmap; > sc->get_irq = aspeed_soc_ast2700_get_irq; > } > @@ -800,7 +800,7 @@ static const TypeInfo aspeed_soc_ast27x0_types[] = { > .name = "ast2700-a0", > .parent = TYPE_ASPEED27X0_SOC, > .instance_init = aspeed_soc_ast2700_init, > - .class_init = aspeed_soc_ast2700_class_init, > + .class_init = aspeed_soc_ast2700a0_class_init, > }, > }; >
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index c6c18596d6..18f7c450da 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -1673,12 +1673,13 @@ static void ast2700_evb_i2c_init(AspeedMachineState *bmc) TYPE_TMP105, 0x4d); } -static void aspeed_machine_ast2700_evb_class_init(ObjectClass *oc, void *data) +static void aspeed_machine_ast2700a0_evb_class_init(ObjectClass *oc, void *data) { MachineClass *mc = MACHINE_CLASS(oc); AspeedMachineClass *amc = ASPEED_MACHINE_CLASS(oc); - mc->desc = "Aspeed AST2700 EVB (Cortex-A35)"; + mc->alias = "ast2700-evb"; + mc->desc = "Aspeed AST2700 A0 EVB (Cortex-A35)"; amc->soc_name = "ast2700-a0"; amc->hw_strap1 = AST2700_EVB_HW_STRAP1; amc->hw_strap2 = AST2700_EVB_HW_STRAP2; @@ -1817,9 +1818,9 @@ static const TypeInfo aspeed_machine_types[] = { .class_init = aspeed_minibmc_machine_ast1030_evb_class_init, #ifdef TARGET_AARCH64 }, { - .name = MACHINE_TYPE_NAME("ast2700-evb"), + .name = MACHINE_TYPE_NAME("ast2700a0-evb"), .parent = TYPE_ASPEED_MACHINE, - .class_init = aspeed_machine_ast2700_evb_class_init, + .class_init = aspeed_machine_ast2700a0_evb_class_init, #endif }, { .name = TYPE_ASPEED_MACHINE, diff --git a/hw/arm/aspeed_ast27x0.c b/hw/arm/aspeed_ast27x0.c index 10e1358166..de79724446 100644 --- a/hw/arm/aspeed_ast27x0.c +++ b/hw/arm/aspeed_ast27x0.c @@ -73,7 +73,7 @@ static const hwaddr aspeed_soc_ast2700_memmap[] = { #define AST2700_MAX_IRQ 256 /* Shared Peripheral Interrupt values below are offset by -32 from datasheet */ -static const int aspeed_soc_ast2700_irqmap[] = { +static const int aspeed_soc_ast2700a0_irqmap[] = { [ASPEED_DEV_UART0] = 132, [ASPEED_DEV_UART1] = 132, [ASPEED_DEV_UART2] = 132, @@ -762,7 +762,7 @@ static void aspeed_soc_ast2700_realize(DeviceState *dev, Error **errp) create_unimplemented_device("ast2700.io", 0x0, 0x4000000); } -static void aspeed_soc_ast2700_class_init(ObjectClass *oc, void *data) +static void aspeed_soc_ast2700a0_class_init(ObjectClass *oc, void *data) { static const char * const valid_cpu_types[] = { ARM_CPU_TYPE_NAME("cortex-a35"), @@ -785,7 +785,7 @@ static void aspeed_soc_ast2700_class_init(ObjectClass *oc, void *data) sc->uarts_num = 13; sc->num_cpus = 4; sc->uarts_base = ASPEED_DEV_UART0; - sc->irqmap = aspeed_soc_ast2700_irqmap; + sc->irqmap = aspeed_soc_ast2700a0_irqmap; sc->memmap = aspeed_soc_ast2700_memmap; sc->get_irq = aspeed_soc_ast2700_get_irq; } @@ -800,7 +800,7 @@ static const TypeInfo aspeed_soc_ast27x0_types[] = { .name = "ast2700-a0", .parent = TYPE_ASPEED27X0_SOC, .instance_init = aspeed_soc_ast2700_init, - .class_init = aspeed_soc_ast2700_class_init, + .class_init = aspeed_soc_ast2700a0_class_init, }, };
Currently, AST2700 SoC only supports A0. To support AST2700 A1, rename its IRQ table and machine name. To follow the machine deprecation rule, the initial machine "ast2700-evb" is aliased to "ast2700a0-evb." In the future, we will alias "ast2700-evb" to new SoCs, such as "ast2700a1-evb." Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> --- hw/arm/aspeed.c | 9 +++++---- hw/arm/aspeed_ast27x0.c | 8 ++++---- 2 files changed, 9 insertions(+), 8 deletions(-)