TAS5702L with imX8mp

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

TAS5702L with imX8mp

859 Views
arunlee
Contributor II

Hello,

We have an imx8mp based board from solid run and we are trying to have a simple audio solution with TAS5720L amplifier.

We are connecting TAS5720 to I2C2 and the I2S (SAI3) here are the dts we have

pinctrl_sai3: sai3grp {
fsl,pins = <
MX8MP_IOMUXC_SAI3_TXFS__AUDIOMIX_SAI3_TX_SYNC 0xd6
MX8MP_IOMUXC_SAI3_TXC__AUDIOMIX_SAI3_TX_BCLK 0xd6
MX8MP_IOMUXC_SAI3_RXD__AUDIOMIX_SAI3_RX_DATA00 0xd6
MX8MP_IOMUXC_SAI3_TXD__AUDIOMIX_SAI3_TX_DATA00 0xd6
MX8MP_IOMUXC_SAI3_MCLK__AUDIOMIX_SAI3_MCLK 0xd6
MX8MP_IOMUXC_SAI3_RXC__GPIO4_IO29 0xd6
>;
};

&sai3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sai3>;
assigned-clocks = <&clk IMX8MP_CLK_SAI3>;
assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>;
assigned-clock-rates = <12288000>;
clocks = <&audiomix_clk IMX8MP_CLK_AUDIOMIX_SAI3_IPG>, <&clk IMX8MP_CLK_DUMMY>,
<&audiomix_clk IMX8MP_CLK_AUDIOMIX_SAI3_MCLK1>, <&clk IMX8MP_CLK_DUMMY>,
<&clk IMX8MP_CLK_DUMMY>;
clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3";
fsl,sai-mclk-direction-output;
status = "okay";
};

sound-ti {
compatible = "simple-audio-card";
simple-audio-card,name = "TI_Audio";
simple-audio-card,format = "i2s";
simple-audio-card,bitclock-master = <&dailink0_master>;
simple-audio-card,frame-master = <&dailink0_master>;
simple-audio-card,widgets =
"Microphone", "Microphone Jack",
"Headphone", "Headphone Jack",
"Speaker", "External Speaker";
simple-audio-card,routing =
"MIC_IN", "Microphone Jack",
"Headphone Jack", "HP_OUT",
"External Speaker", "LINE_OUT";

simple-audio-card,aux-devs = <&tas5720>;

dailink0_master: simple-audio-card,cpu {
sound-dai = <&sai3>;
dai-tdm-slot-num = <4>;
dai-tdm-slot-width = <32>;
};
simple-audio-card,codec {
sound-dai = <&codec1>;
clocks = <&clk IMX8MP_CLK_SAI3>;
};
};

codec1: codec1 {
compatible = "linux,snd-soc-dummy";
//compatible = "linux,bt-sco";
#sound-dai-cells = <0>;
status = "okay";
};

Everything builds fine, but no sound cards detected. There is an error

[    2.086065] OF: /sound-ti/simple-audio-card,cpu: could not get #sound-dai-cells for /soc@0/bus@30c00000/spba-bus@30c00000/sai@30c30000

[    2.098596] asoc-simple-card sound-ti: parse error -22

[    2.104192] asoc-simple-card: probe of sound-ti failed with error -22

[    2.122108] imx-cdnhdmi sound-hdmi: failed to find SAI platform device

[    2.128662] imx-cdnhdmi: probe of sound-hdmi failed with error -22

[    3.053248]   No soundcards found.

Could you please guide me on this? Is my approach right. Do you have some sample cases of using TAS5720 on any imx devices?

regards

 

 

0 Kudos
1 Reply

848 Views
igorpadykov
NXP Employee
NXP Employee

Hi Arun

 

> Do you have some sample cases of using TAS5720 on any imx devices?

 

sorry such examples are not available. One can try to debug it, check for example with

oscilloscope i2c signals and TAS5720 i2c address. Use dts example below and

Figure 28. ALSA SoC Software Architecture  i.MX Linux Reference Manual​

https://source.codeaurora.org/external/imx/linux-imx/tree/arch/arm64/boot/dts/freescale/imx8mp-evk.d...

AN4553 Using Open Source Debugging Tools for Linux on i.MX Processors
https://www.nxp.com/docs/en/application-note/AN4553.pdf

 

Best regards
igor

0 Kudos