[PATCH v5 00/19] Generic DT bindings for PCI IOMMUs and ARM SMMU

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Hi all,

At long last I've finished the big SMMUv2 rework, so here's everything
all together for a v5. As a quick breakdown:

Patches 1-3 are the core PCI part, all acked and ready to go. No code
changes from v4.

Patch 4 is merely bugfixed from v4 for simplicity, as I've not yet
managed to take as close a look at Lorenzo's follow-on work as I'd like.

Patches 5-7 (SMMUv3) are mostly unchanged beyond a slight tweak to #5.

Patches 8-17 are the all-new SMMUv2 rework.

Patch 18 goes along with the fix already in 4.8-rc3 to help avoid 64-bit
DMA masks going wrong now that DMA ops will be enabled.

Finally, patch 19 addresses the previous problem of having to choose
between DMA ops or working MSIs. This is currently at the end as
moving it before #17 would require a further interim SMMUv2 patch, and
a 19-patch series is already quite enough...

I've pushed out a branch based on iommu/next to the usual place:

git://linux-arm.org/linux-rm iommu/generic-v5

Thanks,
Robin.
---

Mark Rutland (1):
  Docs: dt: add PCI IOMMU map bindings

Robin Murphy (18):
  of/irq: Break out msi-map lookup (again)
  iommu/of: Handle iommu-map property for PCI
  iommu/of: Introduce iommu_fwspec
  iommu/arm-smmu: Implement of_xlate() for SMMUv3
  iommu/arm-smmu: Support non-PCI devices with SMMUv3
  iommu/arm-smmu: Set PRIVCFG in stage 1 STEs
  iommu/arm-smmu: Handle stream IDs more dynamically
  iommu/arm-smmu: Consolidate stream map entry state
  iommu/arm-smmu: Keep track of S2CR state
  iommu/arm-smmu: Refactor mmu-masters handling
  iommu/arm-smmu: Streamline SMMU data lookups
  iommu/arm-smmu: Add a stream map entry iterator
  iommu/arm-smmu: Intelligent SMR allocation
  iommu/arm-smmu: Convert to iommu_fwspec
  Docs: dt: document ARM SMMU generic binding usage
  iommu/arm-smmu: Wire up generic configuration support
  iommu/arm-smmu: Set domain geometry
  iommu/dma: Add support for mapping MSIs

 .../devicetree/bindings/iommu/arm,smmu.txt         |  63 +-
 .../devicetree/bindings/pci/pci-iommu.txt          | 171 ++++
 drivers/iommu/Kconfig                              |   2 +-
 drivers/iommu/arm-smmu-v3.c                        | 347 ++++----
 drivers/iommu/arm-smmu.c                           | 952 ++++++++++-----------
 drivers/iommu/dma-iommu.c                          | 141 ++-
 drivers/iommu/of_iommu.c                           |  95 +-
 drivers/irqchip/irq-gic-v2m.c                      |   3 +
 drivers/irqchip/irq-gic-v3-its.c                   |   3 +
 drivers/of/irq.c                                   |  78 +-
 drivers/of/of_pci.c                                | 102 +++
 include/linux/dma-iommu.h                          |   9 +
 include/linux/of_iommu.h                           |  15 +
 include/linux/of_pci.h                             |  10 +
 14 files changed, 1208 insertions(+), 783 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/pci/pci-iommu.txt

-- 
2.8.1.dirty

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux