Lines Matching full:scl

45 #define ICMPR	0x2C	/* SCL mask control */
46 #define ICHPR 0x30 /* SCL HIGH control */
47 #define ICLPR 0x34 /* SCL LOW control */
59 #define FSCL BIT(6) /* override SCL pin */
95 #define SME BIT(0) /* SCL Mask Enable */
98 #define TCYC17 0x0f /* 17*Tcyc delay 1st bit between SDA and SCL */
102 /* SCL low/high ratio 5:4 to meet all I2C timing specs (incl safety margin) */
285 u32 cdf, round, ick, sum, scl, cdf_width; in rcar_i2c_clock_calculate() local
300 * calculate SCL clock in rcar_i2c_clock_calculate()
305 * SCL = ick / (20 + SCGD * 8 + F[(ticf + tr + intd) * ick]) in rcar_i2c_clock_calculate()
308 * SCL = clkp / (8 + SMD * 2 + SCLD + SCHD +F[(ticf + tr + intd) * clkp]) in rcar_i2c_clock_calculate()
311 * ticf : I2C SCL falling time in rcar_i2c_clock_calculate()
312 * tr : I2C SCL rising time in rcar_i2c_clock_calculate()
328 /* On Gen3+, we use cdf only for the filters, not as a SCL divider */ in rcar_i2c_clock_calculate()
345 * SCL = ick / (20 + 8 * SCGD + F[(ticf + tr + intd) * ick]) in rcar_i2c_clock_calculate()
346 * 20 + 8 * SCGD + F[...] = ick / SCL in rcar_i2c_clock_calculate()
347 * SCGD = ((ick / SCL) - 20 - F[...]) / 8 in rcar_i2c_clock_calculate()
348 * Result (= SCL) should be less than bus_speed for hardware safety in rcar_i2c_clock_calculate()
352 scl = ick / (20 + 8 * scgd + round); in rcar_i2c_clock_calculate()
358 scl, t.bus_freq_hz, rate, round, cdf, scgd); in rcar_i2c_clock_calculate()
368 * SCL = clkp / (8 + 2 * SMD + SCLD + SCHD + F[(ticf + tr + intd) * clkp]) in rcar_i2c_clock_calculate()
369 * SCL = clkp / (8 + 2 * SMD + RCAR_SCLD_RATIO * x in rcar_i2c_clock_calculate()
374 * SCL = clkp / (8 + 2 * smd + sum_ratio * x + F[...]) in rcar_i2c_clock_calculate()
375 * 8 + 2 * smd + sum_ratio * x + F[...] = clkp / SCL in rcar_i2c_clock_calculate()
376 * x = ((clkp / SCL) - 8 - 2 * smd - F[...]) / sum_ratio in rcar_i2c_clock_calculate()
380 scl = rate / (8 + 2 * priv->smd + sum_ratio * x + round); in rcar_i2c_clock_calculate()
392 scl, t.bus_freq_hz, rate, round, cdf, priv->schd, priv->scld, priv->smd); in rcar_i2c_clock_calculate()
398 dev_err(dev, "it is impossible to calculate best SCL\n"); in rcar_i2c_clock_calculate()