Wire up the amplifier that drives the builtin speaker.

Signed-off-by: Guido Günther <a...@sigxcpu.org>
---
 .../dts/freescale/imx8mq-librem5-devkit.dts   | 21 +++++++++++++++++--
 1 file changed, 19 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts 
b/arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts
index 0c0b12c90363..d01bed5eb9e0 100644
--- a/arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts
+++ b/arch/arm64/boot/dts/freescale/imx8mq-librem5-devkit.dts
@@ -165,19 +165,21 @@ wwan_codec: sound-wwan-codec {
 
        sound {
                compatible = "simple-audio-card";
+               simple-audio-card,aux-devs = <&speaker_amp>;
                simple-audio-card,name = "Librem 5 Devkit";
                simple-audio-card,format = "i2s";
                simple-audio-card,widgets =
                        "Microphone", "Microphone Jack",
                        "Headphone", "Headphone Jack",
-                       "Speaker", "Speaker Ext",
+                       "Speaker", "Builtin Speaker",
                        "Line", "Line In Jack";
                simple-audio-card,routing =
                        "MIC_IN", "Microphone Jack",
                        "Microphone Jack", "Mic Bias",
                        "LINE_IN", "Line In Jack",
                        "Headphone Jack", "HP_OUT",
-                       "Speaker Ext", "LINE_OUT";
+                       "Builtin Speaker", "Speaker Amp OUTR",
+                       "Speaker Amp INR", "LINE_OUT";
 
                simple-audio-card,cpu {
                        sound-dai = <&sai2>;
@@ -207,6 +209,15 @@ telephony_link_master: simple-audio-card,codec {
                };
        };
 
+       speaker_amp: speaker-amp {
+               compatible = "simple-audio-amplifier";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_spkamp>;
+               VCC-supply = <&reg_3v3_p>;
+               sound-name-prefix = "Speaker Amp";
+               enable-gpios = <&gpio5 3 GPIO_ACTIVE_HIGH>;
+       };
+
        vibrator {
                compatible = "gpio-vibrator";
                pinctrl-names = "default";
@@ -641,6 +652,12 @@ MX8MQ_IOMUXC_SAI5_RXFS_GPIO3_IO19  0x8  /* IMU_INT */
                >;
        };
 
+       pinctrl_spkamp: spkamp {
+               fsl,pins = <
+                       MX8MQ_IOMUXC_SPDIF_TX_GPIO5_IO3         0x81  /* MUTE */
+               >;
+       };
+
        pinctrl_pmic: pmicgrp {
                fsl,pins = <
                        MX8MQ_IOMUXC_GPIO1_IO03_GPIO1_IO3       0x80  /* PMIC 
intr */
-- 
2.30.0

Reply via email to