On Mon, Dec 09, 2019 at 07:35:11PM +0100, Daniel Mack wrote: > + /* > + * Setting clock inversion is only supported globally for both DAIs, > + * so we ignore the settings made for DAI1 here. > + */ > + if (index == 0) { > + switch (format & SND_SOC_DAIFMT_INV_MASK) { > + case SND_SOC_DAIFMT_NB_NF: I dunno if it's a blocker but it'd feel nicer to try to verify that the settings are the same and warn if not. > +static int ad242x_set_dai_fmt_dai0(struct snd_soc_dai *codec_dai, > + unsigned int format) > +{ > + return ad242x_set_dai_fmt(codec_dai, format, 0); > +} > + > +static int ad242x_set_dai_fmt_dai1(struct snd_soc_dai *codec_dai, > + unsigned int format) > +{ > + return ad242x_set_dai_fmt(codec_dai, format, 1); > +} You don't need separate ops, just look at dai->id. > +module_platform_driver(ad242x_platform_driver); > + > +MODULE_AUTHOR("Daniel Mack "); > +MODULE_DESCRIPTION("AD242X ALSA SoC driver"); > +MODULE_LICENSE("GPL"); Should have a MODULE_ALIAS() as well for autoloading.