Can ESAI be used as four independent sound cards or sound devices?

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

Can ESAI be used as four independent sound cards or sound devices?

941 Views
gelei
Contributor I

Hi NXP engineers,

In the current imx6_sabreauto demo board, ESAI is used with CS42888 as 1 audio card, ESAI_TX0/TX1/TX2_RX3/TX3_RX2 four pins are used to transmit audio data. But as you know, most of the musics are 2 channels,  if use esai to transmit 2 channels audio data, TX1/TX2_RX3/TX3_RX2 three pins are not used.

Is there a way to use ESAI as four 2-channels audio card(each card can work independently), or 1 audio card with four audio devices(each device can work independently)? We need a solution of this in the Kernel space, not in the user space.

Background:

Kernel version: 3.14.52.

Our board needs to use 5 sound cards,  but now only 4 I2S controllers are available: 3*SSI + ESAI, so we want to know if ESAI can be used as multi independent sound cards or sound devices? xiaoli.zhangjunzhu-b40054jimmychan

Thanks!

GeLei 2017-5-19

0 Kudos
3 Replies

670 Views
justin_jiang
NXP Employee
NXP Employee

Hello Gelei,

I think you can config the ESAI device as 1 audio card with four audio devices.

They need share same audio bit/frame clock with same sample rate.

In application level, you can send data to different devices with a combined audio data.

0 Kudos

670 Views
gelei
Contributor I

Hi justin.

应用层实现我之前做过,但是耗cpu,并且alsa lib 的dshare是有潜在bug的,会导致cpu loading异常的高。所以,排除应用层的做法,想在底层实现此功能。底层nxp目前是没有相关代码可以借鉴实现此功能。2012年的时候想做,但是部门调整后就没人提这事了。

0 Kudos

670 Views
justin_jiang
NXP Employee
NXP Employee

Hello GeLei,

Currently no plan to do that in kernel driver.

0 Kudos