[alsa-devel] [PATCH 4/4] ASoC: firmware core: Add core support to create and destroy firmware components.

Liam Girdwood lrg at ti.com
Wed Nov 21 12:16:18 CET 2012

On 21/11/12 10:37, Mark Brown wrote:
> On Wed, Nov 21, 2012 at 10:21:17AM +0000, Liam Girdwood wrote:
>> On 21/11/12 00:43, Mark Brown wrote:
>>> So, the text strings for coefficients were what drivers used to be using
>> Yeah, it will be your standard alsamixer enum kcontrol strings e.g.
>> for the ABE DL1 EQU has "Flat Response", "800Hz HPF 0dB", "800Hz HPF
>> -12dB", "800Hz HPF -20dB", "4000Hz LPF 0dB" where the settings are
>> tied to the associated blob of coefficients.
> Right, but the decision we took at the ASoC conference and have been
> implementing was to move away from that to just letting applications set
> the binary blob to change the enumeration value instead and then putting
> the management of multiple names for the blobs into userspace.

Ok, this is fine and works well for larger or multiple blobs that will be 
frequently changed at runtime depending on use case. However, the ABE 
coefficients here (around 400 bytes per EQU) are only loaded once at boot 
(where the number and graph positions of the EQUs is tightly coupled to the 
FW) and are not unloaded. The simplification here is that we dont have to 
write any new userspace code to manage the ABE EQUs and treat them as regular 
alsamixer controls which makes the integration and testing easier in this case.


More information about the Alsa-devel mailing list