MLK-9684-3: ASoC: imx-si476x: SRCK and SRFS is used for fm in imx6sx
authorShengjiu Wang <shengjiu.wang@freescale.com>
Mon, 13 Oct 2014 03:27:12 +0000 (11:27 +0800)
committerNitin Garg <nitin.garg@nxp.com>
Mon, 19 Mar 2018 19:48:14 +0000 (14:48 -0500)
Configure the aumux port to output SRCK and SRFS from STCK and STFS
of internal port when use the SYN mode.

Signed-off-by: Shengjiu Wang <shengjiu.wang@freescale.com>
(cherry picked from commit f4428f5617916863b5410afea5614cc52190f1a8)
(cherry picked from commit 5335e2a2d5f0f2e1b96aa920425203912b1e34d9)

sound/soc/fsl/imx-si476x.c

index 073f3ad..276ae46 100644 (file)
@@ -32,6 +32,16 @@ static int imx_audmux_config(int slave, int master)
        pdcr = IMX_AUDMUX_V2_PDCR_RXDSEL(slave);
        imx_audmux_v2_configure_port(master, ptcr, pdcr);
 
+       /*
+        * According to RM, RCLKDIR and SYN should not be changed at same time.
+        * So separate to two step for configuring this port.
+        */
+       ptcr |= IMX_AUDMUX_V2_PTCR_RFSDIR |
+               IMX_AUDMUX_V2_PTCR_RFSEL(slave) |
+               IMX_AUDMUX_V2_PTCR_RCLKDIR |
+               IMX_AUDMUX_V2_PTCR_RCSEL(slave);
+       imx_audmux_v2_configure_port(master, ptcr, pdcr);
+
        ptcr = IMX_AUDMUX_V2_PTCR_SYN;
        pdcr = IMX_AUDMUX_V2_PDCR_RXDSEL(master);
        imx_audmux_v2_configure_port(slave, ptcr, pdcr);