ASoC: fsl-asoc-card: add support for TLV320AIC32x4 codec
authorMatthias Schiffer <matthias.schiffer@ew.tq-group.com>
Fri, 21 Aug 2020 07:11:53 +0000 (09:11 +0200)
committerMark Brown <broonie@kernel.org>
Fri, 21 Aug 2020 14:24:40 +0000 (15:24 +0100)
The TLV320AIC32x4 is commonly used on TQ-Systems starterkit mainboards
for i.MX-based SoMs (i.MX6Q/DL, i.MX6UL, i.MX7) and LS1021A.

Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
Acked-by: Nicolin Chen <nicoleotsuka@gmail.com>
Link: https://lore.kernel.org/r/20200821071153.7317-2-matthias.schiffer@ew.tq-group.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/fsl/Kconfig
sound/soc/fsl/fsl-asoc-card.c

index 1c4ca5e..3f76ff7 100644 (file)
@@ -324,7 +324,7 @@ config SND_SOC_FSL_ASOC_CARD
        help
         ALSA SoC Audio support with ASRC feature for Freescale SoCs that have
         ESAI/SAI/SSI and connect with external CODECs such as WM8962, CS42888,
-        CS4271, CS4272 and SGTL5000.
+        CS4271, CS4272, SGTL5000 and TLV320AIC32x4.
         Say Y if you want to add support for Freescale Generic ASoC Sound Card.
 
 config SND_SOC_IMX_AUDMIX
index 32f8f75..a2dd3b6 100644 (file)
@@ -617,6 +617,9 @@ static int fsl_asoc_card_probe(struct platform_device *pdev)
                codec_dai_name = "sgtl5000";
                priv->codec_priv.mclk_id = SGTL5000_SYSCLK;
                priv->dai_fmt |= SND_SOC_DAIFMT_CBM_CFM;
+       } else if (of_device_is_compatible(np, "fsl,imx-audio-tlv320aic32x4")) {
+               codec_dai_name = "tlv320aic32x4-hifi";
+               priv->dai_fmt |= SND_SOC_DAIFMT_CBM_CFM;
        } else if (of_device_is_compatible(np, "fsl,imx-audio-wm8962")) {
                codec_dai_name = "wm8962";
                priv->codec_priv.mclk_id = WM8962_SYSCLK_MCLK;
@@ -860,6 +863,7 @@ static const struct of_device_id fsl_asoc_card_dt_ids[] = {
        { .compatible = "fsl,imx-audio-ac97", },
        { .compatible = "fsl,imx-audio-cs42888", },
        { .compatible = "fsl,imx-audio-cs427x", },
+       { .compatible = "fsl,imx-audio-tlv320aic32x4", },
        { .compatible = "fsl,imx-audio-sgtl5000", },
        { .compatible = "fsl,imx-audio-wm8962", },
        { .compatible = "fsl,imx-audio-wm8960", },