On Tue, Nov 22, 2011 at 04:44:39PM +0100, Daniel Mack wrote:
The code is so simple that I'm starting to suspect i2c_smbus_write_byte_data() is doing something very wrong, but I can't trace it without a hardware I2C analyzer right now. The i2c-regmap low-level implementation uses different access functions under the hood, so maybe that's a regression.
Could be, though I can't see any changes in the code here. It might be that a change between SMBus and regmap at runtime is upsetting the device somehow but given that it's supposed to be coming back from a power on reset...
We also think that the effect is actually rather new.
Does reverting to the non-regmap soc-io.c help?
In any case, the patch is moving to factor code out in favour of core facilities so it's a good idea anyway.
Hmm, we should really care for the root cause, but maybe we can still commit this thing, with a more appropriate commit log?
I think so.