ARM: dts: imx25-pdk: Switch using simple-audio-card for audio support
Subsystems (2)
PATCH 1/7 ARM: dts: imx25-pdk: Switch using simple-audio-card for audio support
The sound support can be handled by "simple-audio-card" instead of use a private driver.
--- arch/arm/boot/dts/imx25-pdk.dts | 51 ++++++++++++++++++++++++++++++++++------- 1 file changed, 43 insertions(+), 8 deletions(-)
arch/arm/boot/dts/imx25-pdk.dts +43 -8
@@ -12,6 +12,8 @@ /dts-v1/; #include <dt-bindings/gpio/gpio.h> #include <dt-bindings/input/input.h> +#include <dt-bindings/sound/fsl-imx-audmux.h> + #include "imx25.dtsi" / {
@@ -64,17 +66,29 @@ }; sound { - compatible = "fsl,imx25-pdk-sgtl5000", - "fsl,imx-audio-sgtl5000"; - model = "imx25-pdk-sgtl5000"; - ssi-controller = <&ssi1>; - audio-codec = <&codec>; - audio-routing = + compatible = "simple-audio-card"; + simple-audio-card,name = "imx25-pdk-sgtl5000"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&master>; + simple-audio-card,frame-master = <&master>; + simple-audio-card,widgets = + "Microphone", "Mic Jack", + "Line", "Line In Jack", + "Headphone", "Headphone Jack", + "Speaker", "Line Out Jack", + "Speaker", "Ext Spk"; + simple-audio-card,routing = "MIC_IN", "Mic Jack", "Mic Jack", "Mic Bias", "Headphone Jack", "HP_OUT"; - mux-int-port = <1>; - mux-ext-port = <4>; + + simple-audio-card,cpu { + sound-dai = <&ssi1>; + }; + + master: simple-audio-card,codec { + sound-dai = <&codec>; + }; }; wvga: display {
@@ -103,6 +117,26 @@ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_audmux>; status = "okay"; + + audmux_ssi0 { + fsl,audmux-port = <0>; + fsl,port-config = < + (IMX_AUDMUX_V2_PTCR_TFSDIR | + IMX_AUDMUX_V2_PTCR_TFSEL(3) | + IMX_AUDMUX_V2_PTCR_TCLKDIR | + IMX_AUDMUX_V2_PTCR_TCSEL(3) | + IMX_AUDMUX_V2_PTCR_SYN) + IMX_AUDMUX_V2_PDCR_RXDSEL(3) + >; + }; + + audmux_aud4 { + fsl,audmux-port = <3>; + fsl,port-config = < + IMX_AUDMUX_V2_PTCR_SYN + IMX_AUDMUX_V2_PDCR_RXDSEL(0) + >; + }; }; &can1 {
@@ -136,6 +170,7 @@ status = "okay"; codec: sgtl5000 at 0a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; reg = <0x0a>; clocks = <&clks 129>;
Signature · 1 line
2.4.9
PATCH 2/7 ARM: dts: imx51-babbage: Switch using simple-audio-card for audio support
The sound support can be handled by "simple-audio-card" instead of use a private driver.
--- arch/arm/boot/dts/imx51-babbage.dts | 51 +++++++++++++++++++++++++++++++------ 1 file changed, 43 insertions(+), 8 deletions(-)
arch/arm/boot/dts/imx51-babbage.dts +43 -8
@@ -11,6 +11,8 @@ */ /dts-v1/; +#include <dt-bindings/sound/fsl-imx-audmux.h> + #include "imx51.dtsi" / {
@@ -141,17 +143,29 @@ }; sound { - compatible = "fsl,imx51-babbage-sgtl5000", - "fsl,imx-audio-sgtl5000"; - model = "imx51-babbage-sgtl5000"; - ssi-controller = <&ssi2>; - audio-codec = <&sgtl5000>; - audio-routing = + compatible = "simple-audio-card"; + simple-audio-card,name = "imx51-babbage-sgtl5000"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&master>; + simple-audio-card,frame-master = <&master>; + simple-audio-card,widgets = + "Microphone", "Mic Jack", + "Line", "Line In Jack", + "Headphone", "Headphone Jack", + "Speaker", "Line Out Jack", + "Speaker", "Ext Spk"; + simple-audio-card,routing = "MIC_IN", "Mic Jack", "Mic Jack", "Mic Bias", "Headphone Jack", "HP_OUT"; - mux-int-port = <2>; - mux-ext-port = <3>; + + simple-audio-card,cpu { + sound-dai = <&ssi2>; + }; + + master: simple-audio-card,codec { + sound-dai = <&sgtl5000>; + }; }; usbphy {
@@ -173,6 +187,26 @@ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_audmux>; status = "okay"; + + audmux_ssi1 { + fsl,audmux-port = <MX51_AUDMUX_PORT2_SSI1>; + fsl,port-config = < + (IMX_AUDMUX_V2_PTCR_TFSDIR | + IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT3) | + IMX_AUDMUX_V2_PTCR_TCLKDIR | + IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT3) | + IMX_AUDMUX_V2_PTCR_SYN) + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT3) + >; + }; + + audmux_aud3 { + fsl,audmux-port = <MX51_AUDMUX_PORT3>; + fsl,port-config = < + IMX_AUDMUX_V2_PTCR_SYN + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT2_SSI1) + >; + }; }; &ecspi1 {
@@ -339,6 +373,7 @@ status = "okay"; sgtl5000: codec at 0a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_clkcodec>;
Signature · 1 line
2.4.9
Sascha Hauer
maintainerPATCH 2/7 ARM: dts: imx51-babbage: Switch using simple-audio-card for audio support
Quoted 7 lines · Alexander Shiyan
The sound support can be handled by "simple-audio-card" instead of use a private driver.
Signed-off-by Alexander Shiyan <[email protected]>--- arch/arm/boot/dts/imx51-babbage.dts | 51 +++++++++++++++++++++++++++++++------ 1 file changed, 43 insertions(+), 8 deletions(-)
I just gave this a test. Playback still works on the right channel, left channel is silent. This behaviour hasn't changed with this patch, so consider this a:
Sascha
Quoted 92 lines
arch/arm/boot/dts/imx51-babbage.dts +43
-8@@ -11,6 +11,8 @@ */ /dts-v1/; +#include <dt-bindings/sound/fsl-imx-audmux.h> + #include "imx51.dtsi" / {@@ -141,17 +143,29 @@ }; sound { - compatible = "fsl,imx51-babbage-sgtl5000", - "fsl,imx-audio-sgtl5000"; - model = "imx51-babbage-sgtl5000"; - ssi-controller = <&ssi2>; - audio-codec = <&sgtl5000>; - audio-routing = + compatible = "simple-audio-card"; + simple-audio-card,name = "imx51-babbage-sgtl5000"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&master>; + simple-audio-card,frame-master = <&master>; + simple-audio-card,widgets = + "Microphone", "Mic Jack", + "Line", "Line In Jack", + "Headphone", "Headphone Jack", + "Speaker", "Line Out Jack", + "Speaker", "Ext Spk"; + simple-audio-card,routing = "MIC_IN", "Mic Jack", "Mic Jack", "Mic Bias", "Headphone Jack", "HP_OUT"; - mux-int-port = <2>; - mux-ext-port = <3>; + + simple-audio-card,cpu { + sound-dai = <&ssi2>; + }; + + master: simple-audio-card,codec { + sound-dai = <&sgtl5000>; + }; }; usbphy {@@ -173,6 +187,26 @@ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_audmux>; status = "okay"; + + audmux_ssi1 { + fsl,audmux-port = <MX51_AUDMUX_PORT2_SSI1>; + fsl,port-config = < + (IMX_AUDMUX_V2_PTCR_TFSDIR | + IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT3) | + IMX_AUDMUX_V2_PTCR_TCLKDIR | + IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT3) | + IMX_AUDMUX_V2_PTCR_SYN) + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT3) + >; + }; + + audmux_aud3 { + fsl,audmux-port = <MX51_AUDMUX_PORT3>; + fsl,port-config = < + IMX_AUDMUX_V2_PTCR_SYN + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT2_SSI1) + >; + }; }; &ecspi1 {@@ -339,6 +373,7 @@ status = "okay"; sgtl5000: codec at 0a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_clkcodec>;Signature · 1 line
2.4.9
Signature · 4 lines
Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
PATCH 3/7 ARM: dts: imx53-m53evk: Switch using simple-audio-card for audio support
In reply to Alexander ShiyanThe sound support can be handled by "simple-audio-card" instead of use a private driver.
--- arch/arm/boot/dts/imx53-m53evk.dts | 52 +++++++++++++++++++++++++++++++------- 1 file changed, 43 insertions(+), 9 deletions(-)
arch/arm/boot/dts/imx53-m53evk.dts +43 -9
@@ -10,6 +10,8 @@ */ /dts-v1/; +#include <dt-bindings/sound/fsl-imx-audmux.h> + #include "imx53-m53.dtsi" / {
@@ -96,26 +98,57 @@ }; sound { - compatible = "fsl,imx53-m53evk-sgtl5000", - "fsl,imx-audio-sgtl5000"; - model = "imx53-m53evk-sgtl5000"; - ssi-controller = <&ssi2>; - audio-codec = <&sgtl5000>; - audio-routing = + compatible = "simple-audio-card"; + simple-audio-card,name = "imx53-m53evk-sgtl5000"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&master>; + simple-audio-card,frame-master = <&master>; + simple-audio-card,widgets = + "Microphone", "Mic Jack", + "Line", "Line In Jack", + "Headphone", "Headphone Jack", + "Speaker", "Line Out Jack", + "Speaker", "Ext Spk"; + simple-audio-card,routing = "MIC_IN", "Mic Jack", "Mic Jack", "Mic Bias", "LINE_IN", "Line In Jack", "Headphone Jack", "HP_OUT", "Ext Spk", "LINE_OUT"; - mux-int-port = <2>; - mux-ext-port = <4>; - }; + + simple-audio-card,cpu { + sound-dai = <&ssi2>; + }; + + master: simple-audio-card,codec { + sound-dai = <&sgtl5000>; + }; }; &audmux { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_audmux>; status = "okay"; + + audmux_ssi1 { + fsl,audmux-port = <MX51_AUDMUX_PORT2_SSI1>; + fsl,port-config = < + (IMX_AUDMUX_V2_PTCR_TFSDIR | + IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT3) | + IMX_AUDMUX_V2_PTCR_TCLKDIR | + IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT3) | + IMX_AUDMUX_V2_PTCR_SYN) + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT3) + >; + }; + + audmux_aud3 { + fsl,audmux-port = <MX51_AUDMUX_PORT3>; + fsl,port-config = < + IMX_AUDMUX_V2_PTCR_SYN + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT2_SSI1) + >; + }; }; &can1 {
@@ -151,6 +184,7 @@ status = "okay"; sgtl5000: codec at 0a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; reg = <0x0a>; VDDA-supply = <®_3p2v>;
Signature · 1 line
2.4.9
PATCH 4/7 ARM: dts: imx53-mba53: Switch using simple-audio-card for audio support
In reply to Alexander ShiyanThe sound support can be handled by "simple-audio-card" instead of use a private driver.
--- arch/arm/boot/dts/imx53-mba53.dts | 51 +++++++++++++++++++++++++++++++++------ 1 file changed, 43 insertions(+), 8 deletions(-)
arch/arm/boot/dts/imx53-mba53.dts +43 -8
@@ -11,6 +11,8 @@ */ /dts-v1/; +#include <dt-bindings/sound/fsl-imx-audmux.h> + #include "imx53-tqma53.dtsi" / {
@@ -68,17 +70,29 @@ }; sound { - compatible = "tq,imx53-mba53-sgtl5000", - "fsl,imx-audio-sgtl5000"; - model = "imx53-mba53-sgtl5000"; - ssi-controller = <&ssi2>; - audio-codec = <&codec>; - audio-routing = + compatible = "simple-audio-card"; + simple-audio-card,name = "imx53-mba53-sgtl5000"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&master>; + simple-audio-card,frame-master = <&master>; + simple-audio-card,widgets = + "Microphone", "Mic Jack", + "Line", "Line In Jack", + "Headphone", "Headphone Jack", + "Speaker", "Line Out Jack", + "Speaker", "Ext Spk"; + simple-audio-card,routing = "MIC_IN", "Mic Jack", "Mic Jack", "Mic Bias", "Headphone Jack", "HP_OUT"; - mux-int-port = <2>; - mux-ext-port = <5>; + + simple-audio-card,cpu { + sound-dai = <&ssi2>; + }; + + master: simple-audio-card,codec { + sound-dai = <&codec>; + }; }; };
@@ -169,10 +183,31 @@ status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_audmux>; + + audmux_ssi1 { + fsl,audmux-port = <MX51_AUDMUX_PORT2_SSI1>; + fsl,port-config = < + (IMX_AUDMUX_V2_PTCR_TFSDIR | + IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT4) | + IMX_AUDMUX_V2_PTCR_TCLKDIR | + IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT4) | + IMX_AUDMUX_V2_PTCR_SYN) + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT4) + >; + }; + + audmux_aud4 { + fsl,audmux-port = <MX51_AUDMUX_PORT4>; + fsl,port-config = < + IMX_AUDMUX_V2_PTCR_SYN + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT2_SSI1) + >; + }; }; &i2c2 { codec: sgtl5000 at a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; reg = <0x0a>; clocks = <&clks IMX5_CLK_SSI_EXT1_GATE>;
Signature · 1 line
2.4.9
PATCH 5/7 ARM: dts: imx53-qsb: Switch using simple-audio-card for audio support
In reply to Alexander ShiyanThe sound support can be handled by "simple-audio-card" instead of use a private driver.
--- arch/arm/boot/dts/imx53-qsb-common.dtsi | 51 +++++++++++++++++++++++++++------ 1 file changed, 43 insertions(+), 8 deletions(-)
arch/arm/boot/dts/imx53-qsb-common.dtsi +43 -8
@@ -10,6 +10,8 @@ * http://www.gnu.org/copyleft/gpl.html */ +#include <dt-bindings/sound/fsl-imx-audmux.h> + #include "imx53.dtsi" / {
@@ -116,17 +118,29 @@ }; sound { - compatible = "fsl,imx53-qsb-sgtl5000", - "fsl,imx-audio-sgtl5000"; - model = "imx53-qsb-sgtl5000"; - ssi-controller = <&ssi2>; - audio-codec = <&sgtl5000>; - audio-routing = + compatible = "simple-audio-card"; + simple-audio-card,name = "imx53-qsb-sgtl5000"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&master>; + simple-audio-card,frame-master = <&master>; + simple-audio-card,widgets = + "Microphone", "Mic Jack", + "Line", "Line In Jack", + "Headphone", "Headphone Jack", + "Speaker", "Line Out Jack", + "Speaker", "Ext Spk"; + simple-audio-card,routing = "MIC_IN", "Mic Jack", "Mic Jack", "Mic Bias", "Headphone Jack", "HP_OUT"; - mux-int-port = <2>; - mux-ext-port = <5>; + + simple-audio-card,cpu { + sound-dai = <&ssi2>; + }; + + master: simple-audio-card,codec { + sound-dai = <&sgtl5000>; + }; }; };
@@ -315,6 +329,7 @@ status = "okay"; sgtl5000: codec at 0a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; reg = <0x0a>; VDDA-supply = <®_3p2v>;
@@ -338,6 +353,26 @@ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_audmux>; status = "okay"; + + audmux_ssi1 { + fsl,audmux-port = <MX51_AUDMUX_PORT2_SSI1>; + fsl,port-config = < + (IMX_AUDMUX_V2_PTCR_TFSDIR | + IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT4) | + IMX_AUDMUX_V2_PTCR_TCLKDIR | + IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT4) | + IMX_AUDMUX_V2_PTCR_SYN) + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT4) + >; + }; + + audmux_aud4 { + fsl,audmux-port = <MX51_AUDMUX_PORT4>; + fsl,port-config = < + IMX_AUDMUX_V2_PTCR_SYN + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT2_SSI1) + >; + }; }; &fec {
Signature · 1 line
2.4.9
PATCH 6/7 ARM: dts: imx53-tx53: Switch using simple-audio-card for audio support
In reply to Alexander ShiyanThe sound support can be handled by "simple-audio-card" instead of use a private driver.
--- arch/arm/boot/dts/imx53-tx53-x03x.dts | 1 + arch/arm/boot/dts/imx53-tx53-x13x.dts | 1 + arch/arm/boot/dts/imx53-tx53.dtsi | 57 ++++++++++++++++++++++++++--------- 3 files changed, 45 insertions(+), 14 deletions(-)
arch/arm/boot/dts/imx53-tx53-x03x.dts +1 -0
@@ -204,6 +204,7 @@ status = "okay"; sgtl5000: codec at 0a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; reg = <0x0a>; VDDA-supply = <®_2v5>;
arch/arm/boot/dts/imx53-tx53-x13x.dts +1 -0
@@ -111,6 +111,7 @@ status = "okay"; sgtl5000: codec at 0a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; reg = <0x0a>; VDDA-supply = <®_2v5>;
arch/arm/boot/dts/imx53-tx53.dtsi +43 -14
88 lines not on this page · raw message
Signature · 1 line
2.4.9
PATCH 6/7 ARM: dts: imx53-tx53: Switch using simple-audio-card for audio support
Hi,
Quoted 10 lines · On Sat, 11 Jun 2016 08:02:24 +0300 Alexander Shiyan wrote:
The sound support can be handled by "simple-audio-card" instead of use a private driver.
Signed-off-by Alexander Shiyan <[email protected]>--- arch/arm/boot/dts/imx53-tx53-x03x.dts | 1 + arch/arm/boot/dts/imx53-tx53-x13x.dts | 1 + arch/arm/boot/dts/imx53-tx53.dtsi | 57 ++++++++++++++++++++++++++--------- 3 files changed, 45 insertions(+), 14 deletions(-)
[...]
arch/arm/boot/dts/imx53-tx53.dtsi line 162
Quoted 8 lines
arch/arm/boot/dts/imx53-tx53.dtsi +3
-0@@ -142,6 +156,26 @@ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ssi1>; status = "okay"; + + audmux_ssi0 { + fsl,audmux-port = <MX51_AUDMUX_PORT2_SSI0>;
This fails to compile because MX51_AUDMUX_PORT2_SSI0 is not defined! It should be MX51_AUDMUX_PORT1_SSI0.
+ (IMX_AUDMUX_V2_PTCR_TFSDIR |
+ IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT4) |
+ IMX_AUDMUX_V2_PTCR_TCLKDIR |
+ IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT4) |
+ IMX_AUDMUX_V2_PTCR_SYN)
+ IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT4)
Quoted 1 line
These should be MX51_AUDMUX_PORT5 rather than MX51_AUDMUX_PORT4. (This applies to the other .dts files in your patchset excluiding mx51-babbage.dts).
arch/arm/boot/dts/imx53-tx53.dtsi line 512
Quoted 12 lines
arch/arm/boot/dts/imx53-tx53.dtsi +0
-5@@ -502,14 +536,9 @@ }; &ssi1 { - codec-handle = <&sgtl5000>; status = "okay"; }; -&ssi2 { - status = "disabled"; -}; -
This may be redundant because it is the default, but I prefer to keep it here, to make it easier for the end user to enable it and to document, that the SSI2 interface is actually usable on the TX53 modules.
Lothar Wa?mann
PATCH 7/7 ARM: dts: imx53-voipac-bsb: Switch using simple-audio-card for audio support
In reply to Alexander ShiyanThe sound support can be handled by "simple-audio-card" instead of use a private driver.
--- arch/arm/boot/dts/imx53-voipac-bsb.dts | 55 ++++++++++++++++++++++++++++------ 1 file changed, 46 insertions(+), 9 deletions(-)
arch/arm/boot/dts/imx53-voipac-bsb.dts +46 -9
@@ -10,19 +10,35 @@ */ /dts-v1/; +#include <dt-bindings/sound/fsl-imx-audmux.h> + #include "imx53-voipac-dmm-668.dtsi" / { sound { - compatible = "fsl,imx53-voipac-sgtl5000", - "fsl,imx-audio-sgtl5000"; - model = "imx53-voipac-sgtl5000"; - ssi-controller = <&ssi2>; - audio-codec = <&sgtl5000>; - audio-routing = + compatible = "simple-audio-card"; + simple-audio-card,name = "imx53-voipac-sgtl5000"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&master>; + simple-audio-card,frame-master = <&master>; + simple-audio-card,widgets = + "Microphone", "Mic Jack", + "Line", "Line In Jack", + "Headphone", "Headphone Jack", + "Speaker", "Line Out Jack", + "Speaker", "Ext Spk"; + simple-audio-card,routing = + "MIC_IN", "Mic Jack", + "Mic Jack", "Mic Bias", "Headphone Jack", "HP_OUT"; - mux-int-port = <2>; - mux-ext-port = <5>; + + simple-audio-card,cpu { + sound-dai = <&ssi2>; + }; + + master: simple-audio-card,codec { + sound-dai = <&sgtl5000>; + }; }; leds {
@@ -112,8 +128,28 @@ &audmux { pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_audmux>; /* SSI1 */ + pinctrl-0 = <&pinctrl_audmux>; status = "okay"; + + audmux_ssi1 { + fsl,audmux-port = <MX51_AUDMUX_PORT2_SSI1>; + fsl,port-config = < + (IMX_AUDMUX_V2_PTCR_TFSDIR | + IMX_AUDMUX_V2_PTCR_TFSEL(MX51_AUDMUX_PORT4) | + IMX_AUDMUX_V2_PTCR_TCLKDIR | + IMX_AUDMUX_V2_PTCR_TCSEL(MX51_AUDMUX_PORT4) | + IMX_AUDMUX_V2_PTCR_SYN) + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT4) + >; + }; + + audmux_aud4 { + fsl,audmux-port = <MX51_AUDMUX_PORT4>; + fsl,port-config = < + IMX_AUDMUX_V2_PTCR_SYN + IMX_AUDMUX_V2_PDCR_RXDSEL(MX51_AUDMUX_PORT2_SSI1) + >; + }; }; &esdhc2 {
@@ -131,6 +167,7 @@ status = "okay"; sgtl5000: codec at 0a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; reg = <0x0a>; VDDA-supply = <®_3p3v>;
Signature · 1 line
2.4.9
PATCH 1/7 ARM: dts: imx25-pdk: Switch using simple-audio-card for audio support
In reply to Alexander ShiyanQuoted 4 lines · Alexander Shiyan
The sound support can be handled by "simple-audio-card" instead of use a private driver.
Signed-off-by Alexander Shiyan <[email protected]>
Did you get a chance to test the change on any of the boards you are touching here?
Quoted 56 lines
--- arch/arm/boot/dts/imx25-pdk.dts | 51 ++++++++++++++++++++++++++++++++++------- 1 file changed, 43 insertions(+), 8 deletions(-)arch/arm/boot/dts/imx25-pdk.dts +22
-8@@ -12,6 +12,8 @@ /dts-v1/; #include <dt-bindings/gpio/gpio.h> #include <dt-bindings/input/input.h> +#include <dt-bindings/sound/fsl-imx-audmux.h> + #include "imx25.dtsi" / {@@ -64,17 +66,29 @@ }; sound { - compatible = "fsl,imx25-pdk-sgtl5000", - "fsl,imx-audio-sgtl5000"; - model = "imx25-pdk-sgtl5000"; - ssi-controller = <&ssi1>; - audio-codec = <&codec>; - audio-routing = + compatible = "simple-audio-card"; + simple-audio-card,name = "imx25-pdk-sgtl5000"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&master>; + simple-audio-card,frame-master = <&master>; + simple-audio-card,widgets = + "Microphone", "Mic Jack", + "Line", "Line In Jack", + "Headphone", "Headphone Jack", + "Speaker", "Line Out Jack", + "Speaker", "Ext Spk"; + simple-audio-card,routing = "MIC_IN", "Mic Jack", "Mic Jack", "Mic Bias", "Headphone Jack", "HP_OUT"; - mux-int-port = <1>; - mux-ext-port = <4>; + + simple-audio-card,cpu { + sound-dai = <&ssi1>; + }; + + master: simple-audio-card,codec { + sound-dai = <&codec>; + }; }; wvga: display {
arch/arm/boot/dts/imx25-pdk.dts line 121
Quoted 5 lines
arch/arm/boot/dts/imx25-pdk.dts +2
-0@@ -103,6 +117,26 @@ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_audmux>; status = "okay"; + + audmux_ssi0 {
We generally use underscore in label and hyphen in node name.
Shawn
Quoted 38 lines
arch/arm/boot/dts/imx25-pdk.dts +19
-0+ fsl,audmux-port = <0>; + fsl,port-config = < + (IMX_AUDMUX_V2_PTCR_TFSDIR | + IMX_AUDMUX_V2_PTCR_TFSEL(3) | + IMX_AUDMUX_V2_PTCR_TCLKDIR | + IMX_AUDMUX_V2_PTCR_TCSEL(3) | + IMX_AUDMUX_V2_PTCR_SYN) + IMX_AUDMUX_V2_PDCR_RXDSEL(3) + >; + }; + + audmux_aud4 { + fsl,audmux-port = <3>; + fsl,port-config = < + IMX_AUDMUX_V2_PTCR_SYN + IMX_AUDMUX_V2_PDCR_RXDSEL(0) + >; + }; }; &can1 {@@ -136,6 +170,7 @@ status = "okay"; codec: sgtl5000 at 0a { + #sound-dai-cells = <0>; compatible = "fsl,sgtl5000"; reg = <0x0a>; clocks = <&clks 129>;Signature · 7 lines
2.4.9 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel at lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel