[alsa-devel] ASoC: Machine Driver Interaction with Codec Drivers

Lars-Peter Clausen lars at metafoo.de
Thu Jun 9 12:31:12 CEST 2016


On 06/09/2016 11:49 AM, Takashi Iwai wrote:
> On Wed, 08 Jun 2016 21:14:01 +0200,
> Lars-Peter Clausen wrote:
>>
>> Hi,
>>
>> No this is currently not really supported. There were some ideas for this a
>> long long time ago, but it never got implemented. And today basically
>> everybody takes care of hiding the controls from userspace.
>>
>> That does not mean it does not make sense to have such a feature, but it
>> needs somebody with a motivation to implement it.
> 
> The devils live in details.  Actually a primary question is in which
> level we should cover it.  For example, can we disable DAPM pins from
> the machine driver?  This will reduce not only kctls but DAPM paths.
> Or should we mark kctls just as invisible?  Or, would it be suitable
> rather to hide such a thing in user-space?

For DAPM we already do this. Even automatically the DAPM core is capable of
figuring out which paths are unused and will never be powered-up. The path
will still exist in the graph but it will be ignored for all operations and
not significantly affect performance.

And I think the idea back then was to track which controls are on which
paths and if it is on a non-connected path disable the control. What's a bit
tricky is if you have a mixer or mux and only some of the output/input paths
are not connected. Also for most controls we do not have the information
where they are placed within the graph.



More information about the Alsa-devel mailing list