WM8731 with IMX6Q

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

WM8731 with IMX6Q

2,180 次查看
jemish_1990
Contributor V

Hi All,

Processor : IMX6Q (MCIMX6Q6AVT10AD)

Linux Kernel : 4.9.11

Kernel reference : wandboard_imx_4.9.11_1.0.0_ga

Audio Codec: WM8731

Hi All,

We are making IMX6Q based product. In which we going to use WM8731 audio codec.

We will be connecting WM8731 with IMX6Q in synchronous mode (4- Wire interface TXD, TXFS, RXD, TXC).

We want to use IMX6Q as master for Bitclock (bclk) and Framsync (FS).

I am using wandboard kernel as reference in which there is no machine driver for WM8731 so took reference of machine driver from below link:

kernel-tgif/imx-wm8731.c at master · Ansync/kernel-tgif · GitHub 

Issue is that we are not seeing any clocks. (MCLK, BCLK, FS)

Does any one has already done interfacing of WM8731 with IMX6Q earlier ? It will be good if anyone as use WM8731 as slave. But right now for proceeding further any inputs will be appreciated.

Thanks,

Jemish

标签 (2)
0 项奖励
回复
4 回复数

1,998 次查看
igorpadykov
NXP Employee
NXP Employee

Hi Jemish

for L4.9.11 one can look at available imx-wm89xx drivers and its description

in attached Linux Manual sect.7.1.4.1 ASoC Driver Source Architecture.For bringup

may be useful to test with i.MX6Q baremetal sdk, its zip is available on SMP Enable in IMX6 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 项奖励
回复

1,998 次查看
jemish_1990
Contributor V

Hi Igor,

Thanks for your answer!

Yesterday we have made some progress now are getting clocks as desired.

Now issue is there is no audio. Sometimes there is an audio but with low volume and noise.

I suspect that either some issue in audio routing or missing alsa configuration. So currently working on it.

Question to you is:

  • We have connected WM8731 in 4-wire protocol. In TRM of IMX6 it mentioned that it supports 4-wire protocol (SYN=1) synchronous mode.
  • As per description in TRM: Synchronous mode, each port set in SYN=1 will be a 4-wire interface (that is, RXD,TXD, TXC, TXFS). In this setup, receive data timing is determined by TXC and TXFS.
  • So we have connected DACLRC , ADCLRC clocks of WM8731 codec with TXFS of IMX6Q. Do you think hardware perspective it is right way to do this (shorting clocks)? Or do we have to use 6-wire interface compulsory?

Thanks,

Jemish

0 项奖励
回复

1,998 次查看
igorpadykov
NXP Employee
NXP Employee

Hi Jemish

right, in synchronous mode 4-wire interface (RXD,TXD, TXC, TXFS) can be used.

>we have connected DACLRC , ADCLRC clocks of WM8731 codec with TXFS of IMX6Q.

>Do you think hardware perspective it is right way to do this (shorting clocks)? 

I think such connection can be used with WM8731.

Best regards
igor

0 项奖励
回复

1,998 次查看
jemish_1990
Contributor V

Hi Igor,

Thanks for confirmation I will pass this to our hardware team and will update on you Monday because we are still not getting any audio data and it is always "zeors" (No audio data). Do you have any suggestions regarding data?

Thanks,

Jemish

0 项奖励
回复