This patch series models enough of the ASPEED AST2400 ARM9 SoC[0] to boot an aspeed_defconfig Linux kernel[1]. Specifically, the series implements the timer and VIC devices and integrates them into a new ast2400 machine through a AST2400SOC model. The device model patches only partially implement the hardware features of the timer and VIC, again mostly just enough to boot Linux.
Unfortunately the datasheet describing the devices is not generally available, but I'll try to add comments to any unclear areas. The addition of the AST2400 to QEMU is motivated by use of the SoC as a BMC in OpenPOWER[2][3] machines and the ongoing development of OpenBMC[4]. The presence of a machine model for the AST2400 will help with development and testing of the OpenBMC stack. Cheers, Andrew [0] http://www.aspeedtech.com/products.php?fPath=20&rId=376 [1] git fetch g...@github.com:openbmc/linux.git dev-4.3 [2] http://openpowerfoundation.org/ [3] https://github.com/open-power/ [4] https://github.com/openbmc/openbmc Changes since v2: This re-roll is a reasonable rework of the patches in the series, which may make it difficult to compare v1 to v2. Addressed reviews/comments from: * Peter Maydell * Alexey Kardashevskiy * Joel Stanley Changes since v1: Addressed reviews/comments from: * Cédric Le Goater Andrew Jeffery (3): hw/timer: Add ASPEED timer device model hw/intc: Add (new) ASPEED VIC device model hw/arm: Add ASPEED AST2400 machine model default-configs/arm-softmmu.mak | 1 + hw/arm/Makefile.objs | 1 + hw/arm/ast2400.c | 208 ++++++++++++++++++ hw/intc/Makefile.objs | 1 + hw/intc/aspeed_vic.c | 335 +++++++++++++++++++++++++++++ hw/timer/Makefile.objs | 1 + hw/timer/aspeed_timer.c | 452 ++++++++++++++++++++++++++++++++++++++++ include/hw/intc/aspeed_vic.h | 48 +++++ include/hw/timer/aspeed_timer.h | 59 ++++++ trace-events | 16 ++ 10 files changed, 1122 insertions(+) create mode 100644 hw/arm/ast2400.c create mode 100644 hw/intc/aspeed_vic.c create mode 100644 hw/timer/aspeed_timer.c create mode 100644 include/hw/intc/aspeed_vic.h create mode 100644 include/hw/timer/aspeed_timer.h -- 2.5.0