xref: /linux/Documentation/devicetree/bindings/sound/fsl,imx-audio-es8328.yaml (revision c771600c6af14749609b49565ffb4cac2959710d)
100645b42SAnimesh Agarwal# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
200645b42SAnimesh Agarwal%YAML 1.2
300645b42SAnimesh Agarwal---
400645b42SAnimesh Agarwal$id: http://devicetree.org/schemas/sound/fsl,imx-audio-es8328.yaml#
500645b42SAnimesh Agarwal$schema: http://devicetree.org/meta-schemas/core.yaml#
600645b42SAnimesh Agarwal
700645b42SAnimesh Agarwaltitle: Freescale i.MX audio complex with ES8328 codec
800645b42SAnimesh Agarwal
900645b42SAnimesh Agarwalmaintainers:
1000645b42SAnimesh Agarwal  - Shawn Guo <shawnguo@kernel.org>
1100645b42SAnimesh Agarwal  - Sascha Hauer <s.hauer@pengutronix.de>
1200645b42SAnimesh Agarwal
1300645b42SAnimesh AgarwalallOf:
1400645b42SAnimesh Agarwal  - $ref: sound-card-common.yaml#
1500645b42SAnimesh Agarwal
1600645b42SAnimesh Agarwalproperties:
1700645b42SAnimesh Agarwal  compatible:
1800645b42SAnimesh Agarwal    const: fsl,imx-audio-es8328
1900645b42SAnimesh Agarwal
2000645b42SAnimesh Agarwal  model:
2100645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/string
2200645b42SAnimesh Agarwal    description: The user-visible name of this sound complex
2300645b42SAnimesh Agarwal
2400645b42SAnimesh Agarwal  ssi-controller:
2500645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/phandle
2600645b42SAnimesh Agarwal    description: The phandle of the i.MX SSI controller
2700645b42SAnimesh Agarwal
2800645b42SAnimesh Agarwal  jack-gpio:
2900645b42SAnimesh Agarwal    description: Optional GPIO for headphone jack
3000645b42SAnimesh Agarwal    maxItems: 1
3100645b42SAnimesh Agarwal
3200645b42SAnimesh Agarwal  audio-amp-supply:
3300645b42SAnimesh Agarwal    description: Power regulator for speaker amps
3400645b42SAnimesh Agarwal
3500645b42SAnimesh Agarwal  audio-codec:
3600645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/phandle
3700645b42SAnimesh Agarwal    description: The phandle to the ES8328 audio codec
3800645b42SAnimesh Agarwal
3900645b42SAnimesh Agarwal  audio-routing:
4000645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/non-unique-string-array
4100645b42SAnimesh Agarwal    description: |
4200645b42SAnimesh Agarwal      A list of the connections between audio components. Each entry
4300645b42SAnimesh Agarwal      is a pair of strings, the first being the connection's sink, the second
4400645b42SAnimesh Agarwal      being the connection's source. Valid names could be power supplies,
4500645b42SAnimesh Agarwal      ES8328 pins, and the jacks on the board:
4600645b42SAnimesh Agarwal
4700645b42SAnimesh Agarwal      Power supplies:
4800645b42SAnimesh Agarwal        * audio-amp
4900645b42SAnimesh Agarwal
5000645b42SAnimesh Agarwal      ES8328 pins:
5100645b42SAnimesh Agarwal        * LOUT1
5200645b42SAnimesh Agarwal        * LOUT2
5300645b42SAnimesh Agarwal        * ROUT1
5400645b42SAnimesh Agarwal        * ROUT2
5500645b42SAnimesh Agarwal        * LINPUT1
5600645b42SAnimesh Agarwal        * LINPUT2
5700645b42SAnimesh Agarwal        * RINPUT1
5800645b42SAnimesh Agarwal        * RINPUT2
5900645b42SAnimesh Agarwal        * Mic PGA
6000645b42SAnimesh Agarwal
6100645b42SAnimesh Agarwal      Board connectors:
6200645b42SAnimesh Agarwal        * Headphone
6300645b42SAnimesh Agarwal        * Speaker
6400645b42SAnimesh Agarwal        * Mic Jack
6500645b42SAnimesh Agarwal
6600645b42SAnimesh Agarwal  mux-int-port:
6700645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/uint32
6800645b42SAnimesh Agarwal    description: The internal port of the i.MX audio muxer (AUDMUX)
6900645b42SAnimesh Agarwal    enum: [1, 2, 7]
7000645b42SAnimesh Agarwal    default: 1
7100645b42SAnimesh Agarwal
7200645b42SAnimesh Agarwal  mux-ext-port:
7300645b42SAnimesh Agarwal    $ref: /schemas/types.yaml#/definitions/uint32
7400645b42SAnimesh Agarwal    description: The external port of the i.MX audio muxer (AUDMIX)
7500645b42SAnimesh Agarwal    enum: [3, 4, 5, 6]
7600645b42SAnimesh Agarwal    default: 3
7700645b42SAnimesh Agarwal
7800645b42SAnimesh Agarwalrequired:
7900645b42SAnimesh Agarwal  - compatible
8000645b42SAnimesh Agarwal  - model
8100645b42SAnimesh Agarwal  - ssi-controller
8200645b42SAnimesh Agarwal  - jack-gpio
8300645b42SAnimesh Agarwal  - audio-amp-supply
8400645b42SAnimesh Agarwal  - audio-codec
8500645b42SAnimesh Agarwal  - audio-routing
8600645b42SAnimesh Agarwal  - mux-int-port
8700645b42SAnimesh Agarwal  - mux-ext-port
8800645b42SAnimesh Agarwal
8900645b42SAnimesh AgarwalunevaluatedProperties: false
9000645b42SAnimesh Agarwal
9100645b42SAnimesh Agarwalexamples:
9200645b42SAnimesh Agarwal  - |
9300645b42SAnimesh Agarwal    sound {
9400645b42SAnimesh Agarwal        compatible = "fsl,imx-audio-es8328";
9500645b42SAnimesh Agarwal        model = "imx-audio-es8328";
9600645b42SAnimesh Agarwal        ssi-controller = <&ssi1>;
9700645b42SAnimesh Agarwal        audio-codec = <&codec>;
9800645b42SAnimesh Agarwal        jack-gpio = <&gpio5 15 0>;
9900645b42SAnimesh Agarwal        audio-amp-supply = <&reg_audio_amp>;
10000645b42SAnimesh Agarwal        audio-routing =
10100645b42SAnimesh Agarwal            "Speaker", "LOUT2",
10200645b42SAnimesh Agarwal            "Speaker", "ROUT2",
10300645b42SAnimesh Agarwal            "Speaker", "audio-amp",
10400645b42SAnimesh Agarwal            "Headphone", "ROUT1",
10500645b42SAnimesh Agarwal            "Headphone", "LOUT1",
10600645b42SAnimesh Agarwal            "LINPUT1", "Mic Jack",
10700645b42SAnimesh Agarwal            "RINPUT1", "Mic Jack",
10800645b42SAnimesh Agarwal            "Mic Jack", "Mic Bias";
10900645b42SAnimesh Agarwal        mux-int-port = <1>;
11000645b42SAnimesh Agarwal        mux-ext-port = <3>;
11100645b42SAnimesh Agarwal    };
112