Lines Matching full:drm

16 #include <drm/drm_atomic.h>
17 #include <drm/drm_atomic_helper.h>
18 #include <drm/drm_drv.h>
19 #include <drm/drm_fb_helper.h>
20 #include <drm/drm_file.h>
21 #include <drm/drm_fourcc.h>
22 #include <drm/drm_ioctl.h>
23 #include <drm/drm_probe_helper.h>
24 #include <drm/drm_vblank.h>
25 #include <drm/exynos_drm.h>
37 #define DRIVER_DESC "Samsung SoC DRM"
245 struct drm_device *drm; in exynos_drm_bind() local
249 drm = drm_dev_alloc(&exynos_drm_driver, dev); in exynos_drm_bind()
250 if (IS_ERR(drm)) in exynos_drm_bind()
251 return PTR_ERR(drm); in exynos_drm_bind()
262 dev_set_drvdata(dev, drm); in exynos_drm_bind()
263 drm->dev_private = (void *)private; in exynos_drm_bind()
265 drm_mode_config_init(drm); in exynos_drm_bind()
267 exynos_drm_mode_config_init(drm); in exynos_drm_bind()
271 list_for_each_entry(encoder, &drm->mode_config.encoder_list, head) in exynos_drm_bind()
274 list_for_each_entry(encoder, &drm->mode_config.encoder_list, head) in exynos_drm_bind()
278 ret = component_bind_all(drm->dev, drm); in exynos_drm_bind()
282 ret = drm_vblank_init(drm, drm->mode_config.num_crtc); in exynos_drm_bind()
286 drm_mode_config_reset(drm); in exynos_drm_bind()
289 drm_kms_helper_poll_init(drm); in exynos_drm_bind()
291 ret = exynos_drm_fbdev_init(drm); in exynos_drm_bind()
295 /* register the DRM device */ in exynos_drm_bind()
296 ret = drm_dev_register(drm, 0); in exynos_drm_bind()
303 exynos_drm_fbdev_fini(drm); in exynos_drm_bind()
305 drm_kms_helper_poll_fini(drm); in exynos_drm_bind()
307 component_unbind_all(drm->dev, drm); in exynos_drm_bind()
309 drm_mode_config_cleanup(drm); in exynos_drm_bind()
310 exynos_drm_cleanup_dma(drm); in exynos_drm_bind()
313 drm_dev_put(drm); in exynos_drm_bind()
320 struct drm_device *drm = dev_get_drvdata(dev); in exynos_drm_unbind() local
322 drm_dev_unregister(drm); in exynos_drm_unbind()
324 exynos_drm_fbdev_fini(drm); in exynos_drm_unbind()
325 drm_kms_helper_poll_fini(drm); in exynos_drm_unbind()
327 component_unbind_all(drm->dev, drm); in exynos_drm_unbind()
328 drm_mode_config_cleanup(drm); in exynos_drm_unbind()
329 exynos_drm_cleanup_dma(drm); in exynos_drm_unbind()
331 kfree(drm->dev_private); in exynos_drm_unbind()
332 drm->dev_private = NULL; in exynos_drm_unbind()
335 drm_dev_put(drm); in exynos_drm_unbind()
367 .name = "exynos-drm",
483 MODULE_DESCRIPTION("Samsung SoC DRM Driver");