[PATCH v3] ASoC: Intel: kbl_rt5663_rt5514_max98927: Split be_hw_params_fixup function
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Thu May 21 20:10:54 CEST 2020
On 5/21/20 12:30 PM, Łukasz Majczak wrote:
> Hi Pierre
>
> If you will take a look at the original kabylake_ssp_fixup() you will
> see that it is checking whether the related FE is "Kbl Audio Port",
> "Kbl Audio Headset Playback", "Kbl Audio Capture Port" or "Kbl Audio
> DMIC cap" - then for the first 3 cases it sets min/max channels to 2
> while for the "Kbl DMIC cap" it can be 2 or 4, that's is why I'm
> trying to split this, but maybe I'm missing here something.
I don't understand this code either.
I believe the intent is that for all SSP1-RT5663 usages, we should use
rate->min = rate->max = 48000;
chan->min = chan->max = 2;
snd_mask_none(fmt);
snd_mask_set_format(fmt, SNDRV_PCM_FORMAT_S24_LE);
That is pretty easy to move to a dedicated ssp1 fixup.
for SSP0, we have RT5514 for capture and max98927 for playback, but the
existing code does not explicitly deal with rate/channels/format for all
cases, so it's not clear what should happen.
Harsha, can you help here?
>
> Best regards,
> Lukasz
>
> czw., 21 maj 2020 o 19:17 Pierre-Louis Bossart
> <pierre-louis.bossart at linux.intel.com> napisał(a):
>>
>>
>>
>> On 5/21/20 12:08 PM, Łukasz Majczak wrote:
>>>>
>>>> don't add a new dailink, this is not right.
>>>>
>>> Can you advise a better solution how to assign different fixup
>>> functions to mic and to speakers? I was looking at "dmic01" dailink in
>>> skl_nau88l25_max98357a.c as an example.
>>
>> I am not sure I follow. the DMICs are handled on a shared SSP, so how
>> would one set a different fixup? The word length have to be the same.
More information about the Alsa-devel
mailing list