Motivation here is to improve debug prints and while doing so to remove some duplication and separate timing parameter validation from actual register writes as this parameter validation and/or calculation is needed to do only during probe. Currently debug code prints SCL timing parameters whenever HW is reinitialized but doesn't print importand SDA hold time nor actual bus speed the controller is going to operate. Jarkko Nikula (5): i2c: designware: Remove needless variable from i2c_dw_init_slave() i2c: designware: Move register access detection to common code i2c: designware: Separate timing parameter setting from HW initalization i2c: designware: Add debug print for SDA hold time value i2c: designware: Add debug print for bus speed drivers/i2c/busses/i2c-designware-common.c | 71 ++++++++ drivers/i2c/busses/i2c-designware-core.h | 2 + drivers/i2c/busses/i2c-designware-master.c | 191 ++++++++++++--------- drivers/i2c/busses/i2c-designware-slave.c | 42 +---- 4 files changed, 187 insertions(+), 119 deletions(-) -- 2.17.0