On Tue, 2 Jun 2026 at 07:34, Kuan-Jui Chiu <[email protected]> wrote:
>
> Add EVK axiado-scm3003 built with AX3000 SoC
>
> Signed-off-by: Kuan-Jui Chiu <[email protected]>
> ---
>  hw/arm/Kconfig                 |  5 ++++
>  hw/arm/ax3000-boards.c         | 47 ++++++++++++++++++++++++++++++++++
>  hw/arm/ax3000-evk.c            | 27 +++++++++++++++++++
>  hw/arm/meson.build             |  3 +++
>  include/hw/arm/ax3000-boards.h | 28 ++++++++++++++++++++
>  5 files changed, 110 insertions(+)
>  create mode 100644 hw/arm/ax3000-boards.c
>  create mode 100644 hw/arm/ax3000-evk.c
>  create mode 100644 include/hw/arm/ax3000-boards.h
>
> diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
> index 5b9cf25dd31..175e6c7985b 100644
> --- a/hw/arm/Kconfig
> +++ b/hw/arm/Kconfig
> @@ -724,3 +724,8 @@ config AXIADO_SOC
>      select CADENCE # UART
>      select AXIADO_SDHCI
>      select UNIMP
> +
> +config AXIADO_EVK
> +    bool
> +    default y
> +    select AXIADO_SOC
> diff --git a/hw/arm/ax3000-boards.c b/hw/arm/ax3000-boards.c
> new file mode 100644
> index 00000000000..ad3dd963656
> --- /dev/null
> +++ b/hw/arm/ax3000-boards.c
> @@ -0,0 +1,47 @@
> +/*
> + * Axiado Boards
> + *
> + * Author: Kuan-Jui Chiu <[email protected]>
> + *
> + * SPDX-License-Identifier: GPL-2.0-or-later
> + */
> +
> +#include "qemu/osdep.h"
> +#include "hw/arm/ax3000-boards.h"
> +#include "hw/arm/machines-qom.h"
> +#include "qemu/error-report.h"
> +#include "qom/object.h"
> +
> +static void ax3000_machine_init(MachineState *machine)
> +{
> +    Ax3000MachineState *ams = AX3000_MACHINE(machine);
> +
> +    ams->soc = AX3000_SOC(object_new(TYPE_AX3000_SOC));
> +    object_property_add_child(OBJECT(machine), "soc", OBJECT(ams->soc));
> +    sysbus_realize_and_unref(SYS_BUS_DEVICE(ams->soc), &error_fatal);
> +}

You *must* call arm_load_kernel() in your machine init function.
This is not an optional step -- that function does work that
must be done for things like reset to work correctly, even
if the user is not using "-kernel". Also, even if you don't
typically want to use "-kernel", other people might. This is
standard functionality all boards need to provide.

thanks
-- PMM

Reply via email to