[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v5 0/2] hw/arm: add 'virt' platform
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [PATCH v5 0/2] hw/arm: add 'virt' platform |
Date: |
Fri, 9 Aug 2013 17:23:17 +0100 |
This patch series adds a 'virt' platform which uses the
kernel's mach-virt (fully device-tree driven) support
to create a simple minimalist platform intended for
use for KVM VM guests. It's based on John Rigby's
patches, but I've overhauled it a lot:
* renamed user-facing machine to just "virt"
* removed the A9 support (it can't work since the A9 has no
generic timers)
* added virtio-mmio transports instead of random set of 'soc' devices
* instead of updating io_base as we step through adding devices,
define a memory map with an array (similar to vexpress)
* folded in some minor fixes from John's aarch64-support patch
* rather than explicitly doing endian-swapping on FDT cells,
use fdt APIs that let us just pass in host-endian values
and let the fdt layer take care of the swapping
* miscellaneous minor code cleanups and style fixes
If you want to test this with TCG QEMU you'll also need the
generic-timers implementation patches I posted recently.
A branch with generic-timers plus these patches is here:
https://git.linaro.org/gitweb?p=people/pmaydell/qemu-arm.git;a=shortlog;h=refs/heads/mach-virt
(The kernel in pure mach-virt mode requires generic timers;
it can't deal with getting its clock source from an sp804
timer specified by the device tree. This might be fixed in
a future kernel, but dropping all the soc-device support
from mach-virt makes it simpler anyway.)
An obvious thing this machine does not provide is a serial
port. I would rather just use virtio-console (and we
should implement the 'emergency console/earlyprintk' bit of
the virtio spec).
Changes v4->v5:
* removed outdated TODO remarks from commit messages
* adjusted the memory map as per Anup's review comments
John Rigby (2):
hw/arm/boot: Allow boards to provide an fdt blob
hw/arm: Add 'virt' platform
hw/arm/Makefile.objs | 2 +-
hw/arm/boot.c | 32 +++--
hw/arm/virt.c | 363 ++++++++++++++++++++++++++++++++++++++++++++++++++
include/hw/arm/arm.h | 7 +
4 files changed, 391 insertions(+), 13 deletions(-)
create mode 100644 hw/arm/virt.c
--
1.7.9.5
- [Qemu-devel] [PATCH v5 0/2] hw/arm: add 'virt' platform,
Peter Maydell <=