Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/iommu/apple,sart.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Apple SART DMA address filter
0008 
0009 maintainers:
0010   - Sven Peter <sven@svenpeter.dev>
0011 
0012 description:
0013   Apple SART is a simple address filter for DMA transactions. Regions of
0014   physical memory must be added to the SART's allow list before any
0015   DMA can target these. Unlike a proper IOMMU no remapping can be done and
0016   special support in the consumer driver is required since not all DMA
0017   transactions of a single device are subject to SART filtering.
0018 
0019   SART1 has first been used since at least the A11 (iPhone 8 and iPhone X)
0020   and allows 36 bit of physical address space and filter entries with sizes
0021   up to 24 bit.
0022 
0023   SART2, first seen in A14 and M1, allows 36 bit of physical address space
0024   and filter entry size up to 36 bit.
0025 
0026   SART3, first seen in M1 Pro/Max, extends both the address space and filter
0027   entry size to 42 bit.
0028 
0029 properties:
0030   compatible:
0031     enum:
0032       - apple,t6000-sart
0033       - apple,t8103-sart
0034 
0035   reg:
0036     maxItems: 1
0037 
0038   power-domains:
0039     maxItems: 1
0040 
0041 required:
0042   - compatible
0043   - reg
0044 
0045 additionalProperties: false
0046 
0047 examples:
0048   - |
0049     iommu@7bc50000 {
0050       compatible = "apple,t8103-sart";
0051       reg = <0x7bc50000 0x4000>;
0052     };