* [PATCH 0/2] ASoC: fsl: make snd-soc-imx-sgtl5000 driver useable on i.MX6UL @ 2016-01-12 18:13 Lothar Waßmann 2016-01-12 18:13 ` [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver Lothar Waßmann 0 siblings, 1 reply; 10+ messages in thread From: Lothar Waßmann @ 2016-01-12 18:13 UTC (permalink / raw) To: Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Lothar Waßmann, Mark Brown, Nicolin Chen, Takashi Iwai, Timur Tabi, Xiubo Li, alsa-devel, linux-kernel, linuxppc-dev This patchset adds support for the i.MX6UL SoC to the imx-sgtl5000 sound driver. The first patch makes the audmux setup optional for the driver, since i.MX6UL does not have this unit. The second patch selects the SAI interface rather than the SSI interface for the i.MX6UL SoC. A patch to make the corresponding DTB changes has been sent separately. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver 2016-01-12 18:13 [PATCH 0/2] ASoC: fsl: make snd-soc-imx-sgtl5000 driver useable on i.MX6UL Lothar Waßmann @ 2016-01-12 18:13 ` Lothar Waßmann 2016-01-12 18:13 ` [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type Lothar Waßmann 2016-01-12 18:22 ` [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver Mark Brown 0 siblings, 2 replies; 10+ messages in thread From: Lothar Waßmann @ 2016-01-12 18:13 UTC (permalink / raw) To: Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Lothar Waßmann, Mark Brown, Nicolin Chen, Takashi Iwai, Timur Tabi, Xiubo Li, alsa-devel, linux-kernel, linuxppc-dev 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 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type 2016-01-12 18:13 ` [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver Lothar Waßmann @ 2016-01-12 18:13 ` Lothar Waßmann 2016-01-12 18:28 ` Timur Tabi 2016-01-13 13:08 ` [alsa-devel] " Fabio Estevam 2016-01-12 18:22 ` [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver Mark Brown 1 sibling, 2 replies; 10+ messages in thread From: Lothar Waßmann @ 2016-01-12 18:13 UTC (permalink / raw) To: Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Lothar Waßmann, Mark Brown, Nicolin Chen, Takashi Iwai, Timur Tabi, Xiubo Li, alsa-devel, linux-kernel, linuxppc-dev 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 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type 2016-01-12 18:13 ` [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type Lothar Waßmann @ 2016-01-12 18:28 ` Timur Tabi 2016-01-13 12:38 ` Lothar Waßmann 2016-01-13 13:08 ` [alsa-devel] " Fabio Estevam 1 sibling, 1 reply; 10+ messages in thread From: Timur Tabi @ 2016-01-12 18:28 UTC (permalink / raw) To: Lothar Waßmann, Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Mark Brown, Nicolin Chen, Takashi Iwai, Xiubo Li, alsa-devel, linux-kernel, linuxppc-dev 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. ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type 2016-01-12 18:28 ` Timur Tabi @ 2016-01-13 12:38 ` Lothar Waßmann 2016-01-13 14:10 ` Timur Tabi 0 siblings, 1 reply; 10+ messages in thread From: Lothar Waßmann @ 2016-01-13 12:38 UTC (permalink / raw) To: Timur Tabi Cc: Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Mark Brown, Nicolin Chen, Takashi Iwai, Xiubo Li, alsa-devel, linux-kernel, linuxppc-dev Hi, > Lothar Wa=C3=9Fmann 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 >=20 > 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=C3=9Fmann ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type 2016-01-13 12:38 ` Lothar Waßmann @ 2016-01-13 14:10 ` Timur Tabi 0 siblings, 0 replies; 10+ messages in thread From: Timur Tabi @ 2016-01-13 14:10 UTC (permalink / raw) To: Lothar Waßmann Cc: Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Mark Brown, Nicolin Chen, Takashi Iwai, Xiubo Li, alsa-devel, linux-kernel, linuxppc-dev 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. ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [alsa-devel] [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type 2016-01-12 18:13 ` [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type Lothar Waßmann 2016-01-12 18:28 ` Timur Tabi @ 2016-01-13 13:08 ` Fabio Estevam 2016-01-13 14:02 ` Lothar Waßmann 1 sibling, 1 reply; 10+ messages in thread From: Fabio Estevam @ 2016-01-13 13:08 UTC (permalink / raw) To: Lothar Waßmann Cc: Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Mark Brown, Nicolin Chen, Takashi Iwai, Timur Tabi, Xiubo Li, alsa-devel@alsa-project.org, linux-kernel, linuxppc-dev@lists.ozlabs.org On Tue, Jan 12, 2016 at 4:13 PM, Lothar Wa=C3=9Fmann <LW@karo-electronics.d= e> 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. ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [alsa-devel] [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type 2016-01-13 13:08 ` [alsa-devel] " Fabio Estevam @ 2016-01-13 14:02 ` Lothar Waßmann 0 siblings, 0 replies; 10+ messages in thread From: Lothar Waßmann @ 2016-01-13 14:02 UTC (permalink / raw) To: Fabio Estevam Cc: Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Mark Brown, Nicolin Chen, Takashi Iwai, Timur Tabi, Xiubo Li, alsa-devel@alsa-project.org, linux-kernel, linuxppc-dev@lists.ozlabs.org Hi, > On Tue, Jan 12, 2016 at 4:13 PM, Lothar Wa=C3=9Fmann <LW@karo-electronics= .de> wrote: >=20 > > 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 >=20 > 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=C3=9Fmann ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver 2016-01-12 18:13 ` [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver Lothar Waßmann 2016-01-12 18:13 ` [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type Lothar Waßmann @ 2016-01-12 18:22 ` Mark Brown 2016-01-13 11:11 ` Lothar Waßmann 1 sibling, 1 reply; 10+ messages in thread From: Mark Brown @ 2016-01-12 18:22 UTC (permalink / raw) To: Lothar Waßmann Cc: Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Nicolin Chen, Takashi Iwai, Timur Tabi, Xiubo Li, alsa-devel, linux-kernel, linuxppc-dev [-- Attachment #1: Type: text/plain, Size: 407 bytes --] 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? [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 473 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver 2016-01-12 18:22 ` [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver Mark Brown @ 2016-01-13 11:11 ` Lothar Waßmann 0 siblings, 0 replies; 10+ messages in thread From: Lothar Waßmann @ 2016-01-13 11:11 UTC (permalink / raw) To: Mark Brown Cc: Arnd Bergmann, Fabio Estevam, Jaroslav Kysela, Liam Girdwood, Nicolin Chen, Takashi Iwai, Timur Tabi, Xiubo Li, alsa-devel, linux-kernel, linuxppc-dev Hi, > On Tue, Jan 12, 2016 at 07:13:30PM +0100, Lothar Wa=C3=9Fmann wrote: >=20 > > 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. >=20 > 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=C3=9Fmann ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2016-01-13 14:10 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-01-12 18:13 [PATCH 0/2] ASoC: fsl: make snd-soc-imx-sgtl5000 driver useable on i.MX6UL Lothar Waßmann 2016-01-12 18:13 ` [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver Lothar Waßmann 2016-01-12 18:13 ` [PATCH 2/2] ASoC: fsl: select SND_SOC_FSL_SAI or SND_SOC_FSL_SSI depending on SoC type Lothar Waßmann 2016-01-12 18:28 ` Timur Tabi 2016-01-13 12:38 ` Lothar Waßmann 2016-01-13 14:10 ` Timur Tabi 2016-01-13 13:08 ` [alsa-devel] " Fabio Estevam 2016-01-13 14:02 ` Lothar Waßmann 2016-01-12 18:22 ` [PATCH 1/2] ASoC: fsl: imx-sgtl5000: make audmux optional for imx sound driver Mark Brown 2016-01-13 11:11 ` Lothar Waßmann
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).