From: Sven Peter via iommu <iommu@lists.linux-foundation.org> To: Will Deacon <will@kernel.org>, Robin Murphy <robin.murphy@arm.com>, Joerg Roedel <joro@8bytes.org>, Rob Herring <robh+dt@kernel.org> Cc: Arnd Bergmann <arnd@kernel.org>, devicetree@vger.kernel.org, Marc Zyngier <maz@kernel.org>, Hector Martin <marcan@marcan.st>, linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org, Sven Peter <sven@svenpeter.dev>, Mohamed Mediouni <mohamed.mediouni@caramail.com>, Mark Kettenis <mark.kettenis@xs4all.nl>, linux-arm-kernel@lists.infradead.org, Stan Skowronek <stan@corellium.com> Subject: [PATCH v2 2/3] dt-bindings: iommu: add DART iommu bindings Date: Sun, 28 Mar 2021 09:40:08 +0200 [thread overview] Message-ID: <20210328074009.95932-3-sven@svenpeter.dev> (raw) In-Reply-To: <20210328074009.95932-1-sven@svenpeter.dev> DART (Device Address Resolution Table) is the iommu found on Apple ARM SoCs such as the M1. Signed-off-by: Sven Peter <sven@svenpeter.dev> --- .../devicetree/bindings/iommu/apple,dart.yaml | 81 +++++++++++++++++++ MAINTAINERS | 6 ++ 2 files changed, 87 insertions(+) create mode 100644 Documentation/devicetree/bindings/iommu/apple,dart.yaml diff --git a/Documentation/devicetree/bindings/iommu/apple,dart.yaml b/Documentation/devicetree/bindings/iommu/apple,dart.yaml new file mode 100644 index 000000000000..c0b43d90c157 --- /dev/null +++ b/Documentation/devicetree/bindings/iommu/apple,dart.yaml @@ -0,0 +1,81 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iommu/apple,dart.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Apple DART IOMMU + +maintainers: + - Sven Peter <sven@svenpeter.dev> + +description: |+ + Apple SoCs may contain an implementation of their Device Address + Resolution Table which provides a mandatory layer of address + translations for various masters. + + Each DART instance is capable of handling up to 16 different streams + with individual pagetables and page-level read/write protection flags. + + This DART IOMMU also raises interrupts in response to various + fault conditions. + +properties: + compatible: + const: apple,t8103-dart + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + description: + Reference to the gate clock phandle if required for this IOMMU. + Optional since not all IOMMUs are attached to a clock gate. + + '#iommu-cells': + const: 1 + description: + Has to be one. The single cell describes the stream id emitted by + a master to the IOMMU. + +required: + - compatible + - reg + - '#iommu-cells' + - interrupts + +additionalProperties: false + +examples: + - |+ + dart1: dart1@82f80000 { + compatible = "apple,t8103-dart"; + reg = <0x82f80000 0x4000>; + interrupts = <1 781 4>; + #iommu-cells = <1>; + }; + + master1 { + iommus = <&{/dart1} 0>; + }; + + - |+ + dart2a: dart2a@82f00000 { + compatible = "apple,t8103-dart"; + reg = <0x82f00000 0x4000>; + interrupts = <1 781 4>; + #iommu-cells = <1>; + }; + dart2b: dart2@82f80000 { + compatible = "apple,t8103-dart"; + reg = <0x82f80000 0x4000>; + interrupts = <1 781 4>; + #iommu-cells = <1>; + }; + + master2 { + iommus = <&{/dart2a} 0>, <&{/dart2b} 1>; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 9ac46317840b..f5397328fa1f 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1236,6 +1236,12 @@ L: linux-input@vger.kernel.org S: Odd fixes F: drivers/input/mouse/bcm5974.c +APPLE DART IOMMU DRIVER +M: Sven Peter <sven@svenpeter.dev> +L: iommu@lists.linux-foundation.org +S: Maintained +F: Documentation/devicetree/bindings/iommu/apple,t8103-dart.yaml + APPLE SMC DRIVER M: Henrik Rydberg <rydberg@bitmath.org> L: linux-hwmon@vger.kernel.org -- 2.25.1 _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu
next prev parent reply other threads:[~2021-03-28 7:41 UTC|newest] Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-03-28 7:40 [PATCH v2 0/3] Apple M1 DART IOMMU driver Sven Peter via iommu 2021-03-28 7:40 ` [PATCH v2 1/3] iommu: io-pgtable: add DART pagetable format Sven Peter via iommu 2021-04-07 10:44 ` Will Deacon 2021-04-09 16:55 ` Sven Peter via iommu 2021-04-09 19:38 ` Arnd Bergmann 2021-04-19 16:31 ` Will Deacon 2021-03-28 7:40 ` Sven Peter via iommu [this message] 2021-03-28 8:16 ` [PATCH v2 2/3] dt-bindings: iommu: add DART iommu bindings Arnd Bergmann 2021-03-28 9:22 ` Sven Peter via iommu 2021-03-28 7:40 ` [PATCH v2 3/3] iommu: dart: Add DART iommu driver Sven Peter via iommu 2021-04-07 10:42 ` Will Deacon 2021-04-09 16:50 ` Sven Peter via iommu
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210328074009.95932-3-sven@svenpeter.dev \ --to=iommu@lists.linux-foundation.org \ --cc=arnd@kernel.org \ --cc=devicetree@vger.kernel.org \ --cc=joro@8bytes.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=marcan@marcan.st \ --cc=mark.kettenis@xs4all.nl \ --cc=maz@kernel.org \ --cc=mohamed.mediouni@caramail.com \ --cc=robh+dt@kernel.org \ --cc=robin.murphy@arm.com \ --cc=stan@corellium.com \ --cc=sven@svenpeter.dev \ --cc=will@kernel.org \ --subject='Re: [PATCH v2 2/3] dt-bindings: iommu: add DART iommu bindings' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).