1c54ce1a1SSameer Pujar# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2c54ce1a1SSameer Pujar%YAML 1.2
3c54ce1a1SSameer Pujar---
4c54ce1a1SSameer Pujar$id: http://devicetree.org/schemas/sound/nvidia,tegra186-asrc.yaml#
5c54ce1a1SSameer Pujar$schema: http://devicetree.org/meta-schemas/core.yaml#
6c54ce1a1SSameer Pujar
7dd3cb467SAndrew Lunntitle: Tegra186 ASRC
8c54ce1a1SSameer Pujar
9c54ce1a1SSameer Pujardescription: |
10c54ce1a1SSameer Pujar  Asynchronous Sample Rate Converter (ASRC) converts the sampling frequency
11c54ce1a1SSameer Pujar  of the input signal from one frequency to another. It can handle over a
12c54ce1a1SSameer Pujar  wide range of sample rate ratios (freq_in/freq_out) from 1:24 to 24:1.
13c54ce1a1SSameer Pujar  ASRC has two modes of operation. One where ratio can be programmed in SW
14c54ce1a1SSameer Pujar  and the other where it gets the information from ratio estimator module.
15c54ce1a1SSameer Pujar
16c54ce1a1SSameer Pujar  It supports  sample rate conversions in the range of 8 to 192 kHz and
17c54ce1a1SSameer Pujar  supports 6 streams upto 12 total channels. The input data size can be
18c54ce1a1SSameer Pujar  16, 24 and 32 bits.
19c54ce1a1SSameer Pujar
20c54ce1a1SSameer Pujarmaintainers:
21c54ce1a1SSameer Pujar  - Jon Hunter <jonathanh@nvidia.com>
22c54ce1a1SSameer Pujar  - Mohan Kumar <mkumard@nvidia.com>
23c54ce1a1SSameer Pujar  - Sameer Pujar <spujar@nvidia.com>
24c54ce1a1SSameer Pujar
25c54ce1a1SSameer PujarallOf:
26*3fda8532SKrzysztof Kozlowski  - $ref: dai-common.yaml#
27c54ce1a1SSameer Pujar
28c54ce1a1SSameer Pujarproperties:
29c54ce1a1SSameer Pujar  $nodename:
30c54ce1a1SSameer Pujar    pattern: "^asrc@[0-9a-f]*$"
31c54ce1a1SSameer Pujar
32c54ce1a1SSameer Pujar  compatible:
33c54ce1a1SSameer Pujar    oneOf:
34c54ce1a1SSameer Pujar      - const: nvidia,tegra186-asrc
35c54ce1a1SSameer Pujar      - items:
36c54ce1a1SSameer Pujar          - enum:
37c54ce1a1SSameer Pujar              - nvidia,tegra234-asrc
38c54ce1a1SSameer Pujar              - nvidia,tegra194-asrc
39c54ce1a1SSameer Pujar          - const: nvidia,tegra186-asrc
40c54ce1a1SSameer Pujar
41c54ce1a1SSameer Pujar  reg:
42c54ce1a1SSameer Pujar    maxItems: 1
43c54ce1a1SSameer Pujar
44c54ce1a1SSameer Pujar  sound-name-prefix:
45c54ce1a1SSameer Pujar    pattern: "^ASRC[1-9]$"
46c54ce1a1SSameer Pujar
47c54ce1a1SSameer Pujar  ports:
48c54ce1a1SSameer Pujar    $ref: /schemas/graph.yaml#/properties/ports
49c54ce1a1SSameer Pujar    description: |
50c54ce1a1SSameer Pujar      ASRC has seven input ports and six output ports. Accordingly ACIF
51c54ce1a1SSameer Pujar      (Audio Client Interfaces) port nodes are defined to represent the
52c54ce1a1SSameer Pujar      ASRC inputs (port 0 to 6) and outputs (port 7 to 12). These are
53c54ce1a1SSameer Pujar      connected to corresponding ports on AHUB (Audio Hub). Additional
54c54ce1a1SSameer Pujar      input (port 6) is for receiving ratio information from estimator.
55c54ce1a1SSameer Pujar
56c54ce1a1SSameer Pujar    patternProperties:
57c54ce1a1SSameer Pujar      '^port@[0-6]':
58c54ce1a1SSameer Pujar        $ref: audio-graph-port.yaml#
59c54ce1a1SSameer Pujar        unevaluatedProperties: false
60c54ce1a1SSameer Pujar        description: ASRC ACIF input ports
61c54ce1a1SSameer Pujar      '^port@[7-9]|1[1-2]':
62c54ce1a1SSameer Pujar        $ref: audio-graph-port.yaml#
63c54ce1a1SSameer Pujar        unevaluatedProperties: false
64c54ce1a1SSameer Pujar        description: ASRC ACIF output ports
65c54ce1a1SSameer Pujar
66c54ce1a1SSameer Pujarrequired:
67c54ce1a1SSameer Pujar  - compatible
68c54ce1a1SSameer Pujar  - reg
69c54ce1a1SSameer Pujar
70c54ce1a1SSameer PujaradditionalProperties: false
71c54ce1a1SSameer Pujar
72c54ce1a1SSameer Pujarexamples:
73c54ce1a1SSameer Pujar  - |
74c54ce1a1SSameer Pujar
75c54ce1a1SSameer Pujar    asrc@2910000 {
76c54ce1a1SSameer Pujar        compatible = "nvidia,tegra186-asrc";
77c54ce1a1SSameer Pujar        reg = <0x2910000 0x2000>;
78c54ce1a1SSameer Pujar        sound-name-prefix = "ASRC1";
79c54ce1a1SSameer Pujar    };
80c54ce1a1SSameer Pujar
81c54ce1a1SSameer Pujar...
82