[alsa-devel] ASOC, SPDIF and AC97

Jon Smirl jonsmirl at gmail.com
Wed May 28 15:40:13 CEST 2008

On 5/28/08, Mark Brown <broonie at opensource.wolfsonmicro.com> wrote:
> On Tue, May 27, 2008 at 02:16:54PM -0400, Jon Smirl wrote:
>  > I'm having trouble with SPDIF. I can make two devices like this in the
>  > codec file. But how do I get the SPDIF device hooked up to the right
>  > AC97 slot, 10/11? Are any of the ASOC codecs implementing SPDIF?
> None that I know of implementing SPDIF (or at least, none with driver
>  support for it) but it might be worth taking a look at the PXA2xx AC97
>  controller support - it implements supports for AC97 timeslots beyond
>  the base playback and record channels.

I'll look at PXA2xx. I had assumed that some of the SOC codecs were
implementing SPDIF and that wrongly led me into the pci code.

I'm practicing on the Efika while I wait on our own hardware. The
Efika hardware can support simultaneous independent playback on analog
and spdif. I see now that it is too hard to jump straight to
independent playback, instead I'll work on getting them both to play

For independent playback I need to interleave the data from two
buffers and DMA it into the PSC. I believe the Bestcomm DMA controller
can do this. Does ALSA hand me the two buffers simultaneously? I
haven't located any code yet supporting independent playback.

>  Briefly, the approach is to provide a DAI in the AC97 controller driver
>  which handles the relevant AC97 timeslots and a DAI in the CODEC driver
>  which does the CODEC side of things then match the two together.
>  > I also see that the STAC9766 is missing an ac97_patch. From my reading
>  > of the datasheet it needs somethings fixed up.
>  > Does the ac97 support belong in the PCI directory? It took me a while
>  > to locate it while working on ASOC. With a model more like ASOC
>  > codecs, the AC97 patches could be pushed into the codec files.
> The ASoC AC97 support doesn't use the AC97 patch infrastructure at all -
>  it's completely independent so things are pretty much as you describe,
>  everything is in the CODEC drivers.

I've figured out now that the pci codec code is independent of the
asoc code. Are there plans to unify this in the future?


Jon Smirl
jonsmirl at gmail.com

More information about the Alsa-devel mailing list