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-adx.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Tegra210 ADX
8
9description: |
10  The Audio Demultiplexer (ADX) block takes an input stream with up to
11  16 channels and demultiplexes it into four output streams of up to 16
12  channels each. A byte RAM helps to form output frames by any combination
13  of bytes from the input frame. Its design is identical to that of byte
14  RAM in the AMX except that the data flow direction is reversed.
15
16maintainers:
17  - Jon Hunter <jonathanh@nvidia.com>
18  - Mohan Kumar <mkumard@nvidia.com>
19  - Sameer Pujar <spujar@nvidia.com>
20
21allOf:
22  - $ref: name-prefix.yaml#
23
24properties:
25  $nodename:
26    pattern: "^adx@[0-9a-f]*$"
27
28  compatible:
29    oneOf:
30      - const: nvidia,tegra210-adx
31      - items:
32          - enum:
33              - nvidia,tegra234-adx
34              - nvidia,tegra194-adx
35              - nvidia,tegra186-adx
36          - const: nvidia,tegra210-adx
37
38  reg:
39    maxItems: 1
40
41  sound-name-prefix:
42    pattern: "^ADX[1-9]$"
43
44  ports:
45    $ref: /schemas/graph.yaml#/properties/ports
46    description: |
47      ADX has one input and four outputs. Accordingly ACIF (Audio Client
48      Interface) port nodes are defined to represent ADX input (port 0)
49      and outputs (ports 1 to 4). These are connected to corresponding
50      ports on AHUB (Audio Hub).
51    properties:
52      port@0:
53        $ref: audio-graph-port.yaml#
54        unevaluatedProperties: false
55        description: ADX ACIF input port
56    patternProperties:
57      '^port@[1-4]':
58        $ref: audio-graph-port.yaml#
59        unevaluatedProperties: false
60        description: ADX ACIF output ports
61
62required:
63  - compatible
64  - reg
65
66additionalProperties: false
67
68examples:
69  - |
70
71    adx@702d3800 {
72        compatible = "nvidia,tegra210-adx";
73        reg = <0x702d3800 0x100>;
74        sound-name-prefix = "ADX1";
75    };
76
77...
78