[alsa-devel] How to activate DAI link to dummy codec?

Anatol Pomozov anatol.pomozov at gmail.com
Sun Jul 12 01:37:45 CEST 2015


Hi

On Sat, Jul 11, 2015 at 2:58 AM, Lars-Peter Clausen <lars at metafoo.de> wrote:
> On 07/10/2015 11:50 PM, Anatol Pomozov wrote:
>>
>> Hi
>>
>> I have following hardware configuration
>>
>> [SoC] <=> [RT5677] <=> [MAX98357A]
>>
>> MAX98357A is a simple speaker amplifier with I2S data interface and no
>> I2C control. The chip automatically configures itself (rate/block
>> frequency) when I2S is started streaming to the chip. This chip does
>> not need a driver (there is nothing to configure) and we can use
>> "dummy-codec" for it.
>
>
> The dummy CODEC is only meant to be used in situations where there is no
> actual hardware.

Thanks Lars-Peter, this is the answer I was looking for.

I created a simple driver for MAX98357 and it works fine. Will share
it later after more testing.

>
> If there is actual hardware even if it does not have a control bus the
> hardware will still have constraints like supported samplerates, etc. which
> should be modeled. And the data flow graph also should be modeled using
> DAPM.
>
>>
>> There is a DAI link between RT5677 and MAX and it should be configured
>> from RT5677 side. RT5677 is master here and it need to set I2S bus
>> parameters. Configuration happens in rt5677 hw_params() function and
>> it is triggered by dai link activation.
>>
>> My question is how to tell DAPM that I need to activate this link?
>>
>> If MAX98357A was a real codec then it would have an OUTPUT widget that
>> I can activate, this would trigger dai link in between to be activated
>> as well. But dummy codec does not have any widgets, so how I suppose
>> to activate link to dummy codec?
>
>
> You just gave the answer yourself, make it a real CODEC :)


More information about the Alsa-devel mailing list