On Thu, Oct 25, 2018 at 01:49:05PM +0100, Charles Keepax wrote: > I don't think you can sensibly get away with not supplying > default values. You say most sane register layouts have zero > values, alas again you may not be the biggest fan of our hardware > guys. The Lochnagar actually does have mostly zero defaults but > that is very much not generally the case with our hardware. There's large classes of hardware where it's just not generally the default over all manufacturers - things like audio CODECs and regulators that have to represent continuous ranges of numerical values have to decide between a helpful representation of numbers with a non-zero default or having a more complicated representation of numbers which manage to make zero correspond to whatever the default value is. It's also quite common for booleans you want to default on. > One of the main aims of regmap is to avoid bus accesses when > possible but I guess on the first write/read to any register you > could insert a read to pull the default, although I do worry > there is some corner case/flexibility that is going to cause > headaches later. It will actually populate the cache from I/O if you don't provide defaults but it then can't tell what the physical defaults are, we could read back from hardware but then we have to sync that with the hardware being reset and if you read the whole thing back that gets super expensive with slow buses.