kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V2 0/6] Add initial SPAPR PPC64 architecture support
@ 2011-12-13  7:10 Matt Evans
  2011-12-13  7:10 ` [PATCH V2 1/6] kvm tools: Generate SPAPR PPC64 guest device tree Matt Evans
                   ` (5 more replies)
  0 siblings, 6 replies; 12+ messages in thread
From: Matt Evans @ 2011-12-13  7:10 UTC (permalink / raw)
  To: kvm, kvm-ppc; +Cc: penberg, asias.hejun, levinsasha928, gorcunov, david, aik

This series adds support for a PPC64 platform, SPAPR, on top of the previous
more general PPC64 CPU support.  This platform is paravirtualised, with most
of the MMU hypercalls being dealt with in the kernel.  Userland needs to
describe the environment to the machine with a device tree, cope with some
hypercalls (and RTAS calls) for hvconsole, PCI config and IRQs, and emulate
the interrupt controller (XICS) and PCI Host Bridge of the SPAPR-esque
machine.

With this series, normal pSeries kernels boot fine (including RH kernels that
include virtio support out of the box).  There is no support for PPC32 or
'bare metal' PPC64 guests as yet.

Processor state is set up as a guest kernel would expect (both primary and
secondaries), and SMP is fully supported.

The kernels are loaded as flat binaries and booted directly.  The intention
is to later support loading firmware such as SLOF.

Some of the code within is borrowed/based upon code in QEMU, particularly
the XICS emulation, device tree construction and PCI setup.


Matt Evans (6):
  kvm tools: Generate SPAPR PPC64 guest device tree
  kvm tools: Add SPAPR PPC64 hcall & rtascall structure
  kvm tools: Add SPAPR PPC64 HV console
  kvm tools: Add PPC64 XICS interrupt controller support
  kvm tools: Add PPC64 PCI Host Bridge
  kvm tools: Add PPC64 kvm_cpu__emulate_io()

 tools/kvm/Makefile                           |    8 +-
 tools/kvm/powerpc/include/kvm/kvm-arch.h     |   14 +
 tools/kvm/powerpc/include/kvm/kvm-cpu-arch.h |   12 +-
 tools/kvm/powerpc/irq.c                      |   35 ++-
 tools/kvm/powerpc/kvm-cpu.c                  |   46 +++
 tools/kvm/powerpc/kvm.c                      |  255 +++++++++++++-
 tools/kvm/powerpc/spapr.h                    |  111 ++++++
 tools/kvm/powerpc/spapr_hcall.c              |  132 +++++++
 tools/kvm/powerpc/spapr_hvcons.c             |  102 +++++
 tools/kvm/powerpc/spapr_hvcons.h             |   19 +
 tools/kvm/powerpc/spapr_pci.c                |  423 +++++++++++++++++++++
 tools/kvm/powerpc/spapr_pci.h                |   38 ++
 tools/kvm/powerpc/spapr_rtas.c               |  230 ++++++++++++
 tools/kvm/powerpc/xics.c                     |  514 ++++++++++++++++++++++++++
 tools/kvm/powerpc/xics.h                     |   23 ++
 15 files changed, 1952 insertions(+), 10 deletions(-)
 create mode 100644 tools/kvm/powerpc/spapr.h
 create mode 100644 tools/kvm/powerpc/spapr_hcall.c
 create mode 100644 tools/kvm/powerpc/spapr_hvcons.c
 create mode 100644 tools/kvm/powerpc/spapr_hvcons.h
 create mode 100644 tools/kvm/powerpc/spapr_pci.c
 create mode 100644 tools/kvm/powerpc/spapr_pci.h
 create mode 100644 tools/kvm/powerpc/spapr_rtas.c
 create mode 100644 tools/kvm/powerpc/xics.c
 create mode 100644 tools/kvm/powerpc/xics.h

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2011-12-21  0:42 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-12-13  7:10 [PATCH V2 0/6] Add initial SPAPR PPC64 architecture support Matt Evans
2011-12-13  7:10 ` [PATCH V2 1/6] kvm tools: Generate SPAPR PPC64 guest device tree Matt Evans
2011-12-14  2:25   ` David Gibson
2011-12-13  7:10 ` [PATCH V2 2/6] kvm tools: Add SPAPR PPC64 hcall & rtascall structure Matt Evans
2011-12-14  2:32   ` David Gibson
2011-12-13  7:10 ` [PATCH V2 3/6] kvm tools: Add SPAPR PPC64 HV console Matt Evans
2011-12-13  7:10 ` [PATCH V2 4/6] kvm tools: Add PPC64 XICS interrupt controller support Matt Evans
2011-12-14  2:35   ` David Gibson
2011-12-20  1:16     ` Matt Evans
2011-12-21  0:39       ` David Gibson
2011-12-13  7:10 ` [PATCH V2 5/6] kvm tools: Add PPC64 PCI Host Bridge Matt Evans
2011-12-13  7:10 ` [PATCH V2 6/6] kvm tools: Add PPC64 kvm_cpu__emulate_io() Matt Evans

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).