[alsa-devel] [PATCH][ASoC v2] Update Freescale MPC8610HPCD fabric driver to support multiple codecs

Mark Brown broonie at opensource.wolfsonmicro.com
Fri Jun 13 17:57:13 CEST 2008

On Fri, Jun 13, 2008 at 11:26:57AM -0400, Jon Smirl wrote:

[Dynamic clocking.]
> Intel HDA has a much better scheme for handling that via a fixed clock
> and skipping slots. I suspect I'll have to do some work on alsa to
> make this work.

As well adjusting things to support the widest range of sample rates you
also see this used in order to reduce power consumption.

> On 6/13/08, Timur Tabi <timur at freescale.com> wrote:

> >  > clock back to the CPU? Timur's device tree is the one with a codec
> >  > clock rate. Are there other parameters the system might need to set
> >  > into a codec?

> > The direction of the clock.  That's why I have "i2s-slave" in the SSI nodes.

Not just one clock, either - some devices support independent control of
the directions of frame and bit clocks, for example.  Other things that
can be configured include clock sharing, timeslot configuration for
buses with more than two devices, parameters for the PLLs and dividers 
in the internal clocking tree of the codec, clock outputs not associated
with an audio interface and jack detection.

For added fun, consider codecs with multiple I2S interfaces.

> There should be a way for the ssi driver to extract the parameters
> from the device tree and then feed them into the codec in an arch
> independent manner. The codecs need to stay arch independent. I
> haven't tried doing this yet in the code since I haven't needed setup
> parameters.

Could you explain in more detail why you want to do this in the SSI
driver in particular?  Trying to have a generic machine driver that
takes configuration from the device tree seems like a worthwhile goal
but I'm not clear what the gain from integrating this into the
controller driver is.

More information about the Alsa-devel mailing list