SAI BCLK and SYNC issue

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

SAI BCLK and SYNC issue

865 次查看
millark
Contributor III

We are investigating an issue with the clocks the SAI interface on a IMX8Nano, kernel 5.15.5

When a stream of audio is first started, we see the mclk, bclk and sync all go high with the correct values. When a stream is stopped, we see all clock values torn down, mclk goes low but however bclk and sync remain high, even though there is no clock set.

The pcm5122 codec is running in salve mode and all clocks are provided by the imx8.

We need a way to take the bclk and sync low when mclk is low to ensure our dacs clock detection kicks in and puts the dac into standby mode.

Has anyone seen this behavior and are there any known workarounds. Looking at the registry, we don't see any area to auto set the bclk and sync low with mclk.

Any help appreciated.

标签 (1)
0 项奖励
回复
3 回复数

785 次查看
millark
Contributor III

Thanks Jorge for the reply. The issue is not that the clocks are not active, it is that when data stops, the mclk goes to gnd, but the bclk and sync remain high with no data. This isn't right as it will stop dacs from going into stanby mode if they are monitoring the bclk and sync status.

Is there a way these clokc lines can also be returned to gnd when a data stops, as per the behaviour of the mclk?

0 项奖励
回复

781 次查看
JorgeCas
NXP TechSupport
NXP TechSupport

Hello, 

Got it, please try to reset SAI. You can find more detailed information on section 13.10.3.2 ''SAI resets'' on reference manual.

Best regards.

0 项奖励
回复

807 次查看
JorgeCas
NXP TechSupport
NXP TechSupport

Hello,

When the i.MX8MN is set as master, the clock and frame sync are operational when the device is transmitting/receiving data, as soon as the data stops, the clocks also stop.

You should consider synchronous mode that is described on section 13.10.3.3.1 ''Synchronous mode'' on reference manual.

Best regards.

0 项奖励
回复