[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-ppc] [PATCH 00/19] OpenPIC refactoring and MSI support v2

From: Alexander Graf
Subject: [Qemu-ppc] [PATCH 00/19] OpenPIC refactoring and MSI support v2
Date: Wed, 12 Dec 2012 15:12:00 +0100

The OpenPIC implemtation has been a sad piece of code in the QEMU tree
for a long time now. It's ugly, doesn't stick to the coding style and
misses out on a few of the recent infrastructure improvements.

This patch set is a first stab at moving the OpenPIC further towards
maintainable code. It cleans up the OpenPIC/MPIC code duplication that
was in there (MPIC is just an implementation of the OpenPIC spec, so the
naming didn't make sense). It doesn't fully clean up everything yet.

While at it, this patch set also adds support for MSI(-X) to the MPC8544
variant of the OpenPIC. I have successfully tested MSI and MSI-X with
ahci and virtio-net.

Please beware that savevm support is broken after this patch set. I
have quite big doubts that saving a ppc vm works at all right now though,
so let's just leave it broken for now and replace it with a new version
that is going to be savevm based later.

v1 -> v2:

  - don't overlap internal vectors on src irqs
  - rename mpc8544 to fsl_mpic_20


Alexander Graf (19):
  openpic: Remove unused code
  mpic: Unify numbering scheme
  openpic: update to proper memory api
  openpic: combine mpic and openpic src handlers
  openpic: Convert subregions to memory api
  openpic: combine mpic and openpic irq raise functions
  openpic: merge mpic and openpic timer handling
  openpic: combine openpic and mpic reset functions
  openpic: unify memory api subregions
  openpic: remove unused type variable
  openpic: convert simple reg operations to builtin bitops
  openpic: rename openpic_t to OpenPICState
  openpic: remove irq_out
  openpic: convert to qdev
  openpic: make brr1 model specific
  openpic: add Shared MSI support
  PPC: e500: Add MSI support
  PPC: e500: Declare pci bridge as bridge
  MSI-X: Fix endianness

 hw/msix.c         |    6 +-
 hw/openpic.c      | 1372 ++++++++++++++++++-----------------------------------
 hw/openpic.h      |    7 +-
 hw/ppc/e500.c     |   51 ++-
 hw/ppc_newworld.c |   25 +-
 hw/ppce500_pci.c  |    6 +
 6 files changed, 546 insertions(+), 921 deletions(-)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]