From mboxrd@z Thu Jan 1 00:00:00 1970
Received: from eggs.gnu.org ([2001:4830:134:3::10]:36658)
by lists.gnu.org with esmtp (Exim 4.71)
(envelope-from
) id 1ZAfFp-0003k7-Lm
for qemu-devel@nongnu.org; Thu, 02 Jul 2015 10:14:23 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
(envelope-from ) id 1ZAfFk-0003OS-EM
for qemu-devel@nongnu.org; Thu, 02 Jul 2015 10:14:17 -0400
Received: from mailout1.w1.samsung.com ([210.118.77.11]:32914)
by eggs.gnu.org with esmtp (Exim 4.71)
(envelope-from ) id 1ZAfFk-0003MH-8i
for qemu-devel@nongnu.org; Thu, 02 Jul 2015 10:14:12 -0400
Received: from eucpsbgm2.samsung.com (unknown [203.254.199.245])
by mailout1.w1.samsung.com
(Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5
2014)) with ESMTP id <0NQV00HAD67KC7B0@mailout1.w1.samsung.com> for
qemu-devel@nongnu.org; Thu, 02 Jul 2015 15:14:08 +0100 (BST)
From: Pavel Fedin
Date: Thu, 02 Jul 2015 17:13:58 +0300
Message-id:
Subject: [Qemu-devel] [PATCH v4 0/9] GIC-500 implementation, software + KVM
List-Id:
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
To: qemu-devel@nongnu.org
Cc: Peter Maydell , Shlomo Pongratz , Shlomo Pongratz , Christoffer Dall , Eric Auger
This is a complete GICv3 implementation, both software emulation and KVM
acceleration are supported.
This series is a consolidated and updated patch set, based on:
- GIC-500 implementation:
http://lists.nongnu.org/archive/html/qemu-devel/2015-06/msg01512.html
- vGICv3 implementation:
https://lists.gnu.org/archive/html/qemu-devel/2015-05/msg04496.html
I decided to repost because qemu development has progressed and it became
difficult to apply those series to current master.
Changes from previous versions:
- Removed RFC prefix
- Base class separated from the rest, as was requested in RFC v2 review
- Fixed small number of broken comments / code formatting issues, according
to the same review
- Removed #if 0 in virt.c
- vGICv3 patch set restructured and more clearly separated into portions,
according to old Eric's review
- Removed duplication of low-level vGICv3 code. Common helper routines are
used instead.
- Put informative commit messages
Pavel Fedin (6):
Add virt-v3 machine that uses GIC-500
Extract some reusable vGIC code
Set kernel_irqchip_type for the rest of ARM boards which use GIC
Make use of kernel_irqchip_type in kvm_arch_irqchip_create()
Initial implementation of vGICv3
Enable KVM acceleration for GICv3
Shlomo Pongratz (3):
Implement GIC-500 base class
Implement GIC-500
GICv3 support
hw/arm/exynos4_boards.c | 1 +
hw/arm/realview.c | 1 +
hw/arm/vexpress.c | 1 +
hw/arm/virt.c | 141 ++-
hw/intc/Makefile.objs | 3 +
hw/intc/arm_gic_kvm.c | 84 +-
hw/intc/arm_gicv3.c | 2086 ++++++++++++++++++++++++++++++++++++
hw/intc/arm_gicv3_common.c | 216 ++++
hw/intc/arm_gicv3_kvm.c | 203 ++++
hw/intc/gicv3_internal.h | 159 +++
hw/intc/vgic_common.h | 43 +
include/hw/arm/fdt.h | 2 +-
include/hw/arm/virt.h | 6 +-
include/hw/boards.h | 1 +
include/hw/intc/arm_gicv3.h | 44 +
include/hw/intc/arm_gicv3_common.h | 116 ++
include/sysemu/kvm.h | 3 +-
kvm-all.c | 2 +-
stubs/kvm.c | 2 +-
target-arm/cpu.h | 12 +
target-arm/cpu64.c | 105 ++
target-arm/kvm.c | 8 +-
22 files changed, 3164 insertions(+), 75 deletions(-)
create mode 100644 hw/intc/arm_gicv3.c
create mode 100644 hw/intc/arm_gicv3_common.c
create mode 100644 hw/intc/arm_gicv3_kvm.c
create mode 100644 hw/intc/gicv3_internal.h
create mode 100644 hw/intc/vgic_common.h
create mode 100644 include/hw/intc/arm_gicv3.h
create mode 100644 include/hw/intc/arm_gicv3_common.h
--
1.9.5.msysgit.0