1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/sound/samsung,midas-audio.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Samsung Midas audio complex with WM1811 codec
8
9maintainers:
10  - Sylwester Nawrocki <s.nawrocki@samsung.com>
11
12properties:
13  compatible:
14    const: samsung,midas-audio
15
16  model:
17    $ref: /schemas/types.yaml#/definitions/string
18    description: The user-visible name of this sound complex.
19
20  cpu:
21    type: object
22    properties:
23      sound-dai:
24        maxItems: 1
25        description: phandle to the I2S controller
26    required:
27      - sound-dai
28
29  codec:
30    type: object
31    properties:
32      sound-dai:
33        maxItems: 1
34        description: phandle to the WM1811 CODEC
35    required:
36      - sound-dai
37
38  samsung,audio-routing:
39    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
40    description: |
41      List of the connections between audio components; each entry is
42      a pair of strings, the first being the connection's sink, the second
43      being the connection's source; valid names for sources and sinks are
44      the WM1811's pins (as documented in its binding), and the jacks
45      on the board: HP, SPK, Main Mic, Sub Mic, Headset Mic.
46
47  mic-bias-supply:
48    description: Supply for the micbias on the Main microphone
49
50  submic-bias-supply:
51    description: Supply for the micbias on the Sub microphone
52
53  fm-sel-gpios:
54    maxItems: 1
55    description: GPIO pin for FM selection
56
57  lineout-sel-gpios:
58    maxItems: 1
59    description: GPIO pin for line out selection
60
61required:
62  - compatible
63  - model
64  - cpu
65  - codec
66  - samsung,audio-routing
67  - mic-bias-supply
68  - submic-bias-supply
69
70additionalProperties: false
71
72examples:
73  - |
74    #include <dt-bindings/gpio/gpio.h>
75
76    sound {
77        compatible = "samsung,midas-audio";
78        model = "Midas";
79
80        fm-sel-gpios = <&gpaa0 3 GPIO_ACTIVE_HIGH>;
81
82        mic-bias-supply = <&mic_bias_reg>;
83        submic-bias-supply = <&submic_bias_reg>;
84
85        samsung,audio-routing =
86                "HP", "HPOUT1L",
87                "HP", "HPOUT1R",
88
89                "SPK", "SPKOUTLN",
90                "SPK", "SPKOUTLP",
91                "SPK", "SPKOUTRN",
92                "SPK", "SPKOUTRP",
93
94                "RCV", "HPOUT2N",
95                "RCV", "HPOUT2P",
96
97                "IN1LP", "Main Mic",
98                "IN1LN", "Main Mic",
99                "IN1RP", "Sub Mic",
100                "IN1LP", "Sub Mic";
101
102        cpu {
103            sound-dai = <&i2s0>;
104        };
105
106        codec {
107            sound-dai = <&wm1811>;
108        };
109
110    };
111