David, On Mon, May 16, 2016 at 7:05 AM, David Wu <david.wu@xxxxxxxxxxxxxx> wrote: > - new method to caculate i2c timings for rk3399: > There was an timing issue about "repeated start" time at the I2C > controller of version0, controller appears to drop SDA at .875x (7/8) > programmed clk high. On version 1 of the controller, the rule(.875x) > isn't enough to meet tSU;STA > requirements on 100k's Standard-mode. To resolve this issue, > sda_update_config, start_setup_config and stop_setup_config for I2C > timing information are added, new rules are designed to calculate > the timing information at new v1. > - pclk and function clk are separated at rk3399 > > Signed-off-by: David Wu <david.wu@xxxxxxxxxxxxxx> > Tested-by: Caesar Wang <wxt@xxxxxxxxxxxxxx> > Tested-by: Heiko Stuebner <heiko@xxxxxxxxx> > --- > Change in v10: > - fix the clean of con register in rk3x_i2c_stop() > > Change in v9: > - add spin lock for tuning updated in rk3x_i2c_adapt_div() (Doug) > > Changes in v8: > - update tuning in RKI2C_CON register by doing a read-modify-write (Doug) > - new method to use pclk and clk (Doug) > > Changes in v7: > - transform into a 9 series patches (Doug) > - drop highspeed with mastercode, and support fast-mode plus (Doug) > > drivers/i2c/busses/i2c-rk3x.c | 294 +++++++++++++++++++++++++++++++++++++++--- > 1 file changed, 274 insertions(+), 20 deletions(-) Reviewed-by: Douglas Anderson <dianders@xxxxxxxxxxxx> -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html