Lines Matching defs:data
24 pasemi_platform_i2c_calc_clk_div(struct pasemi_platform_i2c_data *data,
27 unsigned long clk_rate = clk_get_rate(data->clk_ref);
32 data->smbus.clk_div = DIV_ROUND_UP(clk_rate, 16 * frequency);
33 if (data->smbus.clk_div < 4)
34 return dev_err_probe(data->smbus.dev, -EINVAL,
37 if (data->smbus.clk_div > 0xff)
38 return dev_err_probe(data->smbus.dev, -EINVAL,
48 struct pasemi_platform_i2c_data *data;
54 data = devm_kzalloc(dev, sizeof(struct pasemi_platform_i2c_data),
56 if (!data)
59 smbus = &data->smbus;
69 data->clk_ref = devm_clk_get_enabled(dev, NULL);
70 if (IS_ERR(data->clk_ref))
71 return PTR_ERR(data->clk_ref);
73 error = pasemi_platform_i2c_calc_clk_div(data, frequency);
87 platform_set_drvdata(pdev, data);