GIC-500 implementation, software + KVM
Get series with b4
b4 am [email protected]Versions newest first
- v4 Latest9 patches 18 repliesIn review
Patches in v4 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/9 | Implement GIC-500 base classhw/ hw/ hw/ +2 more | +536 | 0 replies | |
| 2/9 | Implement GIC-500hw/ hw/ | +2087 | 4 replies | |
| 3/9 | GICv3 supporttarget-arm/ target-arm/ | +117 | 0 replies | |
| 4/9 | Add virt-v3 machine that uses GIC-500hw/ include/ include/ +1 more | +126 | 10 replies | |
| 5/9 | Extract some reusable vGIC codehw/ hw/ | +82 | 0 replies | |
| 6/9 | Set kernel_irqchip_type for the rest of ARM boards which use GIChw/ hw/ hw/ | +3 | 0 replies | |
| 7/9 | Make use of kernel_irqchip_type in kvm_arch_irqchip_create()include/ kvm-all.c stubs/ +1 more | +10 | 0 replies | |
| 8/9 | Initial implementation of vGICv3hw/ hw/ | +204 | 0 replies | |
| 9/9 | Enable KVM acceleration for GICv3hw/ | +2 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v4 yet.
Cover letter [Qemu-devel] [PATCH v4 0/9] GIC-500 implementation, software + KVM
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
Signature · 1 line
1.9.5.msysgit.0