On Mon, Nov 12, 2012 at 6:57 AM, Will Deacon <will.dea...@arm.com> wrote: > Hello, > > This patch series adds support for ARMv7 processors (Cortex-A15) to kvm > tool. The majority of the series consists of small changes in > preparation for ARM support, which is added by the final patch. I can > try to split this up further, but given that there is no current support > for ARM, the sub-patches wouldn't be especially meaningful.
Very cool, looking forward to trying it out! Would have been very nice if you had sent it to kvm...@lists.cs.columbia.edu as well. > > To boot a guest, you will need: > > - A Cortex-A15 platform with a kvm-capable bootloader > - The latest kvm-arm patches: > git://github.com/virtualopensystems/linux-kvm-arm.git kvm-arm-master > - A guest kernel configured for our virtual target: > git://git.kernel.org/pub/scm/linux/kernel/git/will/kvmtool.git > kvm/mach-virt newest as in v4 from this weekend or before the weekend? There were some (hopefully final) API breakage in there. > > I'm also working on an ARMv8 (AArch64) port which fits neatly into the > code presented here. > > All feedback welcome, > > Will > > > Will Deacon (16): > kvm tools: include arch uapi/asm directories in include path > kvm tools: only enable LTO if supported by GCC > kvm tools: avoid linking dynamically against libbfd > kvm tools: specify compiler by name when overriding make default > kvm tools: don't bother including linux/compiler.h > kvm tools: don't pass -Wcast-align to the compiler > kvm tools: die if init_list__init returns failure > kvm tools: add generic device registration mechanism > kvm tools: make _FDT macro usable by other architectures > kvm tools: virtio-mmio: use subsys_id instead of pci device ID > kvm tools: virtio: add dummy set_size_vq implementations > kvm tools: allow arch to specify default virtio transport > kvm tools: keep track of registered memory banks in struct kvm > kvm tools: teach guest_flat_to_host about memory banks starting above > 0 > kvm tools: provide a mechanism for translating host to guest > addresses > kvm tools: add support for ARMv7 processors > > tools/kvm/Makefile | 38 +++- > tools/kvm/arm/aarch32/cortex-a15.c | 98 ++++++++++ > tools/kvm/arm/aarch32/include/kvm/barrier.h | 10 + > tools/kvm/arm/aarch32/include/kvm/kvm-arch.h | 28 +++ > tools/kvm/arm/aarch32/kvm-cpu.c | 111 +++++++++++ > tools/kvm/arm/aarch32/smp-pen.S | 14 ++ > tools/kvm/arm/fdt.c | 269 > ++++++++++++++++++++++++++ > tools/kvm/arm/gic.c | 86 ++++++++ > tools/kvm/arm/include/arm-common/gic.h | 29 +++ > tools/kvm/arm/include/arm-common/kvm-arch.h | 31 +++ > tools/kvm/arm/include/arm-common/smp.h | 7 + > tools/kvm/arm/include/kvm/kvm-cpu-arch.h | 47 +++++ > tools/kvm/arm/ioport.c | 5 + > tools/kvm/arm/irq.c | 25 +++ > tools/kvm/arm/kvm-cpu.c | 112 +++++++++++ > tools/kvm/arm/kvm.c | 69 +++++++ > tools/kvm/arm/smp.c | 13 ++ > tools/kvm/builtin-run.c | 3 +- > tools/kvm/devices.c | 24 +++ > tools/kvm/hw/pci-shmem.c | 8 +- > tools/kvm/hw/vesa.c | 8 +- > tools/kvm/include/kvm/devices.h | 21 ++ > tools/kvm/include/kvm/fdt.h | 26 +++ > tools/kvm/include/kvm/kvm.h | 16 +- > tools/kvm/include/kvm/pci.h | 2 - > tools/kvm/include/kvm/virtio-mmio.h | 1 + > tools/kvm/include/kvm/virtio-pci.h | 2 + > tools/kvm/include/linux/stddef.h | 6 - > tools/kvm/kvm.c | 55 +++++- > tools/kvm/pci.c | 40 ++--- > tools/kvm/powerpc/include/kvm/kvm-arch.h | 13 +- > tools/kvm/powerpc/irq.c | 3 +- > tools/kvm/powerpc/kvm.c | 2 +- > tools/kvm/powerpc/spapr_pci.c | 4 +- > tools/kvm/virtio/9p.c | 10 +- > tools/kvm/virtio/balloon.c | 3 +- > tools/kvm/virtio/blk.c | 3 +- > tools/kvm/virtio/console.c | 10 +- > tools/kvm/virtio/mmio.c | 9 +- > tools/kvm/virtio/pci.c | 7 +- > tools/kvm/virtio/rng.c | 10 +- > tools/kvm/virtio/scsi.c | 3 +- > tools/kvm/x86/include/kvm/kvm-arch.h | 11 +- > tools/kvm/x86/kvm.c | 7 + > 44 files changed, 1214 insertions(+), 85 deletions(-) > create mode 100644 tools/kvm/arm/aarch32/cortex-a15.c > create mode 100644 tools/kvm/arm/aarch32/include/kvm/barrier.h > create mode 100644 tools/kvm/arm/aarch32/include/kvm/kvm-arch.h > create mode 100644 tools/kvm/arm/aarch32/kvm-cpu.c > create mode 100644 tools/kvm/arm/aarch32/smp-pen.S > create mode 100644 tools/kvm/arm/fdt.c > create mode 100644 tools/kvm/arm/gic.c > create mode 100644 tools/kvm/arm/include/arm-common/gic.h > create mode 100644 tools/kvm/arm/include/arm-common/kvm-arch.h > create mode 100644 tools/kvm/arm/include/arm-common/smp.h > create mode 100644 tools/kvm/arm/include/kvm/kvm-cpu-arch.h > create mode 100644 tools/kvm/arm/ioport.c > create mode 100644 tools/kvm/arm/irq.c > create mode 100644 tools/kvm/arm/kvm-cpu.c > create mode 100644 tools/kvm/arm/kvm.c > create mode 100644 tools/kvm/arm/smp.c > create mode 100644 tools/kvm/devices.c > create mode 100644 tools/kvm/include/kvm/devices.h > create mode 100644 tools/kvm/include/kvm/fdt.h > > -- > 1.7.4.1 > -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html