diff options
author | Julien Grall <julien.grall@linaro.org> | 2014-05-13 16:50:25 +0100 |
---|---|---|
committer | Ian Campbell <ian.campbell@citrix.com> | 2014-05-14 14:45:42 +0100 |
commit | 4a3bdfe07440eb7ecd23f13379cf909f8aa4ab26 (patch) | |
tree | 9ccab07e73b3d72412691cfd256c5ee5614119fa /xen/include/asm-arm/device.h | |
parent | df6d39cbeba73ba7e1c27b9496c38169b5ec05f8 (diff) |
xen/passthrough: Introduce IOMMU ARM architecture
This patch contains the architecture to use IOMMUs on ARM. There is no
IOMMU drivers on this patch.
In this implementation, IOMMU page table will be shared with the P2M.
The code will run through the device tree and will initialize every IOMMU.
It's possible to have multiple IOMMUs on the same platform, but they must
be handled with the same driver. For now, there is no support for using
multiple iommu drivers at runtime.
Each new IOMMU drivers should contain:
static const char * const myiommu_dt_compat[] __initconst =
{
/* list of device compatible with the drivers. Will be matched with
* the "compatible" property on the device tree
*/
NULL,
};
DT_DEVICE_START(myiommu, "MY IOMMU", DEVICE_IOMMU)
.compatible = myiommu_compatible,
.init = myiommu_init,
DT_DEVICE_END
Signed-off-by: Julien Grall <julien.grall@linaro.org>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Xiantao Zhang <xiantao.zhang@intel.com>
Cc: Jan Beulich <jbeulich@suse.com>
Diffstat (limited to 'xen/include/asm-arm/device.h')
-rw-r--r-- | xen/include/asm-arm/device.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/xen/include/asm-arm/device.h b/xen/include/asm-arm/device.h index 9e47ca6362..ed043441ca 100644 --- a/xen/include/asm-arm/device.h +++ b/xen/include/asm-arm/device.h @@ -6,7 +6,8 @@ enum device_type { - DEVICE_SERIAL + DEVICE_SERIAL, + DEVICE_IOMMU, }; struct device_desc { |