Lines Matching refs:clock
110 void (*setup)(struct device_node *node, struct mpc_i2c *i2c, u32 clock);
118 /* Sometimes 9th clock pulse isn't generated, and slave doesn't release
238 static int mpc_i2c_get_fdr_52xx(struct device_node *node, u32 clock,
247 if (clock == MPC_I2C_CLOCK_LEGACY) {
254 divider = mpc5xxx_fwnode_get_bus_frequency(fwnode) / clock;
275 u32 clock)
279 if (clock == MPC_I2C_CLOCK_PRESERVE) {
285 ret = mpc_i2c_get_fdr_52xx(node, clock, &i2c->real_clk);
291 dev_info(i2c->dev, "clock %u Hz (fdr=%d)\n", i2c->real_clk,
297 u32 clock)
305 u32 clock)
325 /* The clock setup for the 52xx works also fine for the 512x */
326 mpc_i2c_setup_52xx(node, i2c, clock);
331 u32 clock)
423 static int mpc_i2c_get_fdr_8xxx(struct device_node *node, u32 clock,
431 if (clock == MPC_I2C_CLOCK_LEGACY) {
437 divider = fsl_get_sys_freq() / clock / prescaler;
439 pr_debug("I2C: src_clock=%d clock=%d divider=%d\n",
440 fsl_get_sys_freq(), clock, divider);
458 u32 clock)
462 if (clock == MPC_I2C_CLOCK_PRESERVE) {
469 ret = mpc_i2c_get_fdr_8xxx(node, clock, &i2c->real_clk);
476 dev_info(i2c->dev, "clock %d Hz (dfsrr=%d fdr=%d)\n",
483 u32 clock)
781 u32 clock;
809 * enable clock for the I2C peripheral (non fatal),
818 dev_err(&op->dev, "failed to enable clock\n");
825 clock = MPC_I2C_CLOCK_PRESERVE;
828 "clock-frequency", &clock);
830 clock = MPC_I2C_CLOCK_LEGACY;
835 data->setup(op->dev.of_node, i2c, clock);
839 mpc_i2c_setup_8xxx(op->dev.of_node, i2c, clock);