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,
> },
> };
>