On 12/16/22 09:49, Ajye Huang wrote: > This patch adds the driver data for two nau8318 speaker amplifiers on > SSP1 and nau8825 on SSP0 for ADL platform. So here you are making reference to two amplifiers... > +static struct snd_soc_dai_link_component nau8318_components[] = { > + { > + .name = "NVTN2012:00", > + .dai_name = "nau8315-hifi", > + } > +}; but here there's only one? I was expecting something like what we've used for Maxim amplifiers with a codec configuration and dailink components that list the two amplifiers. static struct snd_soc_codec_conf max_98373_codec_conf[] = { { .dlc = COMP_CODEC_CONF(MAX_98373_DEV0_NAME), .name_prefix = "Right", }, { .dlc = COMP_CODEC_CONF(MAX_98373_DEV1_NAME), .name_prefix = "Left", }, }; struct snd_soc_dai_link_component max_98373_components[] = { { /* For Right */ .name = MAX_98373_DEV0_NAME, .dai_name = MAX_98373_CODEC_DAI, }, { /* For Left */ .name = MAX_98373_DEV1_NAME, .dai_name = MAX_98373_CODEC_DAI, }, }; Or is this a commit message problem and there's really only one amplifier? > + > static struct snd_soc_dai_link_component dummy_component[] = { > { > .name = "snd-soc-dummy", > @@ -486,6 +494,11 @@ static struct snd_soc_dai_link *sof_card_dai_links_create(struct device *dev, > max_98360a_dai_link(&links[id]); > } else if (sof_nau8825_quirk & SOF_RT1015P_SPEAKER_AMP_PRESENT) { > sof_rt1015p_dai_link(&links[id]); > + } else if (sof_nau8825_quirk & > + SOF_NAU8318_SPEAKER_AMP_PRESENT) { > + links[id].codecs = nau8318_components; > + links[id].num_codecs = ARRAY_SIZE(nau8318_components); > + links[id].init = speaker_codec_init; The rest looks fine, I only have this one/two amplifier question.