[alsa-devel] [PATCH v2] tlv320aic3x: disable ADC/DAC while changing clock

Mark Brown broonie at sirena.org.uk
Wed Apr 1 19:34:45 CEST 2009

On Wed, Apr 01, 2009 at 07:16:15PM +0200, Daniel Gl?ckner wrote:
> On 04/01/2009 06:48 PM, Mark Brown wrote:

> > JOINT_DUPLEX is just a hint to the application about how the card will

> Then there needs to be a way for codecs and machines to force this bit if
> the PCM driver didn't set it.

Ideally, yes, but it's not really important if it's set or not since
it's the constraints that actually matter.  Like I say, it's just a

> IMHO joint duplex is a hack that works only by chance.
> Constraints that depend on the configuration of the first stream on open of the
> second stream are no longer valid when the first stream is closed.
> It is also not possible to add constraints when the first stream has been opened
> but not yet configured.

There's several existing drivers which do this (the fsl-ssi driver or
the wm8903 spring to mind) - I'm planning to provide a helper for it
shortly since it's quite a common requirement.  There are some races
there but they are fairly narrow and the ALSA APIs don't allow them to
be closed down; error handling should still be done.

More information about the Alsa-devel mailing list