Lines Matching refs:data
81 static struct ccu_pll *ccu_pll_find_desc(struct ccu_pll_data *data,
88 pll = data->plls[idx];
98 struct ccu_pll_data *data;
100 data = kzalloc(sizeof(*data), GFP_KERNEL);
101 if (!data)
104 data->np = np;
106 return data;
109 static void ccu_pll_free_data(struct ccu_pll_data *data)
111 kfree(data);
114 static int ccu_pll_find_sys_regs(struct ccu_pll_data *data)
116 data->sys_regs = syscon_node_to_regmap(data->np->parent);
117 if (IS_ERR(data->sys_regs)) {
119 of_node_full_name(data->np));
120 return PTR_ERR(data->sys_regs);
129 struct ccu_pll_data *data = priv;
134 pll = ccu_pll_find_desc(data, clk_id);
143 static int ccu_pll_clk_register(struct ccu_pll_data *data)
155 init.sys_regs = data->sys_regs;
156 init.np = data->np;
159 data->plls[idx] = ccu_pll_hw_register(&init);
160 if (IS_ERR(data->plls[idx])) {
161 ret = PTR_ERR(data->plls[idx]);
168 ret = of_clk_add_hw_provider(data->np, ccu_pll_of_clk_hw_get, data);
171 of_node_full_name(data->np));
179 ccu_pll_hw_unregister(data->plls[idx]);
186 struct ccu_pll_data *data;
189 data = ccu_pll_create_data(np);
190 if (IS_ERR(data))
193 ret = ccu_pll_find_sys_regs(data);
197 ret = ccu_pll_clk_register(data);
204 ccu_pll_free_data(data);