Lines Matching refs:mcde
113 struct mcde *mcde = data;
116 val = readl(mcde->regs + MCDE_MISERR);
118 mcde_display_irq(mcde);
121 dev_info(mcde->dev, "some error IRQ\n");
122 writel(val, mcde->regs + MCDE_RISERR);
130 struct mcde *mcde = to_mcde(drm);
141 if (!mcde->bridge) {
161 mcde->dpi_output = true;
162 mcde->bridge = bridge;
163 mcde->flow_mode = MCDE_DPI_FORMATTER_FLOW;
188 ret = drm_simple_display_pipe_attach_bridge(&mcde->pipe,
189 mcde->bridge);
208 .name = "mcde",
271 struct mcde *mcde;
278 mcde = devm_drm_dev_alloc(dev, &mcde_drm_driver, struct mcde, drm);
279 if (IS_ERR(mcde))
280 return PTR_ERR(mcde);
281 drm = &mcde->drm;
282 mcde->dev = dev;
286 mcde->epod = devm_regulator_get(dev, "epod");
287 if (IS_ERR(mcde->epod)) {
288 ret = PTR_ERR(mcde->epod);
292 ret = regulator_enable(mcde->epod);
297 mcde->vana = devm_regulator_get(dev, "vana");
298 if (IS_ERR(mcde->vana)) {
299 ret = PTR_ERR(mcde->vana);
303 ret = regulator_enable(mcde->vana);
314 mcde->mcde_clk = devm_clk_get(dev, "mcde");
315 if (IS_ERR(mcde->mcde_clk)) {
317 ret = PTR_ERR(mcde->mcde_clk);
320 ret = clk_prepare_enable(mcde->mcde_clk);
325 dev_info(dev, "MCDE clk rate %lu Hz\n", clk_get_rate(mcde->mcde_clk));
327 mcde->lcd_clk = devm_clk_get(dev, "lcd");
328 if (IS_ERR(mcde->lcd_clk)) {
330 ret = PTR_ERR(mcde->lcd_clk);
333 mcde->hdmi_clk = devm_clk_get(dev, "hdmi");
334 if (IS_ERR(mcde->hdmi_clk)) {
336 ret = PTR_ERR(mcde->hdmi_clk);
340 mcde->regs = devm_platform_ioremap_resource(pdev, 0);
341 if (IS_ERR(mcde->regs)) {
353 ret = devm_request_irq(dev, irq, mcde_irq, 0, "mcde", mcde);
365 pid = readl(mcde->regs + MCDE_PID);
382 mcde_display_disable_irqs(mcde);
383 writel(0, mcde->regs + MCDE_IMSCERR);
384 writel(0xFFFFFFFF, mcde->regs + MCDE_RISERR);
418 ret = regulator_disable(mcde->epod);
434 clk_disable_unprepare(mcde->mcde_clk);
435 regulator_disable(mcde->vana);
442 clk_disable_unprepare(mcde->mcde_clk);
444 regulator_disable(mcde->vana);
446 regulator_disable(mcde->epod);
454 struct mcde *mcde = to_mcde(drm);
457 clk_disable_unprepare(mcde->mcde_clk);
458 regulator_disable(mcde->vana);
459 regulator_disable(mcde->epod);
464 .compatible = "ste,mcde",
471 .name = "mcde",
507 MODULE_ALIAS("platform:mcde-drm");