From: Jan Kiszka <[email protected]> There is no IOMMU support for 32-bit arm, and it's likely to now show up there anymore. Make the iommu binding module arch-specific so that we can add calls to the arm64 variant without affecting arm.
Signed-off-by: Jan Kiszka <[email protected]> --- This will go before the PVU series, and the latter will be adjusted to work against arm64 where needed. hypervisor/arch/arm-common/Kbuild | 2 +- hypervisor/arch/arm/Kbuild | 2 +- hypervisor/arch/{arm-common => arm}/iommu.c | 8 +------- hypervisor/arch/arm64/Kbuild | 3 ++- hypervisor/arch/{arm-common => arm64}/iommu.c | 0 5 files changed, 5 insertions(+), 10 deletions(-) copy hypervisor/arch/{arm-common => arm}/iommu.c (76%) rename hypervisor/arch/{arm-common => arm64}/iommu.c (100%) diff --git a/hypervisor/arch/arm-common/Kbuild b/hypervisor/arch/arm-common/Kbuild index 6f57ef02..78b9e512 100644 --- a/hypervisor/arch/arm-common/Kbuild +++ b/hypervisor/arch/arm-common/Kbuild @@ -17,6 +17,6 @@ ccflags-$(CONFIG_JAILHOUSE_GCOV) += -fprofile-arcs -ftest-coverage objs-y += dbg-write.o lib.o psci.o control.o paging.o mmu_cell.o setup.o objs-y += irqchip.o pci.o ivshmem.o uart-pl011.o uart-xuartps.o uart-mvebu.o objs-y += uart-hscif.o uart-scifa.o uart-imx.o -objs-y += gic-v2.o gic-v3.o smccc.o iommu.o +objs-y += gic-v2.o gic-v3.o smccc.o common-objs-y = $(addprefix ../arm-common/,$(objs-y)) diff --git a/hypervisor/arch/arm/Kbuild b/hypervisor/arch/arm/Kbuild index e1bec1b7..2afc09c0 100644 --- a/hypervisor/arch/arm/Kbuild +++ b/hypervisor/arch/arm/Kbuild @@ -19,7 +19,7 @@ always := lib.a lib-y := $(common-objs-y) lib-y += entry.o setup.o control.o traps.o mmio.o lib.o -lib-y += mmu_hyp.o caches.o +lib-y += mmu_hyp.o caches.o iommu.o # in here we switch of the MMU and stuff, cant profile such code # NOTE diff --git a/hypervisor/arch/arm-common/iommu.c b/hypervisor/arch/arm/iommu.c similarity index 76% copy from hypervisor/arch/arm-common/iommu.c copy to hypervisor/arch/arm/iommu.c index b3100d03..2c02c812 100644 --- a/hypervisor/arch/arm-common/iommu.c +++ b/hypervisor/arch/arm/iommu.c @@ -10,17 +10,11 @@ * the COPYING file in the top-level directory. */ -#include <jailhouse/control.h> #include <asm/iommu.h> unsigned int iommu_count_units(void) { - unsigned int units = 0; - - while (units < JAILHOUSE_MAX_IOMMU_UNITS && - system_config->platform_info.arm.iommu_units[units].base) - units++; - return units; + return 0; } int iommu_map_memory_region(struct cell *cell, diff --git a/hypervisor/arch/arm64/Kbuild b/hypervisor/arch/arm64/Kbuild index 323b78b6..aa018ae7 100644 --- a/hypervisor/arch/arm64/Kbuild +++ b/hypervisor/arch/arm64/Kbuild @@ -20,4 +20,5 @@ always := lib.a # irqchip (common-objs-y), <generic units> lib-y := $(common-objs-y) -lib-y += entry.o setup.o control.o mmio.o paging.o caches.o traps.o smmu-v3.o +lib-y += entry.o setup.o control.o mmio.o paging.o caches.o traps.o +lib-y += iommu.o smmu-v3.o diff --git a/hypervisor/arch/arm-common/iommu.c b/hypervisor/arch/arm64/iommu.c similarity index 100% rename from hypervisor/arch/arm-common/iommu.c rename to hypervisor/arch/arm64/iommu.c -- 2.16.4 -- Siemens AG, Corporate Technology, CT RDA IOT SES-DE Corporate Competence Center Embedded Linux -- You received this message because you are subscribed to the Google Groups "Jailhouse" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/jailhouse-dev/075622da-c587-1c36-4476-cd946890ea99%40siemens.com.
