[alsa-devel] Two codecs using the same I2S bus

Mark Brown broonie at opensource.wolfsonmicro.com
Sat Dec 12 19:05:22 CET 2009

On Fri, Dec 11, 2009 at 01:29:07PM +0100, Niels Langendorff wrote:

> for a samsung based project we have chosen two codecs, one for input, 
> the other for output. The two codecs are using the same I2S bus due to 
> audio requirements (HF audio in combination with EC)

> When having two machine implementations at the same time for the two 
> codecs we will run into problems attaching to the I2S bus. A solution is 
> to combine the machine implementation into one file, but then I probaly 
> have to modify generic kernel code.

> I there some solution for this and/or example code

This should work with the kernel as-is providing the two CODECs don't
both need register control, just declare DAI links for each of the links
you need from your machine driver.  Nothing will stop you adding one DAI
to multiple links.  You'll need to deal with resource contention issues
in your machine driver but it should have enough hooks already to
support that, or you can just arrange for your application to never try
to do anything unsupported.

If you run into problems doing this please bring them up on the list.

More information about the Alsa-devel mailing list