[alsa-devel] Two codecs using the same I2S bus
Niels Langendorff
linux at langendorff.nl
Sat Dec 12 20:54:04 CET 2009
Hi Mark,
thanks for your response. My comments are in between.
Op 12 dec 2009, om 19:05 heeft Mark Brown het volgende geschreven:
> 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.
Both the codecs needs to be reconfigured by writing the registers for every playback/recording, so that is the difficulty.
I will have a look at the OMAP implementation as a good example.
> 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