Lines Matching refs:data

62 static int si514_enable_output(struct clk_si514 *data, bool enable)
64 return regmap_update_bits(data->regmap, SI514_REG_CONTROL,
70 struct clk_si514 *data = to_clk_si514(hw);
72 return si514_enable_output(data, true);
77 struct clk_si514 *data = to_clk_si514(hw);
79 si514_enable_output(data, false);
84 struct clk_si514 *data = to_clk_si514(hw);
88 err = regmap_read(data->regmap, SI514_REG_CONTROL, &val);
96 static int si514_get_muldiv(struct clk_si514 *data,
102 err = regmap_bulk_read(data->regmap, SI514_REG_M_FRAC1,
115 static int si514_set_muldiv(struct clk_si514 *data,
142 err = regmap_write(data->regmap, SI514_REG_LP, lp);
154 err = regmap_bulk_write(data->regmap, SI514_REG_HS_DIV, reg + 5, 2);
161 return regmap_bulk_write(data->regmap, SI514_REG_M_FRAC1, reg, 5);
217 struct clk_si514 *data = to_clk_si514(hw);
221 err = si514_get_muldiv(data, &settings);
223 dev_err(&data->i2c_client->dev, "unable to retrieve settings\n");
254 struct clk_si514 *data = to_clk_si514(hw);
263 err = regmap_read(data->regmap, SI514_REG_CONTROL, &old_oe_state);
267 si514_enable_output(data, false);
269 err = si514_set_muldiv(data, &settings);
274 err = regmap_write(data->regmap, SI514_REG_CONTROL, SI514_CONTROL_FCAL);
282 si514_enable_output(data, true);
332 struct clk_si514 *data;
336 data = devm_kzalloc(&client->dev, sizeof(*data), GFP_KERNEL);
337 if (!data)
343 data->hw.init = &init;
344 data->i2c_client = client;
350 data->regmap = devm_regmap_init_i2c(client, &si514_regmap_config);
351 if (IS_ERR(data->regmap)) {
353 return PTR_ERR(data->regmap);
356 i2c_set_clientdata(client, data);
358 err = devm_clk_hw_register(&client->dev, &data->hw);
364 &data->hw);