imx6q audmux and ssi mapping

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

imx6q audmux and ssi mapping

1,165 Views
_angelo_
Contributor III

Hi,

from the RM, as default (reset) ssi1 should be mapped to AUD6, ssi2 to AUD5, ssi3 to port 7.

Anyway, i.e. in sabrelite, mainline, i see ssi1 working on AUD4 pads, but i don't see any specific AUDMUX devicetree config to setup this redirection. Is it spmething driver sets up as defaults ?

And, how to know where ssi2 is actuall mapped ?

 

Thanks

 

Labels (1)
0 Kudos
Reply
4 Replies

1,160 Views
art
NXP Employee
NXP Employee

You are right in that, by default, SSI1 is assigned to AUD6 port through the
AUDMUX module and then the default settings are re-configured in software.

Best Regards,
Artur

0 Kudos
Reply

1,164 Views
_angelo_
Contributor III

found, in the sound {} node there is 

mux-int-port = <1>;
mux-ext-port = <4>;

This clarify. Thanks.

 

 

0 Kudos
Reply

1,155 Views
_angelo_
Contributor III

I finally could have i2s microphone working on AUD5

Leaving here important settings to have ssi2 working on AUD5, if anyone may need it

 

/ {
	model = "Freescale i.MX6 Quad SABRE Lite Board";
	compatible = "fsl,imx6q-sabrelite", "fsl,imx6q";

	cmm4030d: cmm4030d {
		#sound-dai-cells = <0>;
                compatible = "cui,cmm-4030d-261";
        };

	sound_mic {
		compatible = "simple-audio-card";
		simple-audio-card,name = "i2s mem mic";
		simple-audio-card,format = "i2s";
		simple-audio-card,bitclock-master = <&sound_master>;
		simple-audio-card,frame-master = <&sound_master>;
		sound_master: simple-audio-card,cpu {
			sound-dai = <&ssi2>;
			system-clock-frequency = <2822400>;
		};
		simple-audio-card,codec {
			sound-dai = <&cmm4030d>;
		};
	};
};

&audmux {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_audmux>;
	status = "okay";

	ssi2 {
		fsl,audmux-port = <1>;
		fsl,port-config = <
			0x00000000
			IMX_AUDMUX_V2_PDCR_RXDSEL(4)
		>;
	};

	port5 {
		fsl,audmux-port = <4>;
		fsl,port-config = <
			 (IMX_AUDMUX_V2_PTCR_TFSDIR |
			 IMX_AUDMUX_V2_PTCR_TFSEL(1) |
			 IMX_AUDMUX_V2_PTCR_TCLKDIR |
			 IMX_AUDMUX_V2_PTCR_TCSEL(1))
			 IMX_AUDMUX_V2_PDCR_RXDSEL(1)
		>;
	};
};

&ssi2 {
	fsl,mode = "i2s-master";
	assigned-clocks = <&clks IMX6QDL_CLK_SSI2_SEL>,
			  <&clks IMX6QDL_CLK_PLL4>,
			  <&clks IMX6QDL_CLK_SSI2>;
	assigned-clock-parents = <&clks IMX6QDL_CLK_PLL4_AUDIO_DIV>;
	assigned-clock-rates = <0>, <663552000>, <18432000>;
	status = "okay";
};

 

0 Kudos
Reply

1,149 Views
art
NXP Employee
NXP Employee

Thank you for sharing your insights.

Best Regards,

Artur

0 Kudos
Reply