21 Sep
2021
21 Sep
'21
1:11 p.m.
On Tue, Sep 21, 2021 at 08:37:28AM +0200, Peter Rosin wrote:
I expected it to just work to mark the register as readable and do without the default value (i.e. the way it was before my patch). What I don't understand is why regmap returns -EBUSY in that case. That doesn't make sense to me. Perhaps that -EBUSY is propagated from the I2C layer, but in that case, why is it then ok to do a write to another register at the same spot in the code? So, why -EBUSY?
Actually one thing that can trigger this now I think about it is attempting to access a volatile register when the device is in cache only mode for power management reasons - if the device is in cache only mode then you can't do a hardware read so volatile registers become inaccessible.