On Wed, 9 Feb 2022, Mark Brown wrote: > > In this case it was the ADAU1761 driver and it was several years ago > > and I don't know if it still is an issue. Basically the sequence was > > something like: > > > - System boots up. > > - Codec is configured (I think it was the sample rate, but it could have > > been the format or some other I2S parameter) to something that is non > > default. > > - System reboots. Since the codec has no means of getting reset, it > > retains all its register values. > > - This time, an attempt is made to configure the codec with the default > > sample rate. Since the driver believes the default is already set > > it does not attempt to write anything, although looking at > > regmap_write() now I'm not sure how this could be the case. > > update_bits() could also trigger this if it thinks the value didn't > change, but that's at a higher level before it ever gets as far as > trying to do the write and unrelated to the cache (it will also > suppress redundant writes with no cache present). Right, that sound even more familiar. /Ricard -- Ricard Wolf Wanderlof ricardw(at)axis.com Axis Communications AB, Lund, Sweden www.axis.com Phone +46 46 272 2016 Fax +46 46 13 61 30