driver core: Add per device iommu param
authorJacob Pan <jacob.jun.pan@linux.intel.com>
Mon, 3 Jun 2019 14:57:46 +0000 (15:57 +0100)
committerJoerg Roedel <jroedel@suse.de>
Wed, 12 Jun 2019 08:19:06 +0000 (10:19 +0200)
commitec6bc2e9e81b8805390851d7c7c907b0ed08b646
treea3893dabed79cc07a3ff69c99a482fcb7cf2cfbe
parent57274ea25736496ee019a5c40479855b21888839
driver core: Add per device iommu param

DMA faults can be detected by IOMMU at device level. Adding a pointer
to struct device allows IOMMU subsystem to report relevant faults
back to the device driver for further handling.
For direct assigned device (or user space drivers), guest OS holds
responsibility to handle and respond per device IOMMU fault.
Therefore we need fault reporting mechanism to propagate faults beyond
IOMMU subsystem.

There are two other IOMMU data pointers under struct device today, here
we introduce iommu_param as a parent pointer such that all device IOMMU
data can be consolidated here. The idea was suggested here by Greg KH
and Joerg. The name iommu_param is chosen here since iommu_data has been
used.

Suggested-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Jacob Pan <jacob.jun.pan@linux.intel.com>
Link: https://lkml.org/lkml/2017/10/6/81
Signed-off-by: Joerg Roedel <jroedel@suse.de>
include/linux/device.h