[alsa-devel] imx-ssi.c & SND_SOC_DAIFMT_I2S

Eric Bénard eric at eukrea.com
Wed May 26 11:34:08 CEST 2010

Hi Sascha,

while trying to get a TI TLV320AIC23B codec configured as I2S master to 
work with an i.MX27 using the latest git kernel, I noticed there may be 
a problem in the slave I2S setting in imx-ssi.c

Please find two captures of the I2S bus signals :
- http://eukrea.com/tmp/initial_i2s.png : this is not an I2S signal, 
both left & right are sent while Frame Sync is high (so I only get mono 
- http://eukrea.com/tmp/i2s_slave.png : when I set I2S_MODE to 0x2 in 
SCR register (scr |= SSI_SCR_NET | 0x40; at line 101 of imx-ssi.c), thus 
setting the SSI in "I2S slave mode", I get a real I2S signal as shown on 
this capture.

I understand the actual I2S configuration may work with the Freescale's 
PMIC but this chipset may not be fully I2S compliant and I think that 
the actual setting prevent real I2S codecs from being used with the i.MX.

Am I wrong here ?
Shouldn't we use the I2S slave mode of the SSI instead of what is done 
actually ?

Thanks and best regards,

More information about the Alsa-devel mailing list