This patchset introduces Axiado SoC AX3000 and a EVK SCM3003 for emulation
The model for Axiado SoC AX3000 supports
4 Cortex-A53 CPUs
Arm Generic Interrupt Controller v3
4 Cadence UARTs
1 SDHCI controller with PHY
8 Cadence GPIOs
Verified the machine "axiado-scm3003" with following command
qemu-system-aarch64 \
-m 4G \
-machine axiado-scm3003 \
-device loader,file=u-boot.bin,addr=0x3C000000,cpu-num=0 \
-nographic \
-serial null \
-serial null \
-serial null \
-serial mon:stdio \
-drive if=sd,file=obmc-phosphor-image-evk-axiado-qemu.wic,format=raw
Refer Axiado website for more product information
https://axiado.com/products/
Changes in v3:
1. Add a new patch for Axiado SD host controller
2. Fill in valid/impl parameters of MemoryRegionOps in
ax3000-soc/cadence_gpio/axiado_sdhci
3. Follow C99 standard to declare variable in for-loop
4. Remove comment "TBD" from empty function
5. Define marco for bit definition in axiado_sdhci
6. Move object_initialize_child() to instance_init() from realize() in
axiado_sdhci
7. Remove callback of get_default_cpu_type() from ax3000-soc and set
type of CPU to A53
8. Update the command to run "axiado-scm3003" in QEMU
Changes in v2:
1. Move axiado-* to ax3000-* in hw/arm and include/hw/arm
2. Add axiado_sdhci to support AXIADO_SDHCI
3. Move implementation for eMMC PHY device to axiado_sdhci
4. Use UNIMP to create dummy device "timerctrl"
5. Add cadence_gpio to support CADENCE_GPIO
6. Enable Cadence GPIO controllers on AX3000 SoC
Kuan-Jui Chiu (6):
hw/arm: Add Axiado SoC AX3000
hw/sd: Add Axiado SD host controller with eMMC PHY
hw/arm: ax3000-soc: Enable Axiado SD host controller
hw/arm: Add Axiado EVK SCM3003
hw/gpio: Add Cadence GPIO controller
hw/arm: ax3000-soc: Enable Cadence GPIO controllers
MAINTAINERS | 9 +
hw/arm/Kconfig | 14 ++
hw/arm/ax3000-boards.c | 47 +++++
hw/arm/ax3000-evk.c | 27 +++
hw/arm/ax3000-soc.c | 267 ++++++++++++++++++++++++++++
hw/arm/meson.build | 6 +
hw/gpio/Kconfig | 3 +
hw/gpio/cadence_gpio.c | 307 +++++++++++++++++++++++++++++++++
hw/gpio/meson.build | 1 +
hw/gpio/trace-events | 5 +
hw/sd/Kconfig | 4 +
hw/sd/axiado_sdhci.c | 115 ++++++++++++
hw/sd/meson.build | 1 +
include/hw/arm/ax3000-boards.h | 28 +++
include/hw/arm/ax3000-soc.h | 99 +++++++++++
include/hw/gpio/cadence_gpio.h | 55 ++++++
include/hw/sd/axiado_sdhci.h | 21 +++
17 files changed, 1009 insertions(+)
create mode 100644 hw/arm/ax3000-boards.c
create mode 100644 hw/arm/ax3000-evk.c
create mode 100644 hw/arm/ax3000-soc.c
create mode 100644 hw/gpio/cadence_gpio.c
create mode 100644 hw/sd/axiado_sdhci.c
create mode 100644 include/hw/arm/ax3000-boards.h
create mode 100644 include/hw/arm/ax3000-soc.h
create mode 100644 include/hw/gpio/cadence_gpio.h
create mode 100644 include/hw/sd/axiado_sdhci.h
--
2.34.1