GNU Linux-libre 6.1.90-gnu
[releases.git] / Documentation / devicetree / bindings / sound / nvidia,tegra210-amx.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/sound/nvidia,tegra210-amx.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Tegra210 AMX
8
9 description: |
10   The Audio Multiplexer (AMX) block can multiplex up to four input streams
11   each of which can have maximum 16 channels and generate an output stream
12   with maximum 16 channels. A byte RAM helps to form an output frame by
13   any combination of bytes from the input frames.
14
15 maintainers:
16   - Jon Hunter <jonathanh@nvidia.com>
17   - Mohan Kumar <mkumard@nvidia.com>
18   - Sameer Pujar <spujar@nvidia.com>
19
20 allOf:
21   - $ref: name-prefix.yaml#
22
23 properties:
24   $nodename:
25     pattern: "^amx@[0-9a-f]*$"
26
27   compatible:
28     oneOf:
29       - const: nvidia,tegra210-amx
30       - items:
31           - const: nvidia,tegra186-amx
32           - const: nvidia,tegra210-amx
33       - const: nvidia,tegra194-amx
34       - items:
35           - const: nvidia,tegra234-amx
36           - const: nvidia,tegra194-amx
37
38   reg:
39     maxItems: 1
40
41   sound-name-prefix:
42     pattern: "^AMX[1-9]$"
43
44   ports:
45     $ref: /schemas/graph.yaml#/properties/ports
46     description: |
47       AMX has four inputs and one output. Accordingly ACIF (Audio Client
48       Interfaces) port nodes are defined to represent AMX inputs (port 0
49       to 3) and output (port 4). These are connected to corresponding
50       ports on AHUB (Audio Hub).
51
52     patternProperties:
53       '^port@[0-3]':
54         $ref: audio-graph-port.yaml#
55         unevaluatedProperties: false
56         description: AMX ACIF input ports
57
58     properties:
59       port@4:
60         $ref: audio-graph-port.yaml#
61         unevaluatedProperties: false
62         description: AMX ACIF output port
63
64 required:
65   - compatible
66   - reg
67
68 additionalProperties: false
69
70 examples:
71   - |
72
73     amx@702d3000 {
74         compatible = "nvidia,tegra210-amx";
75         reg = <0x702d3000 0x100>;
76         sound-name-prefix = "AMX1";
77     };
78
79 ...