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
7title: Tegra210 AMX
8
9description: |
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
15maintainers:
16  - Jon Hunter <jonathanh@nvidia.com>
17  - Mohan Kumar <mkumard@nvidia.com>
18  - Sameer Pujar <spujar@nvidia.com>
19
20allOf:
21  - $ref: name-prefix.yaml#
22
23properties:
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
64required:
65  - compatible
66  - reg
67
68additionalProperties: false
69
70examples:
71  - |
72
73    amx@702d3000 {
74        compatible = "nvidia,tegra210-amx";
75        reg = <0x702d3000 0x100>;
76        sound-name-prefix = "AMX1";
77    };
78
79...
80