Lines Matching refs:cinfo

63 	struct palmas_clock_info *cinfo = to_palmas_clks_info(hw);  in palmas_clks_prepare()  local
66 ret = palmas_update_bits(cinfo->palmas, PALMAS_RESOURCE_BASE, in palmas_clks_prepare()
67 cinfo->clk_desc->control_reg, in palmas_clks_prepare()
68 cinfo->clk_desc->enable_mask, in palmas_clks_prepare()
69 cinfo->clk_desc->enable_mask); in palmas_clks_prepare()
71 dev_err(cinfo->dev, "Reg 0x%02x update failed, %d\n", in palmas_clks_prepare()
72 cinfo->clk_desc->control_reg, ret); in palmas_clks_prepare()
73 else if (cinfo->clk_desc->delay) in palmas_clks_prepare()
74 udelay(cinfo->clk_desc->delay); in palmas_clks_prepare()
81 struct palmas_clock_info *cinfo = to_palmas_clks_info(hw); in palmas_clks_unprepare() local
88 if (cinfo->ext_control_pin) in palmas_clks_unprepare()
91 ret = palmas_update_bits(cinfo->palmas, PALMAS_RESOURCE_BASE, in palmas_clks_unprepare()
92 cinfo->clk_desc->control_reg, in palmas_clks_unprepare()
93 cinfo->clk_desc->enable_mask, 0); in palmas_clks_unprepare()
95 dev_err(cinfo->dev, "Reg 0x%02x update failed, %d\n", in palmas_clks_unprepare()
96 cinfo->clk_desc->control_reg, ret); in palmas_clks_unprepare()
101 struct palmas_clock_info *cinfo = to_palmas_clks_info(hw); in palmas_clks_is_prepared() local
105 if (cinfo->ext_control_pin) in palmas_clks_is_prepared()
108 ret = palmas_read(cinfo->palmas, PALMAS_RESOURCE_BASE, in palmas_clks_is_prepared()
109 cinfo->clk_desc->control_reg, &val); in palmas_clks_is_prepared()
111 dev_err(cinfo->dev, "Reg 0x%02x read failed, %d\n", in palmas_clks_is_prepared()
112 cinfo->clk_desc->control_reg, ret); in palmas_clks_is_prepared()
115 return !!(val & cinfo->clk_desc->enable_mask); in palmas_clks_is_prepared()
176 struct palmas_clock_info *cinfo) in palmas_clks_get_clk_data() argument
203 cinfo->ext_control_pin = prop; in palmas_clks_get_clk_data()
206 static int palmas_clks_init_configure(struct palmas_clock_info *cinfo) in palmas_clks_init_configure() argument
210 ret = palmas_update_bits(cinfo->palmas, PALMAS_RESOURCE_BASE, in palmas_clks_init_configure()
211 cinfo->clk_desc->control_reg, in palmas_clks_init_configure()
212 cinfo->clk_desc->sleep_mask, 0); in palmas_clks_init_configure()
214 dev_err(cinfo->dev, "Reg 0x%02x update failed, %d\n", in palmas_clks_init_configure()
215 cinfo->clk_desc->control_reg, ret); in palmas_clks_init_configure()
219 if (cinfo->ext_control_pin) { in palmas_clks_init_configure()
220 ret = clk_prepare(cinfo->hw.clk); in palmas_clks_init_configure()
222 dev_err(cinfo->dev, "Clock prep failed, %d\n", ret); in palmas_clks_init_configure()
226 ret = palmas_ext_control_req_config(cinfo->palmas, in palmas_clks_init_configure()
227 cinfo->clk_desc->sleep_reqstr_id, in palmas_clks_init_configure()
228 cinfo->ext_control_pin, true); in palmas_clks_init_configure()
230 dev_err(cinfo->dev, "Ext config for %s failed, %d\n", in palmas_clks_init_configure()
231 cinfo->clk_desc->clk_name, ret); in palmas_clks_init_configure()
232 clk_unprepare(cinfo->hw.clk); in palmas_clks_init_configure()
244 struct palmas_clock_info *cinfo; in palmas_clks_probe() local
251 cinfo = devm_kzalloc(&pdev->dev, sizeof(*cinfo), GFP_KERNEL); in palmas_clks_probe()
252 if (!cinfo) in palmas_clks_probe()
255 palmas_clks_get_clk_data(pdev, cinfo); in palmas_clks_probe()
256 platform_set_drvdata(pdev, cinfo); in palmas_clks_probe()
258 cinfo->dev = &pdev->dev; in palmas_clks_probe()
259 cinfo->palmas = palmas; in palmas_clks_probe()
261 cinfo->clk_desc = &match_data->desc; in palmas_clks_probe()
262 cinfo->hw.init = &match_data->init; in palmas_clks_probe()
263 ret = devm_clk_hw_register(&pdev->dev, &cinfo->hw); in palmas_clks_probe()
270 ret = palmas_clks_init_configure(cinfo); in palmas_clks_probe()
276 ret = of_clk_add_hw_provider(node, of_clk_hw_simple_get, &cinfo->hw); in palmas_clks_probe()