diff mbox

[14/14] ARM: dts: imx6: make audmux optional for i.MX6UL sound driver

Message ID 1452619291-13625-15-git-send-email-LW@KARO-electronics.de
State New
Headers show

Commit Message

Lothar Waßmann Jan. 12, 2016, 5:21 p.m. UTC
i.MX6UL does not have the audio multiplexer (AUDMUX) like the other
i.MX6 SoCs, 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. Furthermore i.MX6UL requires use of the SAI interface
rather than SSI. Change the DTS documentation accordingly.

The patch with the corresponding changes to the imx-sgtl5000 driver
will be sent separately.

Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
---
 .../bindings/sound/imx-audio-sgtl5000.txt          | 26 +++++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

Comments

Rob Herring (Arm) Jan. 15, 2016, 2:38 a.m. UTC | #1
On Tue, Jan 12, 2016 at 06:21:31PM +0100, Lothar Waßmann wrote:
> i.MX6UL does not have the audio multiplexer (AUDMUX) like the other
> i.MX6 SoCs, 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. Furthermore i.MX6UL requires use of the SAI interface
> rather than SSI. Change the DTS documentation accordingly.
> 
> The patch with the corresponding changes to the imx-sgtl5000 driver
> will be sent separately.
> 
> Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
> ---
>  .../bindings/sound/imx-audio-sgtl5000.txt          | 26 +++++++++++++++++++++-
>  1 file changed, 25 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt b/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
> index 2f89db8..fd46671 100644
> --- a/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
> +++ b/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
> @@ -6,7 +6,7 @@ Required properties:
>  
>    - model		: The user-visible name of this sound complex
>  
> -  - ssi-controller	: The phandle of the i.MX SSI controller
> +  - ssi-controller	: The phandle of the i.MX SSI (or SAI) controller
>  
>    - audio-codec		: The phandle of the SGTL5000 audio codec
>  
> @@ -39,6 +39,16 @@ Required properties:
>  Note: The AUDMUX port numbering should start at 1, which is consistent with
>  hardware manual.
>  
> +Optional properties:
> +  - fsl,no-audmux	: boolean
> +    			  Required for i.MX6UL (and maybe other SoCs)
> +    			  which don't have an AUDMUX, but still
> +			  feature the same audio subsystem otherwise.

It would have been better if this was a phandle to the audmux and lack 
of the property meant no audmux. Too late for that I guess.

Acked-by: Rob Herring <robh@kernel.org>

Rob
Lothar Waßmann Jan. 15, 2016, 6:34 a.m. UTC | #2
Hi,

> On Tue, Jan 12, 2016 at 06:21:31PM +0100, Lothar Waßmann wrote:
> > i.MX6UL does not have the audio multiplexer (AUDMUX) like the other
> > i.MX6 SoCs, 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. Furthermore i.MX6UL requires use of the SAI interface
> > rather than SSI. Change the DTS documentation accordingly.
> > 
> > The patch with the corresponding changes to the imx-sgtl5000 driver
> > will be sent separately.
> > 
> > Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
> > ---
> >  .../bindings/sound/imx-audio-sgtl5000.txt          | 26 +++++++++++++++++++++-
> >  1 file changed, 25 insertions(+), 1 deletion(-)
> > 
> > diff --git a/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt b/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
> > index 2f89db8..fd46671 100644
> > --- a/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
> > +++ b/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
> > @@ -6,7 +6,7 @@ Required properties:
> >  
> >    - model		: The user-visible name of this sound complex
> >  
> > -  - ssi-controller	: The phandle of the i.MX SSI controller
> > +  - ssi-controller	: The phandle of the i.MX SSI (or SAI) controller
> >  
> >    - audio-codec		: The phandle of the SGTL5000 audio codec
> >  
> > @@ -39,6 +39,16 @@ Required properties:
> >  Note: The AUDMUX port numbering should start at 1, which is consistent with
> >  hardware manual.
> >  
> > +Optional properties:
> > +  - fsl,no-audmux	: boolean
> > +    			  Required for i.MX6UL (and maybe other SoCs)
> > +    			  which don't have an AUDMUX, but still
> > +			  feature the same audio subsystem otherwise.
> 
> It would have been better if this was a phandle to the audmux and lack 
> of the property meant no audmux. Too late for that I guess.
> 
That would mean, that all existing dtbs would have to be changed, and
older DTBs with newer kernels wouldn't work.

But this patch is obsolete anyway. The simple-card driver can be used
instead of the imx-audio-sgtl5000 as Mark Brown suggested in
<20160112182253.GD6588@sirena.org.uk>. I'll post an updated patch series soon.


Lothar Waßmann
diff mbox

Patch

diff --git a/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt b/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
index 2f89db8..fd46671 100644
--- a/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
+++ b/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
@@ -6,7 +6,7 @@  Required properties:
 
   - model		: The user-visible name of this sound complex
 
-  - ssi-controller	: The phandle of the i.MX SSI controller
+  - ssi-controller	: The phandle of the i.MX SSI (or SAI) controller
 
   - audio-codec		: The phandle of the SGTL5000 audio codec
 
@@ -39,6 +39,16 @@  Required properties:
 Note: The AUDMUX port numbering should start at 1, which is consistent with
 hardware manual.
 
+Optional properties:
+  - fsl,no-audmux	: boolean
+    			  Required for i.MX6UL (and maybe other SoCs)
+    			  which don't have an AUDMUX, but still
+			  feature the same audio subsystem otherwise.
+
+Note: Setting this property will make mux-int-port and mux-ext-port
+obsolete.
+
+
 Example:
 
 sound {
@@ -54,3 +64,17 @@  sound {
 	mux-int-port = <1>;
 	mux-ext-port = <3>;
 };
+
+or (e.g. for i.MX6UL):
+sound {
+	compatible = "karo,imx6ul-tx6ul-sgtl5000",
+		     "fsl,imx-audio-sgtl5000";
+	model = "imx6ul-tx6ul-sgtl5000";
+	ssi-controller = <&sai2>;
+	audio-codec = <&sgtl5000>;
+	audio-routing =
+		"MIC_IN", "Mic Jack",
+		"Mic Jack", "Mic Bias",
+		"Headphone Jack", "HP_OUT";
+	fsl,no-audmux;
+};