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) */
288 u32 cdf, round, ick, sum, scl, cdf_width; in rcar_i2c_clock_calculate() local
303 * calculate SCL clock in rcar_i2c_clock_calculate()
308 * SCL = ick / (20 + SCGD * 8 + F[(ticf + tr + intd) * ick]) in rcar_i2c_clock_calculate()
311 * SCL = clkp / (8 + SMD * 2 + SCLD + SCHD +F[(ticf + tr + intd) * clkp]) in rcar_i2c_clock_calculate()
314 * ticf : I2C SCL falling time in rcar_i2c_clock_calculate()
315 * tr : I2C SCL rising time in rcar_i2c_clock_calculate()
331 /* On Gen3+, we use cdf only for the filters, not as a SCL divider */ in rcar_i2c_clock_calculate()
348 * SCL = ick / (20 + 8 * SCGD + F[(ticf + tr + intd) * ick]) in rcar_i2c_clock_calculate()
349 * 20 + 8 * SCGD + F[...] = ick / SCL in rcar_i2c_clock_calculate()
350 * SCGD = ((ick / SCL) - 20 - F[...]) / 8 in rcar_i2c_clock_calculate()
351 * Result (= SCL) should be less than bus_speed for hardware safety in rcar_i2c_clock_calculate()
355 scl = ick / (20 + 8 * scgd + round); in rcar_i2c_clock_calculate()
361 scl, t.bus_freq_hz, rate, round, cdf, scgd); in rcar_i2c_clock_calculate()
371 * SCL = clkp / (8 + 2 * SMD + SCLD + SCHD + F[(ticf + tr + intd) * clkp]) in rcar_i2c_clock_calculate()
372 * SCL = clkp / (8 + 2 * SMD + RCAR_SCLD_RATIO * x in rcar_i2c_clock_calculate()
377 * SCL = clkp / (8 + 2 * smd + sum_ratio * x + F[...]) in rcar_i2c_clock_calculate()
378 * 8 + 2 * smd + sum_ratio * x + F[...] = clkp / SCL in rcar_i2c_clock_calculate()
379 * x = ((clkp / SCL) - 8 - 2 * smd - F[...]) / sum_ratio in rcar_i2c_clock_calculate()
383 scl = rate / (8 + 2 * priv->smd + sum_ratio * x + round); in rcar_i2c_clock_calculate()
395 scl, t.bus_freq_hz, rate, round, cdf, priv->schd, priv->scld, priv->smd); in rcar_i2c_clock_calculate()
401 dev_err(dev, "it is impossible to calculate best SCL\n"); in rcar_i2c_clock_calculate()