Lines Matching refs:compo
62 struct sti_compositor *compo = dev_get_drvdata(dev); in sti_compositor_bind() local
68 struct sti_compositor_subdev_descriptor *desc = compo->data.subdev_desc; in sti_compositor_bind()
69 unsigned int array_size = compo->data.nb_subdev; in sti_compositor_bind()
71 dev_priv->compo = compo; in sti_compositor_bind()
77 compo->vid[vid_id++] = in sti_compositor_bind()
78 sti_vid_create(compo->dev, desc[i].id, in sti_compositor_bind()
79 compo->regs + desc[i].offset); in sti_compositor_bind()
83 compo->mixer[mixer_id++] = in sti_compositor_bind()
84 sti_mixer_create(compo->dev, desc[i].id, in sti_compositor_bind()
85 compo->regs + desc[i].offset); in sti_compositor_bind()
111 cursor = sti_cursor_create(drm_dev, compo->dev, in sti_compositor_bind()
113 compo->regs + desc[i].offset, in sti_compositor_bind()
121 primary = sti_gdp_create(drm_dev, compo->dev, in sti_compositor_bind()
123 compo->regs + desc[i].offset, in sti_compositor_bind()
138 sti_crtc_init(drm_dev, compo->mixer[crtc_id], in sti_compositor_bind()
182 struct sti_compositor *compo; in sti_compositor_probe() local
185 compo = devm_kzalloc(dev, sizeof(*compo), GFP_KERNEL); in sti_compositor_probe()
186 if (!compo) { in sti_compositor_probe()
190 compo->dev = dev; in sti_compositor_probe()
191 compo->vtg_vblank_nb.notifier_call = sti_crtc_vblank_cb; in sti_compositor_probe()
196 memcpy(&compo->data, of_match_node(compositor_of_match, np)->data, in sti_compositor_probe()
205 compo->regs = devm_ioremap(dev, res->start, resource_size(res)); in sti_compositor_probe()
206 if (compo->regs == NULL) { in sti_compositor_probe()
212 compo->clk_compo_main = devm_clk_get(dev, "compo_main"); in sti_compositor_probe()
213 if (IS_ERR(compo->clk_compo_main)) { in sti_compositor_probe()
215 return PTR_ERR(compo->clk_compo_main); in sti_compositor_probe()
218 compo->clk_compo_aux = devm_clk_get(dev, "compo_aux"); in sti_compositor_probe()
219 if (IS_ERR(compo->clk_compo_aux)) { in sti_compositor_probe()
221 return PTR_ERR(compo->clk_compo_aux); in sti_compositor_probe()
224 compo->clk_pix_main = devm_clk_get(dev, "pix_main"); in sti_compositor_probe()
225 if (IS_ERR(compo->clk_pix_main)) { in sti_compositor_probe()
227 return PTR_ERR(compo->clk_pix_main); in sti_compositor_probe()
230 compo->clk_pix_aux = devm_clk_get(dev, "pix_aux"); in sti_compositor_probe()
231 if (IS_ERR(compo->clk_pix_aux)) { in sti_compositor_probe()
233 return PTR_ERR(compo->clk_pix_aux); in sti_compositor_probe()
237 compo->rst_main = devm_reset_control_get(dev, "compo-main"); in sti_compositor_probe()
239 if (!IS_ERR(compo->rst_main)) in sti_compositor_probe()
240 reset_control_deassert(compo->rst_main); in sti_compositor_probe()
242 compo->rst_aux = devm_reset_control_get(dev, "compo-aux"); in sti_compositor_probe()
244 if (!IS_ERR(compo->rst_aux)) in sti_compositor_probe()
245 reset_control_deassert(compo->rst_aux); in sti_compositor_probe()
249 compo->vtg_main = of_vtg_find(vtg_np); in sti_compositor_probe()
253 compo->vtg_aux = of_vtg_find(vtg_np); in sti_compositor_probe()
255 platform_set_drvdata(pdev, compo); in sti_compositor_probe()