xref: /linux/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-max98090.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
188dffe43SDavid Heidelberg# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
288dffe43SDavid Heidelberg%YAML 1.2
388dffe43SDavid Heidelberg---
488dffe43SDavid Heidelberg$id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-max98090.yaml#
588dffe43SDavid Heidelberg$schema: http://devicetree.org/meta-schemas/core.yaml#
688dffe43SDavid Heidelberg
788dffe43SDavid Heidelbergtitle: NVIDIA Tegra audio complex with MAX98090 CODEC
888dffe43SDavid Heidelberg
988dffe43SDavid Heidelbergmaintainers:
1088dffe43SDavid Heidelberg  - Jon Hunter <jonathanh@nvidia.com>
1188dffe43SDavid Heidelberg  - Thierry Reding <thierry.reding@gmail.com>
1288dffe43SDavid Heidelberg
1388dffe43SDavid HeidelbergallOf:
1488dffe43SDavid Heidelberg  - $ref: nvidia,tegra-audio-common.yaml#
1588dffe43SDavid Heidelberg
1688dffe43SDavid Heidelbergproperties:
1788dffe43SDavid Heidelberg  compatible:
1888dffe43SDavid Heidelberg    oneOf:
1988dffe43SDavid Heidelberg      - items:
2088dffe43SDavid Heidelberg          - pattern: '^[a-z0-9]+,tegra-audio-max98090(-[a-z0-9]+)+$'
2188dffe43SDavid Heidelberg          - const: nvidia,tegra-audio-max98090
2288dffe43SDavid Heidelberg      - items:
2388dffe43SDavid Heidelberg          - enum:
2488dffe43SDavid Heidelberg              - nvidia,tegra-audio-max98090-nyan-big
2588dffe43SDavid Heidelberg              - nvidia,tegra-audio-max98090-nyan-blaze
2688dffe43SDavid Heidelberg          - const: nvidia,tegra-audio-max98090-nyan
2788dffe43SDavid Heidelberg          - const: nvidia,tegra-audio-max98090
2888dffe43SDavid Heidelberg
2988dffe43SDavid Heidelberg  nvidia,audio-routing:
3088dffe43SDavid Heidelberg    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
3188dffe43SDavid Heidelberg    description: |
3288dffe43SDavid Heidelberg      A list of the connections between audio components.
3388dffe43SDavid Heidelberg      Each entry is a pair of strings, the first being the connection's sink,
3488dffe43SDavid Heidelberg      the second being the connection's source. Valid names for sources and
3588dffe43SDavid Heidelberg      sinks are the pins (documented in the binding document),
3688dffe43SDavid Heidelberg      and the jacks on the board.
3788dffe43SDavid Heidelberg    minItems: 2
3888dffe43SDavid Heidelberg    items:
3988dffe43SDavid Heidelberg      enum:
4088dffe43SDavid Heidelberg        # Board Connectors
41*d9e909e2SRob Herring        - Headphones
42*d9e909e2SRob Herring        - Speakers
43*d9e909e2SRob Herring        - Mic Jack
44*d9e909e2SRob Herring        - Int Mic
4588dffe43SDavid Heidelberg
4688dffe43SDavid Heidelberg        # CODEC Pins
4788dffe43SDavid Heidelberg        - MIC1
4888dffe43SDavid Heidelberg        - MIC2
4988dffe43SDavid Heidelberg        - DMICL
5088dffe43SDavid Heidelberg        - DMICR
5188dffe43SDavid Heidelberg        - IN1
5288dffe43SDavid Heidelberg        - IN2
5388dffe43SDavid Heidelberg        - IN3
5488dffe43SDavid Heidelberg        - IN4
5588dffe43SDavid Heidelberg        - IN5
5688dffe43SDavid Heidelberg        - IN6
5788dffe43SDavid Heidelberg        - IN12
5888dffe43SDavid Heidelberg        - IN34
5988dffe43SDavid Heidelberg        - IN56
6088dffe43SDavid Heidelberg        - HPL
6188dffe43SDavid Heidelberg        - HPR
6288dffe43SDavid Heidelberg        - SPKL
6388dffe43SDavid Heidelberg        - SPKR
6488dffe43SDavid Heidelberg        - RCVL
6588dffe43SDavid Heidelberg        - RCVR
6688dffe43SDavid Heidelberg        - MICBIAS
6788dffe43SDavid Heidelberg
6888dffe43SDavid Heidelbergrequired:
6988dffe43SDavid Heidelberg  - nvidia,i2s-controller
7088dffe43SDavid Heidelberg
7188dffe43SDavid HeidelbergunevaluatedProperties: false
7288dffe43SDavid Heidelberg
7388dffe43SDavid Heidelbergexamples:
7488dffe43SDavid Heidelberg  - |
7588dffe43SDavid Heidelberg    #include <dt-bindings/clock/tegra124-car.h>
7688dffe43SDavid Heidelberg
7788dffe43SDavid Heidelberg    sound {
7888dffe43SDavid Heidelberg        compatible = "nvidia,tegra-audio-max98090-venice2",
7988dffe43SDavid Heidelberg                     "nvidia,tegra-audio-max98090";
8088dffe43SDavid Heidelberg        nvidia,model = "NVIDIA Tegra Venice2";
8188dffe43SDavid Heidelberg
8288dffe43SDavid Heidelberg        nvidia,audio-routing =
8388dffe43SDavid Heidelberg                "Headphones", "HPR",
8488dffe43SDavid Heidelberg                "Headphones", "HPL",
8588dffe43SDavid Heidelberg                "Speakers", "SPKR",
8688dffe43SDavid Heidelberg                "Speakers", "SPKL",
8788dffe43SDavid Heidelberg                "Mic Jack", "MICBIAS",
8888dffe43SDavid Heidelberg                "IN34", "Mic Jack";
8988dffe43SDavid Heidelberg
9088dffe43SDavid Heidelberg        nvidia,i2s-controller = <&tegra_i2s1>;
9188dffe43SDavid Heidelberg        nvidia,audio-codec = <&acodec>;
9288dffe43SDavid Heidelberg
9388dffe43SDavid Heidelberg        clocks = <&tegra_car TEGRA124_CLK_PLL_A>,
9488dffe43SDavid Heidelberg                 <&tegra_car TEGRA124_CLK_PLL_A_OUT0>,
9588dffe43SDavid Heidelberg                 <&tegra_car TEGRA124_CLK_EXTERN1>;
9688dffe43SDavid Heidelberg        clock-names = "pll_a", "pll_a_out0", "mclk";
9788dffe43SDavid Heidelberg    };
98