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