On Wed, 2023-05-24 at 17:51 +0200, Alexandre Mergnat wrote: > External email : Please do not click links or open attachments until > you have verified the sender or the content. > > > On 23/05/2023 04:19, Trevor Wu wrote: > > card_data = (struct mt8188_card_data > > *)of_device_get_match_data(&pdev->dev); > > @@ -776,9 +1066,38 @@ static int mt8188_mt6359_dev_probe(struct > > platform_device *pdev) > > dai_link->init = mt8188_mt6359_init; > > init_mt6359 = true; > > } > > + } else if (strcmp(dai_link->name, "ETDM1_OUT_BE") == > > 0 || > > + strcmp(dai_link->name, "ETDM2_OUT_BE") == > > 0 || > > + strcmp(dai_link->name, "ETDM1_IN_BE") == 0 > > || > > + strcmp(dai_link->name, "ETDM2_IN_BE") == > > 0) { > > + if (!strcmp(dai_link->codecs->dai_name, > > MAX98390_CODEC_DAI)) { > > + dai_link->ops = &mt8188_max98390_ops; > > + if (init_max98390) > > + continue; > > I prefer that you do like your patch [PATCH v2 1/7] to be consistent > and easy to read. OK, I will unify the style in v3. > > + if (!init_mt6359) { > + dai_link->init = mt8188_mt6359_init; > + init_mt6359 = true; > + } > > > + > > + dai_link->init = > > mt8188_max98390_codec_init; > > + init_max98390 = true; > > + } else if (!strcmp(dai_link->codecs- > > >dai_name, NAU8825_CODEC_DAI)) { > > + dai_link->ops = &mt8188_nau8825_ops; > > + if (init_nau8825) > > + continue; > > ditto > > > + > > + dai_link->init = > > mt8188_nau8825_codec_init; > > + dai_link->exit = > > mt8188_nau8825_codec_exit; > > + init_nau8825 = true; > > + } else { > > + if (strcmp(dai_link->codecs- > > >dai_name, "snd-soc-dummy-dai")) { > > Shouldn't be with a NOT operator ("!") ? > + if (!strcmp(dai_link->codecs->dai_name, "snd-soc-dummy-dai")) { > strcmp returns 0 when the contents of both strings are equal. The default codec name is "snd-soc-dummy-dai". When the codec is specified from dts, the return value of strcmp will be non-zero and this is the case I want to assign init function. Therefore, it doesn't require a NOT operator here. Thanks, Trevor >