Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1307718 > unrolled thread

[PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver

Started byLothar Waßmann <LW@KARO-electronics.de>
First post2016-01-12 19:20 +0100
Last post2016-01-13 12:20 +0100
Articles 9 — 4 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver Lothar Waßmann <LW@KARO-electronics.de> - 2016-01-12 19:20 +0100
    [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type Lothar Waßmann <LW@KARO-electronics.de> - 2016-01-12 19:20 +0100
      Re: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI  depending on SoC type Timur Tabi <timur@tabi.org> - 2016-01-12 19:30 +0100
        Re: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or  SND_SOC_FSL_SSI depending on SoC type Lothar Waßmann <LW@KARO-electronics.de> - 2016-01-13 13:40 +0100
          Re: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI  depending on SoC type Timur Tabi <timur@tabi.org> - 2016-01-13 15:20 +0100
      Re: [alsa-devel] [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or  SND_SOC_FSL_SSI depending on SoC type Fabio Estevam <festevam@gmail.com> - 2016-01-13 14:10 +0100
        Re: [alsa-devel] [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or  SND_SOC_FSL_SSI depending on SoC type Lothar Waßmann <LW@KARO-electronics.de> - 2016-01-13 15:10 +0100
    Re: [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for  imx sound driver Mark Brown <broonie@kernel.org> - 2016-01-12 19:30 +0100
      Re: [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for  imx sound driver Lothar Waßmann <LW@KARO-electronics.de> - 2016-01-13 12:20 +0100

#1307718 — [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver

FromLothar Waßmann <LW@KARO-electronics.de>
Date2016-01-12 19:20 +0100
Subject[PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver
Message-ID<qQbHX-4HB-1@gated-at.bofh.it>
i.MX6UL does not have the audio multiplexer (AUDMUX) like e.g. i.MX6Q,
but apart from that can use the same audio driver. Make audmux
optional for the imx-sgtl5000 driver, so it can be used on i.MX6UL
too. Also i.MX6UL requires use of the SAI interface rather than SSI.

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
---
 sound/soc/fsl/imx-sgtl5000.c | 70 +++++++++++++++++++++++---------------------
 1 file changed, 36 insertions(+), 34 deletions(-)

diff --git a/sound/soc/fsl/imx-sgtl5000.c b/sound/soc/fsl/imx-sgtl5000.c
index b99e0b5..7cefb40 100644
--- a/sound/soc/fsl/imx-sgtl5000.c
+++ b/sound/soc/fsl/imx-sgtl5000.c
@@ -65,40 +65,42 @@ static int imx_sgtl5000_probe(struct platform_device *pdev)
 	int int_port, ext_port;
 	int ret;
 
-	ret = of_property_read_u32(np, "mux-int-port", &int_port);
-	if (ret) {
-		dev_err(&pdev->dev, "mux-int-port missing or invalid\n");
-		return ret;
-	}
-	ret = of_property_read_u32(np, "mux-ext-port", &ext_port);
-	if (ret) {
-		dev_err(&pdev->dev, "mux-ext-port missing or invalid\n");
-		return ret;
-	}
-
-	/*
-	 * The port numbering in the hardware manual starts at 1, while
-	 * the audmux API expects it starts at 0.
-	 */
-	int_port--;
-	ext_port--;
-	ret = imx_audmux_v2_configure_port(int_port,
-			IMX_AUDMUX_V2_PTCR_SYN |
-			IMX_AUDMUX_V2_PTCR_TFSEL(ext_port) |
-			IMX_AUDMUX_V2_PTCR_TCSEL(ext_port) |
-			IMX_AUDMUX_V2_PTCR_TFSDIR |
-			IMX_AUDMUX_V2_PTCR_TCLKDIR,
-			IMX_AUDMUX_V2_PDCR_RXDSEL(ext_port));
-	if (ret) {
-		dev_err(&pdev->dev, "audmux internal port setup failed\n");
-		return ret;
-	}
-	ret = imx_audmux_v2_configure_port(ext_port,
-			IMX_AUDMUX_V2_PTCR_SYN,
-			IMX_AUDMUX_V2_PDCR_RXDSEL(int_port));
-	if (ret) {
-		dev_err(&pdev->dev, "audmux external port setup failed\n");
-		return ret;
+	if (!of_property_read_bool(np, "fsl,no-audmux")) {
+		ret = of_property_read_u32(np, "mux-int-port", &int_port);
+		if (ret) {
+			dev_err(&pdev->dev, "mux-int-port missing or invalid\n");
+			return ret;
+		}
+		ret = of_property_read_u32(np, "mux-ext-port", &ext_port);
+		if (ret) {
+			dev_err(&pdev->dev, "mux-ext-port missing or invalid\n");
+			return ret;
+		}
+
+		/*
+		 * The port numbering in the hardware manual starts at 1, while
+		 * the audmux API expects it starts at 0.
+		 */
+		int_port--;
+		ext_port--;
+		ret = imx_audmux_v2_configure_port(int_port,
+				IMX_AUDMUX_V2_PTCR_SYN |
+				IMX_AUDMUX_V2_PTCR_TFSEL(ext_port) |
+				IMX_AUDMUX_V2_PTCR_TCSEL(ext_port) |
+				IMX_AUDMUX_V2_PTCR_TFSDIR |
+				IMX_AUDMUX_V2_PTCR_TCLKDIR,
+				IMX_AUDMUX_V2_PDCR_RXDSEL(ext_port));
+		if (ret) {
+			dev_err(&pdev->dev, "audmux internal port setup failed\n");
+			return ret;
+		}
+		ret = imx_audmux_v2_configure_port(ext_port,
+				IMX_AUDMUX_V2_PTCR_SYN,
+				IMX_AUDMUX_V2_PDCR_RXDSEL(int_port));
+		if (ret) {
+			dev_err(&pdev->dev, "audmux external port setup failed\n");
+			return ret;
+		}
 	}
 
 	ssi_np = of_parse_phandle(pdev->dev.of_node, "ssi-controller", 0);
-- 
2.1.4

[toc] | [next] | [standalone]


#1307726 — [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type

FromLothar Waßmann <LW@KARO-electronics.de>
Date2016-01-12 19:20 +0100
Subject[PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type
Message-ID<qQbHZ-4HB-25@gated-at.bofh.it>
In reply to#1307718
i.MX6UL does not provide an SSI interface like the other i.MX6 SoCs,
but only an SAI interface.
Select the appropriate interface(s) depending on the enabled SoC types.

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
---
 sound/soc/fsl/Kconfig | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/sound/soc/fsl/Kconfig b/sound/soc/fsl/Kconfig
index 14dfdee..c128823 100644
--- a/sound/soc/fsl/Kconfig
+++ b/sound/soc/fsl/Kconfig
@@ -258,7 +258,8 @@ config SND_SOC_IMX_SGTL5000
 	select SND_SOC_SGTL5000
 	select SND_SOC_IMX_PCM_DMA
 	select SND_SOC_IMX_AUDMUX
-	select SND_SOC_FSL_SSI
+	select SND_SOC_FSL_SAI if SOC_IMX6UL
+	select SND_SOC_FSL_SSI if SOC_IMX6Q || SOC_IMX6SL || SOC_IMX6SX
 	help
 	  Say Y if you want to add support for SoC audio on an i.MX board with
 	  a sgtl5000 codec.
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1307731 — Re: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type

FromTimur Tabi <timur@tabi.org>
Date2016-01-12 19:30 +0100
SubjectRe: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type
Message-ID<qQbRD-4Np-3@gated-at.bofh.it>
In reply to#1307726
Lothar Waßmann wrote:
> -	select SND_SOC_FSL_SSI
> +	select SND_SOC_FSL_SAI if SOC_IMX6UL
> +	select SND_SOC_FSL_SSI if SOC_IMX6Q || SOC_IMX6SL || SOC_IMX6SX

I don't think this is compatible with a multiarch kernel.

[toc] | [prev] | [next] | [standalone]


#1308367 — Re: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type

FromLothar Waßmann <LW@KARO-electronics.de>
Date2016-01-13 13:40 +0100
SubjectRe: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type
Message-ID<qQsSv-89F-33@gated-at.bofh.it>
In reply to#1307731
Hi,

> Lothar Waßmann wrote:
> > -	select SND_SOC_FSL_SSI
> > +	select SND_SOC_FSL_SAI if SOC_IMX6UL
> > +	select SND_SOC_FSL_SSI if SOC_IMX6Q || SOC_IMX6SL || SOC_IMX6SX
> 
> I don't think this is compatible with a multiarch kernel.
>
Why? If more than one of the IMX6 SoCs are selected, both interfaces
may be selected at the same time without any harm.


Lothar Waßmann

[toc] | [prev] | [next] | [standalone]


#1308446 — Re: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type

FromTimur Tabi <timur@tabi.org>
Date2016-01-13 15:20 +0100
SubjectRe: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type
Message-ID<qQurg-Sd-11@gated-at.bofh.it>
In reply to#1308367
Lothar Waßmann wrote:
> Why? If more than one of the IMX6 SoCs are selected, both interfaces
> may be selected at the same time without any harm.

Oh, ok.  I thought the point behind the patch was that you *souldn't* 
enable the the SSI driver on an i.MX6UL.

[toc] | [prev] | [next] | [standalone]


#1308379 — Re: [alsa-devel] [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type

FromFabio Estevam <festevam@gmail.com>
Date2016-01-13 14:10 +0100
SubjectRe: [alsa-devel] [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type
Message-ID<qQtlw-9v-3@gated-at.bofh.it>
In reply to#1307726
On Tue, Jan 12, 2016 at 4:13 PM, Lothar Waßmann <LW@karo-electronics.de> wrote:

> diff --git a/sound/soc/fsl/Kconfig b/sound/soc/fsl/Kconfig
> index 14dfdee..c128823 100644
> --- a/sound/soc/fsl/Kconfig
> +++ b/sound/soc/fsl/Kconfig
> @@ -258,7 +258,8 @@ config SND_SOC_IMX_SGTL5000
>         select SND_SOC_SGTL5000
>         select SND_SOC_IMX_PCM_DMA
>         select SND_SOC_IMX_AUDMUX
> -       select SND_SOC_FSL_SSI
> +       select SND_SOC_FSL_SAI if SOC_IMX6UL
> +       select SND_SOC_FSL_SSI if SOC_IMX6Q || SOC_IMX6SL || SOC_IMX6SX

MX6SX has SSI and SAI interfaces.

[toc] | [prev] | [next] | [standalone]


#1308443 — Re: [alsa-devel] [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type

FromLothar Waßmann <LW@KARO-electronics.de>
Date2016-01-13 15:10 +0100
SubjectRe: [alsa-devel] [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type
Message-ID<qQuhB-Oj-41@gated-at.bofh.it>
In reply to#1308379
Hi,

> On Tue, Jan 12, 2016 at 4:13 PM, Lothar Waßmann <LW@karo-electronics.de> wrote:
> 
> > diff --git a/sound/soc/fsl/Kconfig b/sound/soc/fsl/Kconfig
> > index 14dfdee..c128823 100644
> > --- a/sound/soc/fsl/Kconfig
> > +++ b/sound/soc/fsl/Kconfig
> > @@ -258,7 +258,8 @@ config SND_SOC_IMX_SGTL5000
> >         select SND_SOC_SGTL5000
> >         select SND_SOC_IMX_PCM_DMA
> >         select SND_SOC_IMX_AUDMUX
> > -       select SND_SOC_FSL_SSI
> > +       select SND_SOC_FSL_SAI if SOC_IMX6UL
> > +       select SND_SOC_FSL_SSI if SOC_IMX6Q || SOC_IMX6SL || SOC_IMX6SX
> 
> MX6SX has SSI and SAI interfaces.
>
I chose the settings, so that the default behaviour before this patch is
not changed. The other interface can still be enabled by the user.
[Yes, I know this is a case of the frowned-upon use of 'select' with
user-visible symbols, but this is as things currently are]


Lothar Waßmann

[toc] | [prev] | [next] | [standalone]


#1307733 — Re: [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver

FromMark Brown <broonie@kernel.org>
Date2016-01-12 19:30 +0100
SubjectRe: [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver
Message-ID<qQbRE-4Np-13@gated-at.bofh.it>
In reply to#1307718

[Multipart message — attachments visible in raw view] — view raw

On Tue, Jan 12, 2016 at 07:13:30PM +0100, Lothar Waßmann wrote:

> i.MX6UL does not have the audio multiplexer (AUDMUX) like e.g. i.MX6Q,
> but apart from that can use the same audio driver. Make audmux
> optional for the imx-sgtl5000 driver, so it can be used on i.MX6UL
> too. Also i.MX6UL requires use of the SAI interface rather than SSI.

If it doesn't have the audmux can you use simple-card?

[toc] | [prev] | [next] | [standalone]


#1308299 — Re: [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver

FromLothar Waßmann <LW@KARO-electronics.de>
Date2016-01-13 12:20 +0100
SubjectRe: [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver
Message-ID<qQrD4-7jL-21@gated-at.bofh.it>
In reply to#1307733
Hi,

> On Tue, Jan 12, 2016 at 07:13:30PM +0100, Lothar Waßmann wrote:
> 
> > i.MX6UL does not have the audio multiplexer (AUDMUX) like e.g. i.MX6Q,
> > but apart from that can use the same audio driver. Make audmux
> > optional for the imx-sgtl5000 driver, so it can be used on i.MX6UL
> > too. Also i.MX6UL requires use of the SAI interface rather than SSI.
> 
> If it doesn't have the audmux can you use simple-card?
>
I'll have a look at it. Thanks for the hint.


Lothar Waßmann

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web