Lines Matching full:speed
132 * @rate: I2C bus speed (Hz)
133 * @rate_min: 80% of I2C bus speed (Hz)
134 * @rate_max: 120% of I2C bus speed (Hz)
159 * @speed: I2C speed mode (standard, Fast Plus)
160 * @speed_freq: I2C speed frequency (Hz)
168 enum stm32_i2c_speed speed; member
198 int speed; member
506 sdadel_min = setup->fall_time - i2c_specs[setup->speed].hddat_min - in stm32_i2c_compute_solutions()
509 sdadel_max = i2c_specs[setup->speed].vddat_max - setup->rise_time - in stm32_i2c_compute_solutions()
512 scldel_min = setup->rise_time + i2c_specs[setup->speed].sudat_min; in stm32_i2c_compute_solutions()
581 clk_max = STM32_NSEC_PER_SEC / i2c_specs[setup->speed].rate_min; in stm32_i2c_choose_solution()
582 clk_min = STM32_NSEC_PER_SEC / i2c_specs[setup->speed].rate_max; in stm32_i2c_choose_solution()
599 if ((tscl_l < i2c_specs[setup->speed].l_min) || in stm32_i2c_choose_solution()
611 (tscl_h >= i2c_specs[setup->speed].h_min) && in stm32_i2c_choose_solution()
645 if (setup->speed >= STM32_I2C_SPEED_END) { in stm32_i2c_compute_timing()
646 pr_err("%s: speed out of bound {%d/%d}\n", __func__, in stm32_i2c_compute_timing()
647 setup->speed, STM32_I2C_SPEED_END - 1); in stm32_i2c_compute_timing()
651 if ((setup->rise_time > i2c_specs[setup->speed].rise_max) || in stm32_i2c_compute_timing()
652 (setup->fall_time > i2c_specs[setup->speed].fall_max)) { in stm32_i2c_compute_timing()
655 setup->rise_time, i2c_specs[setup->speed].rise_max, in stm32_i2c_compute_timing()
656 setup->fall_time, i2c_specs[setup->speed].fall_max); in stm32_i2c_compute_timing()
666 if (setup->speed_freq > i2c_specs[setup->speed].rate) { in stm32_i2c_compute_timing()
668 setup->speed_freq, i2c_specs[setup->speed].rate); in stm32_i2c_compute_timing()
709 setup->speed = i2c_priv->speed; in stm32_i2c_setup_timing()
710 setup->speed_freq = i2c_specs[setup->speed].rate; in stm32_i2c_setup_timing()
723 if (i2c_priv->speed > STM32_I2C_SPEED_STANDARD) { in stm32_i2c_setup_timing()
724 i2c_priv->speed--; in stm32_i2c_setup_timing()
725 setup->speed = i2c_priv->speed; in stm32_i2c_setup_timing()
727 i2c_specs[setup->speed].rate; in stm32_i2c_setup_timing()
728 debug("%s: downgrade I2C Speed Freq to (%i)\n", in stm32_i2c_setup_timing()
729 __func__, i2c_specs[setup->speed].rate); in stm32_i2c_setup_timing()
741 debug("%s: I2C Speed(%i), Freq(%i), Clk Source(%i)\n", __func__, in stm32_i2c_setup_timing()
742 setup->speed, setup->speed_freq, setup->clock_src); in stm32_i2c_setup_timing()
783 static int stm32_i2c_set_bus_speed(struct udevice *bus, unsigned int speed) in stm32_i2c_set_bus_speed() argument
787 switch (speed) { in stm32_i2c_set_bus_speed()
789 i2c_priv->speed = STM32_I2C_SPEED_STANDARD; in stm32_i2c_set_bus_speed()
792 i2c_priv->speed = STM32_I2C_SPEED_FAST; in stm32_i2c_set_bus_speed()
795 i2c_priv->speed = STM32_I2C_SPEED_FAST_PLUS; in stm32_i2c_set_bus_speed()
798 debug("%s: Speed %d not supported\n", __func__, speed); in stm32_i2c_set_bus_speed()