Lines Matching defs:dpsub

43 	struct zynqmp_dpsub *dpsub = to_zynqmp_dpsub(drm);
47 args->pitch = ALIGN(pitch, dpsub->dma_align);
56 struct zynqmp_dpsub *dpsub = to_zynqmp_dpsub(drm);
62 cmd.pitches[i] = ALIGN(cmd.pitches[i], dpsub->dma_align);
99 .name = "zynqmp-dpsub",
106 static int zynqmp_dpsub_drm_init(struct zynqmp_dpsub *dpsub)
108 struct drm_device *drm = &dpsub->drm;
135 ret = zynqmp_disp_drm_init(dpsub);
139 ret = zynqmp_dp_drm_init(dpsub);
166 struct zynqmp_dpsub *dpsub = dev_get_drvdata(dev);
168 return drm_mode_config_helper_suspend(&dpsub->drm);
173 struct zynqmp_dpsub *dpsub = dev_get_drvdata(dev);
175 return drm_mode_config_helper_resume(&dpsub->drm);
186 static int zynqmp_dpsub_init_clocks(struct zynqmp_dpsub *dpsub)
190 dpsub->apb_clk = devm_clk_get(dpsub->dev, "dp_apb_clk");
191 if (IS_ERR(dpsub->apb_clk))
192 return PTR_ERR(dpsub->apb_clk);
194 ret = clk_prepare_enable(dpsub->apb_clk);
196 dev_err(dpsub->dev, "failed to enable the APB clock\n");
205 struct zynqmp_dpsub *dpsub;
209 dpsub = devm_drm_dev_alloc(&pdev->dev, &zynqmp_dpsub_drm_driver,
211 if (IS_ERR(dpsub))
212 return PTR_ERR(dpsub);
214 dpsub->dev = &pdev->dev;
215 platform_set_drvdata(pdev, dpsub);
217 ret = dma_set_mask(dpsub->dev, DMA_BIT_MASK(ZYNQMP_DISP_MAX_DMA_BIT));
224 ret = zynqmp_dpsub_init_clocks(dpsub);
234 ret = zynqmp_dp_probe(dpsub, &dpsub->drm);
238 ret = zynqmp_disp_probe(dpsub, &dpsub->drm);
242 ret = zynqmp_dpsub_drm_init(dpsub);
251 zynqmp_disp_remove(dpsub);
253 zynqmp_dp_remove(dpsub);
256 clk_disable_unprepare(dpsub->apb_clk);
264 struct zynqmp_dpsub *dpsub = platform_get_drvdata(pdev);
265 struct drm_device *drm = &dpsub->drm;
271 zynqmp_disp_remove(dpsub);
272 zynqmp_dp_remove(dpsub);
275 clk_disable_unprepare(dpsub->apb_clk);
283 struct zynqmp_dpsub *dpsub = platform_get_drvdata(pdev);
285 drm_atomic_helper_shutdown(&dpsub->drm);
289 { .compatible = "xlnx,zynqmp-dpsub-1.7", },
299 .name = "zynqmp-dpsub",