Lines Matching refs:par
198 static int simplefb_clocks_init(struct simplefb_par *par, in simplefb_clocks_init() argument
208 par->clk_count = of_clk_get_parent_count(np); in simplefb_clocks_init()
209 if (par->clk_count <= 0) in simplefb_clocks_init()
212 par->clks = kcalloc(par->clk_count, sizeof(struct clk *), GFP_KERNEL); in simplefb_clocks_init()
213 if (!par->clks) in simplefb_clocks_init()
216 for (i = 0; i < par->clk_count; i++) { in simplefb_clocks_init()
221 if (par->clks[i]) in simplefb_clocks_init()
222 clk_put(par->clks[i]); in simplefb_clocks_init()
224 kfree(par->clks); in simplefb_clocks_init()
231 par->clks[i] = clock; in simplefb_clocks_init()
234 for (i = 0; i < par->clk_count; i++) { in simplefb_clocks_init()
235 if (par->clks[i]) { in simplefb_clocks_init()
236 ret = clk_prepare_enable(par->clks[i]); in simplefb_clocks_init()
241 clk_put(par->clks[i]); in simplefb_clocks_init()
242 par->clks[i] = NULL; in simplefb_clocks_init()
250 static void simplefb_clocks_destroy(struct simplefb_par *par) in simplefb_clocks_destroy() argument
254 if (!par->clks) in simplefb_clocks_destroy()
257 for (i = 0; i < par->clk_count; i++) { in simplefb_clocks_destroy()
258 if (par->clks[i]) { in simplefb_clocks_destroy()
259 clk_disable_unprepare(par->clks[i]); in simplefb_clocks_destroy()
260 clk_put(par->clks[i]); in simplefb_clocks_destroy()
264 kfree(par->clks); in simplefb_clocks_destroy()
267 static int simplefb_clocks_init(struct simplefb_par *par, in simplefb_clocks_init() argument
269 static void simplefb_clocks_destroy(struct simplefb_par *par) { } in simplefb_clocks_destroy() argument
277 struct simplefb_par *par; in simplefb_probe() local
303 par = info->par; in simplefb_probe()
337 info->pseudo_palette = par->palette; in simplefb_probe()
339 ret = simplefb_clocks_init(par, pdev); in simplefb_probe()
362 simplefb_clocks_destroy(par); in simplefb_probe()
373 struct simplefb_par *par = info->par; in simplefb_remove() local
376 simplefb_clocks_destroy(par); in simplefb_remove()