qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 00/16] uq/master: Introduce basic irqchip support
@ 2011-12-06 12:58 Jan Kiszka
  2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 01/16] msi: Generalize msix_supported to msi_supported Jan Kiszka
                   ` (16 more replies)
  0 siblings, 17 replies; 19+ messages in thread
From: Jan Kiszka @ 2011-12-06 12:58 UTC (permalink / raw)
  To: Avi Kivity, Marcelo Tosatti
  Cc: Blue Swirl, Anthony Liguori, qemu-devel, kvm, Michael S. Tsirkin

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

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

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

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-12-06 12:58 [Qemu-devel] [PATCH v3 00/16] uq/master: Introduce basic irqchip support Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 01/16] msi: Generalize msix_supported to msi_supported Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 02/16] kvm: Move kvmclock into hw/kvm folder Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 03/16] apic: Stop timer on reset Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 04/16] apic: Introduce backend/frontend infrastructure for KVM reuse Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 05/16] apic: Open-code timer save/restore Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 06/16] i8259: Introduce backend/frontend infrastructure for KVM reuse Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 07/16] ioapic: Convert to memory API Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 08/16] ioapic: Reject non-dword accesses to IOWIN register Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 09/16] ioapic: Introduce backend/frontend infrastructure for KVM reuse Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 10/16] memory: Introduce memory_region_init_reservation Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 11/16] kvm: Introduce core services for in-kernel irqchip support Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 12/16] kvm: x86: Establish IRQ0 override control Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 13/16] kvm: x86: Add user space part for in-kernel APIC Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 14/16] kvm: x86: Add user space part for in-kernel i8259 Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 15/16] kvm: x86: Add user space part for in-kernel IOAPIC Jan Kiszka
2011-12-06 12:58 ` [Qemu-devel] [PATCH v3 16/16] kvm: Arm in-kernel irqchip support Jan Kiszka
2011-12-06 13:55 ` [Qemu-devel] [PATCH v3 00/16] uq/master: Introduce basic " Avi Kivity
2011-12-06 14:21   ` Jan Kiszka

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).