kernel-fxtec-pro1x/drivers/iommu
Will Deacon 28d6007ba2 iommu/arm-smmu: don't bother truncating the s1 output size to VA_BITS
In order for nested translation to work correctly, we need to ensure
that the maximum output address size from stage-1 is <= the maximum
supported input address size to stage-2. The latter is currently defined
by VA_BITS, since we make use of the CPU page table functions for
allocating out tables and so the driver currently enforces this
restriction by truncating the stage-1 output size during probe.

In reality, this doesn't make a lot of sense; the guest OS is responsible
for managing the stage-1 page tables, so we actually just need to ensure
that the ID registers of the virtual SMMU interface only advertise the
supported stage-2 input size.

This patch fixes the problem by treating the stage-1 and stage-2 input
address sizes separately.

Reported-by: Tirumalesh Chalamarla <tchalamarla@cavium.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2014-09-16 19:15:18 +01:00
..
amd_iommu.c iommu/amd: Fix cleanup_domain for mass device removal 2014-08-18 13:37:56 +02:00
amd_iommu_init.c iommu/amd: Add sysfs support 2014-07-04 12:35:59 +02:00
amd_iommu_proto.h
amd_iommu_types.h Merge branches 'x86/vt-d', 'x86/amd', 'arm/omap', 'ppc/pamu', 'arm/smmu', 'arm/exynos' and 'core' into next 2014-07-31 20:29:02 +02:00
amd_iommu_v2.c iommu/amd: Fix 2 typos in comments 2014-07-30 16:07:50 +02:00
arm-smmu.c iommu/arm-smmu: don't bother truncating the s1 output size to VA_BITS 2014-09-16 19:15:18 +01:00
dmar.c iommu/vt-d: Check return value of acpi_bus_get_device() 2014-08-26 11:15:17 +02:00
exynos-iommu.c iommu: Constify struct iommu_ops 2014-07-07 10:36:59 +02:00
fsl_pamu.c Merge branches 'x86/vt-d', 'x86/amd', 'arm/omap', 'ppc/pamu', 'arm/smmu', 'arm/exynos' and 'core' into next 2014-07-31 20:29:02 +02:00
fsl_pamu.h
fsl_pamu_domain.c iommu/fsl: Fix warning resulting from adding PCI device twice 2014-09-05 16:01:46 +02:00
fsl_pamu_domain.h
intel-iommu.c iommu/vt-d: Defer domain removal if device is assigned to a driver 2014-08-18 13:37:56 +02:00
intel_irq_remapping.c iommu/vt-d: Fix race setting IRQ CPU affinity while freeing IRQ 2014-07-31 13:45:05 +02:00
iommu-sysfs.c iommu: Fix compile error in iommu-sysfs.c 2014-07-07 12:01:21 +02:00
iommu-traces.c iommu: Add iommu_error class event to iommu trace 2013-09-25 11:07:04 +02:00
iommu.c iommu/core: Make iommu_group_get_for_dev() more robust 2014-08-26 11:15:10 +02:00
iova.c iommu/vt-d: Update IOMMU state when memory hotplug happens 2014-03-04 17:51:06 +01:00
ipmmu-vmsa.c iommu: Constify struct iommu_ops 2014-07-07 10:36:59 +02:00
irq_remapping.c x86: irq_remapping: Use irq_alloc/free_hwirq() 2014-05-16 14:05:18 +02:00
irq_remapping.h
Kconfig Merge branches 'x86/vt-d', 'x86/amd', 'arm/omap', 'ppc/pamu', 'arm/smmu', 'arm/exynos' and 'core' into next 2014-07-31 20:29:02 +02:00
Makefile Merge branches 'x86/vt-d', 'x86/amd', 'arm/omap', 'ppc/pamu', 'arm/smmu', 'arm/exynos' and 'core' into next 2014-07-31 20:29:02 +02:00
msm_iommu.c iommu: Constify struct iommu_ops 2014-07-07 10:36:59 +02:00
msm_iommu.h
msm_iommu_dev.c iommu/msm: Use devm_ioremap_resource to simplify code 2014-05-30 20:20:12 +02:00
msm_iommu_hw-8xxx.h
of_iommu.c iommu: add missing include 2014-01-07 15:16:27 +01:00
omap-iommu-debug.c iommu/omap: Remove virtual memory manager 2014-07-29 12:38:07 +02:00
omap-iommu.c Merge branches 'x86/vt-d', 'x86/amd', 'arm/omap', 'ppc/pamu', 'arm/smmu', 'arm/exynos' and 'core' into next 2014-07-31 20:29:02 +02:00
omap-iommu.h iommu/omap: Remove virtual memory manager 2014-07-29 12:38:07 +02:00
omap-iommu2.c iommu/omap: Enable bus-error back on supported iommus 2014-03-04 17:02:08 +01:00
omap-iopgtable.h iommu/omap: Move to_iommu definition from omap-iopgtable.h 2014-04-16 16:30:15 +02:00
shmobile-iommu.c iommu: Constify struct iommu_ops 2014-07-07 10:36:59 +02:00
shmobile-ipmmu.c iommu/shmobile: Use devm_ioremap_resource() 2014-04-17 12:16:12 +02:00
shmobile-ipmmu.h iommu/shmobile: Turn the flush_lock mutex into a spinlock 2014-01-07 15:35:25 +01:00
tegra-gart.c iommu: Constify struct iommu_ops 2014-07-07 10:36:59 +02:00
tegra-smmu.c ARM: SoC cleanups for 3.17 2014-08-08 11:00:26 -07:00