Hi Harsha,
We would like to continue the work on this, could you please suggest the correct approach.
Best regards, Lukasz
czw., 21 maj 2020 o 20:10 Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com napisał(a):
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@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.