On Fri, Aug 06, 2010 at 10:18:45AM +1000, Stuart Longland wrote: > Work has continued on the TLV320AIC3204 CODEC driver, and there have > been a number of fixes since the last patch was published. However, > this CODEC is a rather complicated beast to drive, some may find the > controls a little unweildy, and as such, I was wondering if the machine > driver could be used to abstract this for a given target? The machine driver shouldn't be doing this - it's too fragile in the face of any changes in the drivers and means hard coding use cases into the kernel which is really bad practice since it's much slower than doing things from user space and much harder to change as new needs arise. Much of this should be being handled by use case management anyway, even the controls that actually exist usefully on a given system are normally way more detail than end applications should ever be seeing. See http://www.slimlogic.co.uk/?p=40 for the API which should deal with that. We should still do the limiting in kernel for controls that are on paths that can not connected be at all (since it makes life easier developing use cases) but the major thing is the use case management. Takashi has a patch for hiding controls which could be built on to do this but unfortunately it's been sitting in his sound-unstable tree rather than included in mainline. _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel