qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH v3 00/16] uq/master: Introduce basic irqchip support


From: Jan Kiszka
Subject: [Qemu-devel] [PATCH v3 00/16] uq/master: Introduce basic irqchip support
Date: Tue, 6 Dec 2011 13:58:00 +0100

In this revision, I'm now trying the approach of backend/frontend
split-ups for the affected IRQ chips. That means we keep a single qdev
device description but fork off specific logic early during device init.
The backends support this by providing hooks that user space and KVM
models can implement differently.

The result is slightly larger and comes with the not really beautiful
ioapic.kvm_gsi_base property but should otherwise meet expectations.

Comments?

PS: Series is still against old uq/master, therefore containing patches
that took/will take different routes.

Jan Kiszka (16):
  msi: Generalize msix_supported to msi_supported
  kvm: Move kvmclock into hw/kvm folder
  apic: Stop timer on reset
  apic: Introduce backend/frontend infrastructure for KVM reuse
  apic: Open-code timer save/restore
  i8259: Introduce backend/frontend infrastructure for KVM reuse
  ioapic: Convert to memory API
  ioapic: Reject non-dword accesses to IOWIN register
  ioapic: Introduce backend/frontend infrastructure for KVM reuse
  memory: Introduce memory_region_init_reservation
  kvm: Introduce core services for in-kernel irqchip support
  kvm: x86: Establish IRQ0 override control
  kvm: x86: Add user space part for in-kernel APIC
  kvm: x86: Add user space part for in-kernel i8259
  kvm: x86: Add user space part for in-kernel IOAPIC
  kvm: Arm in-kernel irqchip support

 Makefile.objs                  |    2 +-
 Makefile.target                |    6 +-
 configure                      |    1 +
 hw/apic.c                      |  303 ++++------------------------------------
 hw/apic_common.c               |  305 ++++++++++++++++++++++++++++++++++++++++
 hw/apic_internal.h             |  121 ++++++++++++++++
 hw/i8259.c                     |  127 ++---------------
 hw/i8259_common.c              |  173 +++++++++++++++++++++++
 hw/i8259_internal.h            |   82 +++++++++++
 hw/ioapic.c                    |  160 ++++------------------
 hw/ioapic_common.c             |  138 ++++++++++++++++++
 hw/ioapic_internal.h           |  106 ++++++++++++++
 hw/kvm/apic.c                  |  129 +++++++++++++++++
 hw/{kvmclock.c => kvm/clock.c} |    4 +-
 hw/{kvmclock.h => kvm/clock.h} |    0
 hw/kvm/i8259.c                 |  126 +++++++++++++++++
 hw/kvm/ioapic.c                |  101 +++++++++++++
 hw/msi.c                       |    8 +
 hw/msi.h                       |    2 +
 hw/msix.c                      |    9 +-
 hw/msix.h                      |    2 -
 hw/pc.c                        |   19 ++-
 hw/pc.h                        |    1 +
 hw/pc_piix.c                   |   66 ++++++++-
 kvm-all.c                      |  154 ++++++++++++++++++++
 kvm-stub.c                     |    5 +
 kvm.h                          |   13 ++
 memory.c                       |   36 +++++
 memory.h                       |   16 ++
 qemu-config.c                  |    4 +
 qemu-options.hx                |    5 +-
 sysemu.h                       |    1 -
 target-i386/kvm.c              |   19 +++
 trace-events                   |    2 +-
 vl.c                           |    1 -
 35 files changed, 1694 insertions(+), 553 deletions(-)
 create mode 100644 hw/apic_common.c
 create mode 100644 hw/apic_internal.h
 create mode 100644 hw/i8259_common.c
 create mode 100644 hw/i8259_internal.h
 create mode 100644 hw/ioapic_common.c
 create mode 100644 hw/ioapic_internal.h
 create mode 100644 hw/kvm/apic.c
 rename hw/{kvmclock.c => kvm/clock.c} (98%)
 rename hw/{kvmclock.h => kvm/clock.h} (100%)
 create mode 100644 hw/kvm/i8259.c
 create mode 100644 hw/kvm/ioapic.c

-- 
1.7.3.4




reply via email to

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