On Mon, Jul 02, 2018 at 12:15:03PM +0200, Jerome Brunet wrote: > On Mon, 2018-07-02 at 11:12 +0100, Mark Brown wrote: > > On Sat, Jun 30, 2018 at 07:22:41PM +0200, Jerome Brunet wrote: > > > + switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) { > > > + case SND_SOC_DAIFMT_I2S: > > > + case SND_SOC_DAIFMT_LEFT_J: > > > + break; > > These two modes are not the same so either there should be some > > different handling to select between them or one shouldn't be supported. > Actually, the difference is provided with some pull-up/pull-down resistor. > There no way to set this up in SW, AFAIK. > So the driver shall accept both and trust we are not doing anything crazy It at least needs a comment as this is obviously dodgy code. Ideally there'd be a DT property saying which mode was selected on a given board so if we ever get round to doing automatic configuration of formats the driver will be able to cope.