On Mon, Jul 18, 2022 at 01:32:36PM +0800, Zhu Ning wrote: > The ES8326 codec is not compatible with ES8316 and requires a dedicated driver. > > Signed-off-by: David Yang <yangxiaohua@xxxxxxxxxxxxxxxx> > Signed-off-by: Zhu Ning <zhuning@xxxxxxxxxxxxxxxx> > > ----- > +static const struct snd_soc_component_driver soc_component_dev_es8326 = { > + .probe = es8326_probe, > + .remove = es8326_remove, > + .resume = es8326_resume, > + .suspend = es8326_suspend, > + .set_bias_level = es8326_set_bias_level, > + .set_jack = es8326_set_jack, > + > + .dapm_widgets = es8326_dapm_widgets, > + .num_dapm_widgets = ARRAY_SIZE(es8326_dapm_widgets), > + .dapm_routes = es8326_dapm_routes, > + .num_dapm_routes = ARRAY_SIZE(es8326_dapm_routes), > + .controls = es8326_snd_controls, > + .num_controls = ARRAY_SIZE(es8326_snd_controls), > +}; As this device sits behind an I2S link you need the endianness flag here to specify that the endian will be lost over the bus. Thanks, Charles