IOMMU Updates for Linux v4.12

This includes:

	* Some code optimizations for the Intel VT-d driver

	* Code to switch off a previously enabled Intel IOMMU

	* Support for 'struct iommu_device' for OMAP, Rockchip and
	  Mediatek IOMMUs

	* Some header optimizations for IOMMU core code headers and a
	  few fixes that became necessary in other parts of the kernel
	  because of that

	* ACPI/IORT updates and fixes

	* Some Exynos IOMMU optimizations

	* Code updates for the IOMMU dma-api code to bring it closer to
	  use per-cpu iova caches

	* New command-line option to set default domain type allocated
	  by the iommu core code

	* Another command line option to allow the Intel IOMMU switched
	  off in a tboot environment

	* ARM/SMMU: TLB sync optimisations for SMMUv2, Support for using
	  an IDENTITY domain in conjunction with DMA ops, Support for
	  SMR masking, Support for 16-bit ASIDs (was previously broken)

	* Various other small fixes and improvements
Merge branches 'arm/exynos', 'arm/omap', 'arm/rockchip', 'arm/mediatek', 'arm/smmu', 'arm/core', 'x86/vt-d', 'x86/amd' and 'core' into next