xref: /linux/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-cpcap.yaml (revision 0fc8f6200d2313278fbf4539bbab74677c685531)
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,tegra-audio-cpcap.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: NVIDIA Tegra audio complex with CPCAP CODEC
8
9maintainers:
10  - Svyatoslav Ryhel <clamor95@gmail.com>
11
12allOf:
13  - $ref: nvidia,tegra-audio-common.yaml#
14
15properties:
16  compatible:
17    items:
18      - pattern: '^motorola,tegra-audio-cpcap(-[a-z0-9]+)+$'
19      - const: nvidia,tegra-audio-cpcap
20
21  nvidia,audio-routing:
22    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
23    description:
24      A list of the connections between audio components. Each entry is a
25      pair of strings, the first being the connection's sink, the second
26      being the connection's source. Valid names for sources and sinks are
27      the pins (documented in the binding document), and the jacks on the
28      board.
29    minItems: 2
30    items:
31      enum:
32        # Board Connectors
33        - Speakers
34        - Int Spk
35        - Earpiece
36        - Int Mic
37        - Headset Mic
38        - Internal Mic 1
39        - Internal Mic 2
40        - Headphone
41        - Headphones
42        - Headphone Jack
43        - Mic Jack
44
45        # CODEC Pins
46        - MICR
47        - HSMIC
48        - EMUMIC
49        - MICL
50        - EXTR
51        - EXTL
52        - EP
53        - SPKR
54        - SPKL
55        - LINER
56        - LINEL
57        - HSR
58        - HSL
59        - EMUR
60        - EMUL
61
62unevaluatedProperties: false
63
64examples:
65  - |
66    #include <dt-bindings/clock/tegra20-car.h>
67    #include <dt-bindings/soc/tegra-pmc.h>
68    sound {
69        compatible = "motorola,tegra-audio-cpcap-olympus",
70                     "nvidia,tegra-audio-cpcap";
71        nvidia,model = "Motorola Atrix 4G (MB860) CPCAP";
72
73        nvidia,audio-routing =
74                "Headphones", "HSR",
75                "Headphones", "HSL",
76                "Int Spk", "SPKR",
77                "Int Spk", "SPKL",
78                "Earpiece", "EP",
79                "HSMIC", "Mic Jack",
80                "MICR", "Internal Mic 1",
81                "MICL", "Internal Mic 2";
82
83        nvidia,i2s-controller = <&tegra_i2s1>;
84        nvidia,audio-codec = <&cpcap_audio>;
85
86        clocks = <&tegra_car TEGRA20_CLK_PLL_A>,
87                 <&tegra_car TEGRA20_CLK_PLL_A_OUT0>,
88                 <&tegra_car TEGRA20_CLK_CDEV1>;
89        clock-names = "pll_a", "pll_a_out0", "mclk";
90    };
91