linux/drivers/iommu
Alexey Kardashevskiy 097e3635dc iommu: moving initialization earlier
The iommu_init() initializes IOMMU internal structures and data
required for the IOMMU API as iommu_group_alloc().
It is registered as a subsys_initcall now.

One of the IOMMU users is going to be a PCI subsystem on POWER.
It discovers new IOMMU tables during the PCI scan so the logical
place to call iommu_group_alloc() is the moment when a new group
is discovered. However PCI scan is done from subsys_initcall hook
as IOMMU does so PCI hook can be (and is) called before the IOMMU one.

The patch moves IOMMU subsystem initialization one step earlier
to make sure that IOMMU is initialized before PCI scan begins.

Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Signed-off-by: Joerg Roedel <joro@8bytes.org>
2013-01-10 18:07:53 +01:00
..
Kconfig iommu/amd: Check if IOAPIC information is correct 2012-09-28 17:31:09 +02:00
Makefile ARM: OMAP2+: Move iommu2 to drivers/iommu/omap-iommu2.c 2012-11-20 10:04:41 -08:00
amd_iommu.c iommu/amd: Remove obsolete comment 2012-12-02 16:07:43 +01:00
amd_iommu_init.c iommu/amd: Work around wrong IOAPIC device-id in IVRS table 2012-10-16 14:52:51 +02:00
amd_iommu_proto.h iommu/amd: Add initialization routines for AMD interrupt remapping 2012-09-28 17:43:52 +02:00
amd_iommu_types.h iommu/amd: Properly account for virtual aliases in IOMMU groups 2012-10-24 17:30:22 +02:00
amd_iommu_v2.c IOMMU Updates for Linux v3.6-rc1 2012-07-24 16:24:11 -07:00
dmar.c iommu/dmar: Use pr_format() instead of PREFIX to tidy up pr_*() calls 2012-06-11 10:27:44 +02:00
exynos-iommu.c iommu/exynos: use list_del_init instead of list_del/INIT_LIST_HEAD 2012-09-18 12:44:02 +02:00
intel-iommu.c Drivers: iommu: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
intel_irq_remapping.c irq_remap: disable IRQ remapping if any IOAPIC lacks an IOMMU 2012-08-10 11:28:16 +02:00
iommu.c iommu: moving initialization earlier 2013-01-10 18:07:53 +01:00
iova.c iommu: Fix typo in iommu 2012-07-24 12:58:49 +02:00
irq_remapping.c iommu/irq: Use amd_iommu_irq_ops if supported 2012-09-28 17:43:53 +02:00
irq_remapping.h iommu/amd: Add initialization routines for AMD interrupt remapping 2012-09-28 17:43:52 +02:00
msm_iommu.c iommu/msm: Implement DOMAIN_ATTR_GEOMETRY attribute 2012-07-11 12:20:05 +02:00
msm_iommu_dev.c
of_iommu.c iommu: Add DMA window parser, of_get_dma_window() 2012-06-25 13:50:28 +02:00
omap-iommu-debug.c ARM: OMAP2+: Move iommu/iovmm headers to platform_data 2012-11-20 10:05:01 -08:00
omap-iommu.c Drivers: iommu: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
omap-iommu.h iommu/omap: Adapt to runtime pm 2012-12-03 18:48:23 +01:00
omap-iommu2.c iommu/omap: Adapt to runtime pm 2012-12-03 18:48:23 +01:00
omap-iopgtable.h ARM: OMAP2+: Move iommu2 to drivers/iommu/omap-iommu2.c 2012-11-20 10:04:41 -08:00
omap-iovmm.c ARM: OMAP2+: Move iommu/iovmm headers to platform_data 2012-11-20 10:05:01 -08:00
tegra-gart.c Drivers: iommu: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
tegra-smmu.c Drivers: iommu: remove __dev* attributes. 2013-01-03 15:57:14 -08:00