Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1346840

[RFC v5 02/17] iommu/arm-smmu: advertise DOMAIN_ATTR_MSI_MAPPING attribute

From Eric Auger <eric.auger@linaro.org>
Newsgroups linux.kernel
Subject [RFC v5 02/17] iommu/arm-smmu: advertise DOMAIN_ATTR_MSI_MAPPING attribute
Date 2016-03-01 19:30 +0100
Message-ID <r7Xdw-4kR-11@gated-at.bofh.it> (permalink)
References <r7Xdw-4kR-7@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On ARM, MSI write transactions from device upstream to the smmu
are conveyed through the iommu. Therefore target physical addresses
must be mapped and DOMAIN_ATTR_MSI_MAPPING is set to advertise
this requirement on arm-smmu and arm-smmu-v3.

Signed-off-by: Eric Auger <eric.auger@linaro.org>
Signed-off-by: Bharat Bhushan <Bharat.Bhushan@freescale.com>

---

v4 -> v5:
- don't handle fsl_pamu_domain anymore
- handle arm-smmu-v3
---
 drivers/iommu/arm-smmu-v3.c | 2 ++
 drivers/iommu/arm-smmu.c    | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/drivers/iommu/arm-smmu-v3.c b/drivers/iommu/arm-smmu-v3.c
index 2087534..1d7b506 100644
--- a/drivers/iommu/arm-smmu-v3.c
+++ b/drivers/iommu/arm-smmu-v3.c
@@ -1895,6 +1895,8 @@ static int arm_smmu_domain_get_attr(struct iommu_domain *domain,
 	case DOMAIN_ATTR_NESTING:
 		*(int *)data = (smmu_domain->stage == ARM_SMMU_DOMAIN_NESTED);
 		return 0;
+	case DOMAIN_ATTR_MSI_MAPPING:
+		return 0;
 	default:
 		return -ENODEV;
 	}
diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
index 59ee4b8..c8b7e71 100644
--- a/drivers/iommu/arm-smmu.c
+++ b/drivers/iommu/arm-smmu.c
@@ -1409,6 +1409,8 @@ static int arm_smmu_domain_get_attr(struct iommu_domain *domain,
 	case DOMAIN_ATTR_NESTING:
 		*(int *)data = (smmu_domain->stage == ARM_SMMU_DOMAIN_NESTED);
 		return 0;
+	case DOMAIN_ATTR_MSI_MAPPING:
+		return 0;
 	default:
 		return -ENODEV;
 	}
-- 
1.9.1

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[RFC v5 00/17] KVM PCIe/MSI passthrough on ARM/ARM64 Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 07/17] dma-reserved-iommu: iommu_unmap_reserved Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 02/17] iommu/arm-smmu: advertise DOMAIN_ATTR_MSI_MAPPING attribute Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 17/17] vfio/type1: return MSI mapping requirements with VFIO_IOMMU_GET_INFO Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 16/17] iommu/arm-smmu: do not advertise IOMMU_CAP_INTR_REMAP Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 14/17] vfio: allow the user to register reserved iova range for MSI mapping Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 01/17] iommu: Add DOMAIN_ATTR_MSI_MAPPING attribute Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 10/17] msi: export msi_get_domain_info Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 09/17] irqchip/gic-v3-its: ITS advertises MSI_FLAG_IRQ_REMAPPING Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 08/17] msi: Add a new MSI_FLAG_IRQ_REMAPPING flag Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 12/17] msi: IOMMU map the doorbell address when needed Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 04/17] dma-reserved-iommu: alloc/free_reserved_iova_domain Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:30 +0100
  [RFC v5 13/17] vfio: introduce VFIO_IOVA_RESERVED vfio_dma type Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:40 +0100
  [RFC v5 11/17] msi: msi_compose wrapper Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:40 +0100
  [RFC v5 15/17] vfio/type1: also check IRQ remapping capability at msi domain Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:40 +0100
  [RFC v5 05/17] dma-reserved-iommu: reserved binding rb-tree and helpers Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:40 +0100
  [RFC v5 06/17] dma-reserved-iommu: iommu_get/put_single_reserved Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:40 +0100
  [RFC v5 03/17] iommu: introduce a reserved iova cookie Eric Auger <eric.auger@linaro.org> - 2016-03-01 19:40 +0100
    Re: [RFC v5 03/17] iommu: introduce a reserved iova cookie Julien Grall <julien.grall@arm.com> - 2016-03-03 17:30 +0100
  Re: [RFC v5 00/17] KVM PCIe/MSI passthrough on ARM/ARM64 "Jaggi, Manish" <Manish.Jaggi@caviumnetworks.com> - 2016-03-02 10:50 +0100
    Re: [RFC v5 00/17] KVM PCIe/MSI passthrough on ARM/ARM64 Eric Auger <eric.auger@linaro.org> - 2016-03-02 13:40 +0100

csiph-web