Hi again
But, ak4554 case, data formats are playback : SND_SOC_DAIFMT_RIGHT_J capture : SND_SOC_DAIFMT_LEFT_J and, it can't exchange this data format.
CPU driver should set these information for ak4554 when playback/capture.
Then, how to specify these data format on ALSA SoC ?
You can add two different DAIs one for playback one for capture. Then you can specify the format for each.
1 more question.
On ak4554 side driver, I guess, it will be
struct snd_soc_dai_driver ak4554_playback_dai = { .name = "ak4554-playback", .playback = { ... }, }
struct snd_soc_dai_driver ak4554_captrure_dai = { .name = "ak4554-captrure", .capture = { ... }, };
But, ak4554 needs .symmetric_rates between playback <--> capture. Is it possible ? Or, am I misunderstanding ?
Best regards --- Kuninori Morimoto