Messages in this thread Patch in this message | | | From | Lu Baolu <> | Subject | [RFC PATCH 1/4] driver core: Add iommu_passthrough to struct device | Date | Wed, 1 Jan 2020 13:26:45 +0800 |
| |
Add iommu_passthrough to struct device. This enables the iommu subsystem to prepare an identity domain for the device so that the DMA IOVA will be translated to the same physical address. This field could be set in various subsystems, such as PCI, according to the device/firmware properties or kernel command parameters.
Signed-off-by: Lu Baolu <baolu.lu@linux.intel.com> --- include/linux/device.h | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/include/linux/device.h b/include/linux/device.h index 96ff76731e93..763d2d078d34 100644 --- a/include/linux/device.h +++ b/include/linux/device.h @@ -1247,6 +1247,8 @@ struct dev_links_info { * sync_state() callback. * @dma_coherent: this particular device is dma coherent, even if the * architecture supports non-coherent devices. + * @iommu_passthrough: this particular device need to by pass the IOMMU DMA + * translation. * * At the lowest level, every device in a Linux system is represented by an * instance of struct device. The device structure contains the information @@ -1347,6 +1349,7 @@ struct device { defined(CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU_ALL) bool dma_coherent:1; #endif + bool iommu_passthrough:1; }; static inline struct device *kobj_to_dev(struct kobject *kobj) -- 2.17.1
| |