[PATCH 00/21] Various cleanups and simplifications

8 views
Skip to first unread message

Jan Kiszka

unread,
Sep 29, 2016, 4:22:54 PM9/29/16
to jailho...@googlegroups.com
These are mostly cleanups for ARM, but one is actually beneficial for
all archs. Key changes:

- migration of ARM's platform.h into the system config
- paging_map/unmap_device to encapsulate virtual address reservation and
physical device mapping to the hypervisor
- include cleanups
- ensure that GICv3 is build-tested via CI
- renaming of CONFIG_ARM_GIC to CONFIG_ARM_GIC_V2
(Note: update your config.h!)

Jan

Jan Kiszka (21):
arm: Avoid assignment in if clause
arm: Assume irqchip init function is available
arm: Rework no-GICD-case in irqchip_init
arm: Rename CONFIG_ARM_GIC to CONFIG_ARM_GIC_V2
ci: Build vexpress with GICv3
arm: Rename gic_common.h to gic.h
arm: Include gic_v2/3.h from gic.h
arm: Move SYSREGS_BASE into smp-vexpress module
arm: Move GIC size constants to gic_v2/3.h
arm: Remove gic*_size variables
configs: Enable evaluation of config.h
arm, configs: Move content of platform.h into system configuration
arm: Move gicd_base declarations into header
core: Introduce paging_map/unmap_device
core: Use paging_map/unmap_device in PCI layer
x86: Use paging_map/unmap_device for AMD IOMMU, APIC and IOAPIC
arm: Use paging_map/unmap_device for GIC and vexpress sysregs
arm: Remove unused arch_map/unmap_device
arm: Clean up includes of asm/traps.h
arm: Get rid of asm/head.h
arm: Remove some unneeded includes

ci/jailhouse-config-banana-pi.h | 2 +-
ci/jailhouse-config-vexpress.h | 2 +-
configs/Makefile | 8 +-
configs/apic-demo.c | 2 +-
configs/bananapi-gic-demo.c | 2 +-
configs/bananapi-uart-demo.c | 2 +-
configs/bananapi.c | 9 ++-
configs/e1000-demo.c | 2 +-
configs/f2a88xm-hd3.c | 2 +-
configs/h87i.c | 2 +-
configs/imb-a180.c | 2 +-
configs/ioapic-demo.c | 2 +-
configs/ivshmem-demo.c | 2 +-
configs/jetson-tk1-demo.c | 2 +-
configs/jetson-tk1.c | 9 ++-
configs/linux-x86-demo.c | 2 +-
configs/pci-demo.c | 2 +-
configs/qemu-vm.c | 2 +-
configs/smp-demo.c | 2 +-
configs/tiny-demo.c | 2 +-
configs/vexpress-gic-demo.c | 2 +-
configs/vexpress-linux-demo.c | 2 +-
configs/vexpress-uart-demo.c | 2 +-
configs/vexpress.c | 14 +++-
hypervisor/arch/arm/Makefile | 2 +-
hypervisor/arch/arm/caches.S | 1 -
hypervisor/arch/arm/control.c | 6 +-
hypervisor/arch/arm/dbg-write.c | 1 -
hypervisor/arch/arm/entry.S | 1 -
hypervisor/arch/arm/exception.S | 3 +-
hypervisor/arch/arm/gic-common.c | 6 +-
hypervisor/arch/arm/gic-v2.c | 56 ++++++--------
hypervisor/arch/arm/gic-v3.c | 32 ++++----
.../arch/arm/include/asm/{gic_common.h => gic.h} | 7 ++
hypervisor/arch/arm/include/asm/gic_v2.h | 4 +
hypervisor/arch/arm/include/asm/gic_v3.h | 3 +
hypervisor/arch/arm/include/asm/head.h | 24 ------
hypervisor/arch/arm/include/asm/platform.h | 90 ----------------------
hypervisor/arch/arm/include/asm/setup.h | 5 --
hypervisor/arch/arm/include/asm/sysregs.h | 1 +
hypervisor/arch/arm/include/asm/traps.h | 3 -
hypervisor/arch/arm/irqchip.c | 35 ++++-----
hypervisor/arch/arm/lib.c | 3 -
hypervisor/arch/arm/mmio.c | 2 +
hypervisor/arch/arm/mmu_hyp.c | 14 ----
hypervisor/arch/arm/setup.c | 2 -
hypervisor/arch/arm/smp-vexpress.c | 15 ++--
hypervisor/arch/arm/traps.c | 3 +-
hypervisor/arch/x86/amd_iommu.c | 7 +-
hypervisor/arch/x86/apic.c | 11 +--
hypervisor/arch/x86/ioapic.c | 13 +---
hypervisor/include/jailhouse/cell-config.h | 9 +++
hypervisor/include/jailhouse/paging.h | 3 +
hypervisor/paging.c | 42 ++++++++++
hypervisor/pci.c | 41 +++-------
inmates/lib/arm/Makefile | 2 +-
tools/root-cell-config.c.tmpl | 2 +-
57 files changed, 211 insertions(+), 318 deletions(-)
rename hypervisor/arch/arm/include/asm/{gic_common.h => gic.h} (92%)
delete mode 100644 hypervisor/arch/arm/include/asm/head.h
delete mode 100644 hypervisor/arch/arm/include/asm/platform.h

--
2.1.4

Jan Kiszka

unread,
Oct 1, 2016, 2:59:11 AM10/1/16
to jailho...@googlegroups.com
From: Jan Kiszka <jan.k...@siemens.com>

percpu.h has no direct need for it.

Signed-off-by: Jan Kiszka <jan.k...@siemens.com>
---
hypervisor/arch/arm/control.c | 1 +
hypervisor/arch/arm/include/asm/percpu.h | 1 -
2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/hypervisor/arch/arm/control.c b/hypervisor/arch/arm/control.c
index e9ba82d..4c0894a 100644
--- a/hypervisor/arch/arm/control.c
+++ b/hypervisor/arch/arm/control.c
@@ -17,6 +17,7 @@
#include <jailhouse/string.h>
#include <asm/control.h>
#include <asm/irqchip.h>
+#include <asm/psci.h>
#include <asm/smp.h>
#include <asm/sysregs.h>

diff --git a/hypervisor/arch/arm/include/asm/percpu.h b/hypervisor/arch/arm/include/asm/percpu.h
index 97f902e..10646bc 100644
--- a/hypervisor/arch/arm/include/asm/percpu.h
+++ b/hypervisor/arch/arm/include/asm/percpu.h
@@ -22,7 +22,6 @@
#include <jailhouse/cell.h>
#include <asm/irqchip.h>
#include <asm/processor.h>
-#include <asm/psci.h>
#include <asm/spinlock.h>
#include <asm/sysregs.h>

--
2.1.4
Reply all
Reply to author
Forward
0 new messages