xref: /freebsd/sys/contrib/device-tree/Bindings/sound/nvidia,tegra-audio-rt5631.yaml (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2fac71e4eSEmmanuel Vadot%YAML 1.2
3fac71e4eSEmmanuel Vadot---
4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/sound/nvidia,tegra-audio-rt5631.yaml#
5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6fac71e4eSEmmanuel Vadot
7fac71e4eSEmmanuel Vadottitle: NVIDIA Tegra audio complex with RT5631 CODEC
8fac71e4eSEmmanuel Vadot
9fac71e4eSEmmanuel Vadotmaintainers:
10fac71e4eSEmmanuel Vadot  - Jon Hunter <jonathanh@nvidia.com>
11fac71e4eSEmmanuel Vadot  - Thierry Reding <thierry.reding@gmail.com>
12fac71e4eSEmmanuel Vadot
13fac71e4eSEmmanuel VadotallOf:
14fac71e4eSEmmanuel Vadot  - $ref: nvidia,tegra-audio-common.yaml#
15fac71e4eSEmmanuel Vadot
16fac71e4eSEmmanuel Vadotproperties:
17fac71e4eSEmmanuel Vadot  compatible:
18fac71e4eSEmmanuel Vadot    items:
19fac71e4eSEmmanuel Vadot      - pattern: '^[a-z0-9]+,tegra-audio-rt5631(-[a-z0-9]+)+$'
20fac71e4eSEmmanuel Vadot      - const: nvidia,tegra-audio-rt5631
21fac71e4eSEmmanuel Vadot
22fac71e4eSEmmanuel Vadot  nvidia,audio-routing:
23fac71e4eSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
24fac71e4eSEmmanuel Vadot    description: |
25fac71e4eSEmmanuel Vadot      A list of the connections between audio components.
26fac71e4eSEmmanuel Vadot      Each entry is a pair of strings, the first being the connection's sink,
27fac71e4eSEmmanuel Vadot      the second being the connection's source. Valid names for sources and
28fac71e4eSEmmanuel Vadot      sinks are the pins (documented in the binding document),
29fac71e4eSEmmanuel Vadot      and the jacks on the board.
30fac71e4eSEmmanuel Vadot    minItems: 2
31fac71e4eSEmmanuel Vadot    items:
32fac71e4eSEmmanuel Vadot      enum:
33fac71e4eSEmmanuel Vadot        # Board Connectors
34*aa1a8ff2SEmmanuel Vadot        - Int Spk
35*aa1a8ff2SEmmanuel Vadot        - Headphone Jack
36*aa1a8ff2SEmmanuel Vadot        - Mic Jack
37*aa1a8ff2SEmmanuel Vadot        - Int Mic
38fac71e4eSEmmanuel Vadot
39fac71e4eSEmmanuel Vadot        # CODEC Pins
40fac71e4eSEmmanuel Vadot        - MIC1
41fac71e4eSEmmanuel Vadot        - MIC2
42fac71e4eSEmmanuel Vadot        - AXIL
43fac71e4eSEmmanuel Vadot        - AXIR
44fac71e4eSEmmanuel Vadot        - MONOIN_RXN
45fac71e4eSEmmanuel Vadot        - MONOIN_RXP
46fac71e4eSEmmanuel Vadot        - DMIC
47fac71e4eSEmmanuel Vadot        - MIC Bias1
48fac71e4eSEmmanuel Vadot        - MIC Bias2
49fac71e4eSEmmanuel Vadot        - MONO_IN
50fac71e4eSEmmanuel Vadot        - AUXO1
51fac71e4eSEmmanuel Vadot        - AUXO2
52fac71e4eSEmmanuel Vadot        - SPOL
53fac71e4eSEmmanuel Vadot        - SPOR
54fac71e4eSEmmanuel Vadot        - HPOL
55fac71e4eSEmmanuel Vadot        - HPOR
56fac71e4eSEmmanuel Vadot        - MONO
57fac71e4eSEmmanuel Vadot
58fac71e4eSEmmanuel VadotunevaluatedProperties: false
59fac71e4eSEmmanuel Vadot
60fac71e4eSEmmanuel Vadotexamples:
61fac71e4eSEmmanuel Vadot  - |
62fac71e4eSEmmanuel Vadot    #include <dt-bindings/clock/tegra30-car.h>
63fac71e4eSEmmanuel Vadot    #include <dt-bindings/soc/tegra-pmc.h>
64fac71e4eSEmmanuel Vadot    sound {
65fac71e4eSEmmanuel Vadot        compatible = "asus,tegra-audio-rt5631-tf700t",
66fac71e4eSEmmanuel Vadot                     "nvidia,tegra-audio-rt5631";
67fac71e4eSEmmanuel Vadot        nvidia,model = "Asus Transformer Infinity TF700T RT5631";
68fac71e4eSEmmanuel Vadot
69fac71e4eSEmmanuel Vadot        nvidia,audio-routing =
70fac71e4eSEmmanuel Vadot                "Headphone Jack", "HPOL",
71fac71e4eSEmmanuel Vadot                "Headphone Jack", "HPOR",
72fac71e4eSEmmanuel Vadot                "Int Spk", "SPOL",
73fac71e4eSEmmanuel Vadot                "Int Spk", "SPOR",
74fac71e4eSEmmanuel Vadot                "MIC1", "MIC Bias1",
75fac71e4eSEmmanuel Vadot                "MIC Bias1", "Mic Jack",
76fac71e4eSEmmanuel Vadot                "DMIC", "Int Mic";
77fac71e4eSEmmanuel Vadot
78fac71e4eSEmmanuel Vadot        nvidia,i2s-controller = <&tegra_i2s1>;
79fac71e4eSEmmanuel Vadot        nvidia,audio-codec = <&rt5631>;
80fac71e4eSEmmanuel Vadot
81fac71e4eSEmmanuel Vadot        clocks = <&tegra_car TEGRA30_CLK_PLL_A>,
82fac71e4eSEmmanuel Vadot                 <&tegra_car TEGRA30_CLK_PLL_A_OUT0>,
83fac71e4eSEmmanuel Vadot                 <&tegra_pmc TEGRA_PMC_CLK_OUT_1>;
84fac71e4eSEmmanuel Vadot        clock-names = "pll_a", "pll_a_out0", "mclk";
85fac71e4eSEmmanuel Vadot    };
86