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

Sascha Hauer s.hauer at pengutronix.de
Wed May 26 12:37:53 CEST 2010

Hi Eric,

On Wed, May 26, 2010 at 11:34:08AM +0200, Eric Bénard wrote:
> 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  
> output)
> - 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 ?

I just had a look at the oscilloscope. For me it seems to make no
difference whether I use I2S mode or what is done in current driver.
Both look like your second picture.
So we can change it if there are no other objections.


Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

More information about the Alsa-devel mailing list