Hi,
This is a fairly brief series to add support for the DARTs present in the
M1 Pro/Max. They have two differences that make them incompatible with
those in the M1:
- the physical addresses are shifted left by 4 bits and and have 2 more
bits inside the PTE entries
- the subpage protection feature is now mandatory. For Linux we can
just configure it to always allow access to the entire page.
Note that this needs a fix to the core pagetable code. Hector already
sent a first version separately to the mailing list since the problem
is (at least in theory) also present on other SoCs using the LPAE format
with a large physical address space [1].
Sven
[1]
https://lore.kernel.org/linux-iommu/[email protected]/T/#t
Sven Peter (4):
dt-bindings: iommu: dart: add t6000 compatible
iommu/io-pgtable: Add DART subpage protection support
iommu/io-pgtable: Add DART PTE support for t6000
iommu: dart: Support t6000 variant
.../devicetree/bindings/iommu/apple,dart.yaml | 4 +-
drivers/iommu/apple-dart.c | 19 ++++++++-
drivers/iommu/io-pgtable-arm.c | 40 ++++++++++++++++++-
include/linux/io-pgtable.h | 2 +
4 files changed, 61 insertions(+), 4 deletions(-)
--
2.25.1
_______________________________________________
iommu mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/iommu