mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-05 18:39:59 +00:00
dt-bindings: iommu: add DART iommu bindings
DART (Device Address Resolution Table) is the iommu found on Apple ARM SoCs such as the M1. Reviewed-by: Rob Herring <robh@kernel.org> Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Signed-off-by: Sven Peter <sven@svenpeter.dev> Link: https://lore.kernel.org/r/20210803121651.61594-3-sven@svenpeter.dev Signed-off-by: Joerg Roedel <jroedel@suse.de>
This commit is contained in:
parent
892384cd99
commit
9d9cafb45c
2 changed files with 87 additions and 0 deletions
81
Documentation/devicetree/bindings/iommu/apple,dart.yaml
Normal file
81
Documentation/devicetree/bindings/iommu/apple,dart.yaml
Normal file
|
@ -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: iommu@82f80000 {
|
||||||
|
compatible = "apple,t8103-dart";
|
||||||
|
reg = <0x82f80000 0x4000>;
|
||||||
|
interrupts = <1 781 4>;
|
||||||
|
#iommu-cells = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
master1 {
|
||||||
|
iommus = <&dart1 0>;
|
||||||
|
};
|
||||||
|
|
||||||
|
- |+
|
||||||
|
dart2a: iommu@82f00000 {
|
||||||
|
compatible = "apple,t8103-dart";
|
||||||
|
reg = <0x82f00000 0x4000>;
|
||||||
|
interrupts = <1 781 4>;
|
||||||
|
#iommu-cells = <1>;
|
||||||
|
};
|
||||||
|
dart2b: iommu@82f80000 {
|
||||||
|
compatible = "apple,t8103-dart";
|
||||||
|
reg = <0x82f80000 0x4000>;
|
||||||
|
interrupts = <1 781 4>;
|
||||||
|
#iommu-cells = <1>;
|
||||||
|
};
|
||||||
|
|
||||||
|
master2 {
|
||||||
|
iommus = <&dart2a 0>, <&dart2b 1>;
|
||||||
|
};
|
|
@ -1262,6 +1262,12 @@ L: linux-input@vger.kernel.org
|
||||||
S: Odd fixes
|
S: Odd fixes
|
||||||
F: drivers/input/mouse/bcm5974.c
|
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,dart.yaml
|
||||||
|
|
||||||
APPLE SMC DRIVER
|
APPLE SMC DRIVER
|
||||||
M: Henrik Rydberg <rydberg@bitmath.org>
|
M: Henrik Rydberg <rydberg@bitmath.org>
|
||||||
L: linux-hwmon@vger.kernel.org
|
L: linux-hwmon@vger.kernel.org
|
||||||
|
|
Loading…
Reference in a new issue