This patchset adds support for (a rather limited version of) the Cortex-A15 CPU and the Versatile Express A15 daughterboard. The resulting model is capable of booting a Linux kernel which has been configured for Cortex-A15 with the Versatile Express "extended memory map" and without support for LPAE. The series includes three patches at the start which have been on the list already but which this series depends on: * arm: make the number of GIC interrupts configurable * vexpress, realview: Add (dummy) L2 cache controller * hw/arm_boot.c: Make SMP boards specify address to poll in bootup loop The first two of these are already queued in my arm-devs.next; the arm_boot.c patch is in the Exynos4 patchset but is one of the reviewed and good-to-go ones. [Evgeny: you should keep the arm_boot.c patch in your patchset until/unless it makes it into master.] Basically I've included these for convenience of anybody who wants to test this patchset; I'm assuming this set will need a v2 and that in the meantime the dependencies will make their way into master. But I just got this all working this week so I thought I'd put the whole thing up for review before I went home for the week :-) PS for the folk on android-virt: I haven't yet tested these patches with KVM, only with TCG, but there is no inherent reason for them not to work... Evgeny Voevodin (1): hw/arm_boot.c: Make SMP boards specify address to poll in bootup loop Mark Langsdorf (1): arm: make the number of GIC interrupts configurable Peter Maydell (10): vexpress, realview: Add (dummy) L2 cache controller hw/vexpress.c: Make motherboard peripheral memory map table-driven hw/vexpress.c: Move secondary CPU boot code to SRAM hw/vexpress.c: Factor out daughterboard-specific initialization hw/vexpress.c: Instantiate the motherboard CLCD hw/a15mpcore.c: Add Cortex-A15 private peripheral model Add dummy implementation of generic timer cp15 registers Add Cortex-A15 CPU definition arm_boot: Pass base address of GIC CPU interface, not whole GIC hw/vexpress.c: Add vexpress-a15 machine Makefile.target | 2 +- hw/a15mpcore.c | 93 ++++++++++++ hw/a9mpcore.c | 13 ++- hw/arm-misc.h | 3 +- hw/arm11mpcore.c | 17 ++- hw/arm_boot.c | 18 ++- hw/arm_gic.c | 68 +++++---- hw/armv7m_nvic.c | 31 +++- hw/realview.c | 12 +- hw/realview_gic.c | 7 +- hw/vexpress.c | 407 +++++++++++++++++++++++++++++++++++++++++---------- target-arm/cpu.h | 2 + target-arm/helper.c | 68 ++++++++- 13 files changed, 594 insertions(+), 147 deletions(-) create mode 100644 hw/a15mpcore.c