Lines Matching refs:data

69  * @cmu:	CMU data
108 * @cmu: CMU data
123 struct exynos_arm64_cmu_data *data;
126 data = dev_get_drvdata(dev);
127 if (data)
128 data->clk = parent_clk;
142 struct exynos_arm64_cmu_data *data = dev_get_drvdata(dev);
145 data->clk_save = samsung_clk_alloc_reg_dump(cmu->clk_regs,
147 if (!data->clk_save)
150 data->nr_clk_save = cmu->nr_clk_regs;
151 data->clk_suspend = cmu->suspend_regs;
152 data->nr_clk_suspend = cmu->nr_suspend_regs;
153 data->nr_pclks = of_clk_get_parent_count(dev->of_node);
154 if (!data->nr_pclks)
157 data->pclks = devm_kcalloc(dev, sizeof(struct clk *), data->nr_pclks,
159 if (!data->pclks) {
160 kfree(data->clk_save);
164 for (i = 0; i < data->nr_pclks; i++) {
168 kfree(data->clk_save);
170 clk_put(data->pclks[i]);
173 data->pclks[i] = clk;
184 * @cmu: CMU data
227 struct exynos_arm64_cmu_data *data;
233 data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL);
234 if (!data)
237 platform_set_drvdata(pdev, data);
259 data->ctx = samsung_clk_init(dev, reg_base, cmu->nr_clk_ids);
271 samsung_cmu_register_clocks(data->ctx, cmu);
272 samsung_clk_of_add_provider(dev->of_node, data->ctx);
280 struct exynos_arm64_cmu_data *data = dev_get_drvdata(dev);
283 samsung_clk_save(data->ctx->reg_base, data->clk_save,
284 data->nr_clk_save);
286 for (i = 0; i < data->nr_pclks; i++)
287 clk_prepare_enable(data->pclks[i]);
290 samsung_clk_restore(data->ctx->reg_base, data->clk_suspend,
291 data->nr_clk_suspend);
293 for (i = 0; i < data->nr_pclks; i++)
294 clk_disable_unprepare(data->pclks[i]);
296 clk_disable_unprepare(data->clk);
303 struct exynos_arm64_cmu_data *data = dev_get_drvdata(dev);
306 clk_prepare_enable(data->clk);
308 for (i = 0; i < data->nr_pclks; i++)
309 clk_prepare_enable(data->pclks[i]);
311 samsung_clk_restore(data->ctx->reg_base, data->clk_save,
312 data->nr_clk_save);
314 for (i = 0; i < data->nr_pclks; i++)
315 clk_disable_unprepare(data->pclks[i]);