xref: /linux/Documentation/devicetree/bindings/sound/fsl,imx-audio-es8328.yaml (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1*00645b42SAnimesh Agarwal# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*00645b42SAnimesh Agarwal%YAML 1.2
3*00645b42SAnimesh Agarwal---
4*00645b42SAnimesh Agarwal$id: http://devicetree.org/schemas/sound/fsl,imx-audio-es8328.yaml#
5*00645b42SAnimesh Agarwal$schema: http://devicetree.org/meta-schemas/core.yaml#
6*00645b42SAnimesh Agarwal
7*00645b42SAnimesh Agarwaltitle: Freescale i.MX audio complex with ES8328 codec
8*00645b42SAnimesh Agarwal
9*00645b42SAnimesh Agarwalmaintainers:
10*00645b42SAnimesh Agarwal  - Shawn Guo <shawnguo@kernel.org>
11*00645b42SAnimesh Agarwal  - Sascha Hauer <s.hauer@pengutronix.de>
12*00645b42SAnimesh Agarwal
13*00645b42SAnimesh AgarwalallOf:
14*00645b42SAnimesh Agarwal  - $ref: sound-card-common.yaml#
15*00645b42SAnimesh Agarwal
16*00645b42SAnimesh Agarwalproperties:
17*00645b42SAnimesh Agarwal  compatible:
18*00645b42SAnimesh Agarwal    const: fsl,imx-audio-es8328
19*00645b42SAnimesh Agarwal
20*00645b42SAnimesh Agarwal  model:
21*00645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/string
22*00645b42SAnimesh Agarwal    description: The user-visible name of this sound complex
23*00645b42SAnimesh Agarwal
24*00645b42SAnimesh Agarwal  ssi-controller:
25*00645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/phandle
26*00645b42SAnimesh Agarwal    description: The phandle of the i.MX SSI controller
27*00645b42SAnimesh Agarwal
28*00645b42SAnimesh Agarwal  jack-gpio:
29*00645b42SAnimesh Agarwal    description: Optional GPIO for headphone jack
30*00645b42SAnimesh Agarwal    maxItems: 1
31*00645b42SAnimesh Agarwal
32*00645b42SAnimesh Agarwal  audio-amp-supply:
33*00645b42SAnimesh Agarwal    description: Power regulator for speaker amps
34*00645b42SAnimesh Agarwal
35*00645b42SAnimesh Agarwal  audio-codec:
36*00645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/phandle
37*00645b42SAnimesh Agarwal    description: The phandle to the ES8328 audio codec
38*00645b42SAnimesh Agarwal
39*00645b42SAnimesh Agarwal  audio-routing:
40*00645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
41*00645b42SAnimesh Agarwal    description: |
42*00645b42SAnimesh Agarwal      A list of the connections between audio components. Each entry
43*00645b42SAnimesh Agarwal      is a pair of strings, the first being the connection's sink, the second
44*00645b42SAnimesh Agarwal      being the connection's source. Valid names could be power supplies,
45*00645b42SAnimesh Agarwal      ES8328 pins, and the jacks on the board:
46*00645b42SAnimesh Agarwal
47*00645b42SAnimesh Agarwal      Power supplies:
48*00645b42SAnimesh Agarwal        * audio-amp
49*00645b42SAnimesh Agarwal
50*00645b42SAnimesh Agarwal      ES8328 pins:
51*00645b42SAnimesh Agarwal        * LOUT1
52*00645b42SAnimesh Agarwal        * LOUT2
53*00645b42SAnimesh Agarwal        * ROUT1
54*00645b42SAnimesh Agarwal        * ROUT2
55*00645b42SAnimesh Agarwal        * LINPUT1
56*00645b42SAnimesh Agarwal        * LINPUT2
57*00645b42SAnimesh Agarwal        * RINPUT1
58*00645b42SAnimesh Agarwal        * RINPUT2
59*00645b42SAnimesh Agarwal        * Mic PGA
60*00645b42SAnimesh Agarwal
61*00645b42SAnimesh Agarwal      Board connectors:
62*00645b42SAnimesh Agarwal        * Headphone
63*00645b42SAnimesh Agarwal        * Speaker
64*00645b42SAnimesh Agarwal        * Mic Jack
65*00645b42SAnimesh Agarwal
66*00645b42SAnimesh Agarwal  mux-int-port:
67*00645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/uint32
68*00645b42SAnimesh Agarwal    description: The internal port of the i.MX audio muxer (AUDMUX)
69*00645b42SAnimesh Agarwal    enum: [1, 2, 7]
70*00645b42SAnimesh Agarwal    default: 1
71*00645b42SAnimesh Agarwal
72*00645b42SAnimesh Agarwal  mux-ext-port:
73*00645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/uint32
74*00645b42SAnimesh Agarwal    description: The external port of the i.MX audio muxer (AUDMIX)
75*00645b42SAnimesh Agarwal    enum: [3, 4, 5, 6]
76*00645b42SAnimesh Agarwal    default: 3
77*00645b42SAnimesh Agarwal
78*00645b42SAnimesh Agarwalrequired:
79*00645b42SAnimesh Agarwal  - compatible
80*00645b42SAnimesh Agarwal  - model
81*00645b42SAnimesh Agarwal  - ssi-controller
82*00645b42SAnimesh Agarwal  - jack-gpio
83*00645b42SAnimesh Agarwal  - audio-amp-supply
84*00645b42SAnimesh Agarwal  - audio-codec
85*00645b42SAnimesh Agarwal  - audio-routing
86*00645b42SAnimesh Agarwal  - mux-int-port
87*00645b42SAnimesh Agarwal  - mux-ext-port
88*00645b42SAnimesh Agarwal
89*00645b42SAnimesh AgarwalunevaluatedProperties: false
90*00645b42SAnimesh Agarwal
91*00645b42SAnimesh Agarwalexamples:
92*00645b42SAnimesh Agarwal  - |
93*00645b42SAnimesh Agarwal    sound {
94*00645b42SAnimesh Agarwal        compatible = "fsl,imx-audio-es8328";
95*00645b42SAnimesh Agarwal        model = "imx-audio-es8328";
96*00645b42SAnimesh Agarwal        ssi-controller = <&ssi1>;
97*00645b42SAnimesh Agarwal        audio-codec = <&codec>;
98*00645b42SAnimesh Agarwal        jack-gpio = <&gpio5 15 0>;
99*00645b42SAnimesh Agarwal        audio-amp-supply = <&reg_audio_amp>;
100*00645b42SAnimesh Agarwal        audio-routing =
101*00645b42SAnimesh Agarwal            "Speaker", "LOUT2",
102*00645b42SAnimesh Agarwal            "Speaker", "ROUT2",
103*00645b42SAnimesh Agarwal            "Speaker", "audio-amp",
104*00645b42SAnimesh Agarwal            "Headphone", "ROUT1",
105*00645b42SAnimesh Agarwal            "Headphone", "LOUT1",
106*00645b42SAnimesh Agarwal            "LINPUT1", "Mic Jack",
107*00645b42SAnimesh Agarwal            "RINPUT1", "Mic Jack",
108*00645b42SAnimesh Agarwal            "Mic Jack", "Mic Bias";
109*00645b42SAnimesh Agarwal        mux-int-port = <1>;
110*00645b42SAnimesh Agarwal        mux-ext-port = <3>;
111*00645b42SAnimesh Agarwal    };
112