Lines Matching refs:drm

61 	struct drm_device *drm = private->drm;  in mtk_atomic_complete()  local
79 drm_atomic_helper_commit_modeset_disables(drm, state); in mtk_atomic_complete()
80 drm_atomic_helper_commit_modeset_enables(drm, state); in mtk_atomic_complete()
81 drm_atomic_helper_commit_planes(drm, state, in mtk_atomic_complete()
84 drm_atomic_helper_wait_for_vblanks(drm, state); in mtk_atomic_complete()
86 drm_atomic_helper_cleanup_planes(drm, state); in mtk_atomic_complete()
98 static int mtk_atomic_commit(struct drm_device *drm, in mtk_atomic_commit() argument
102 struct mtk_drm_private *private = drm->dev_private; in mtk_atomic_commit()
105 ret = drm_atomic_helper_prepare_planes(drm, state); in mtk_atomic_commit()
115 drm_atomic_helper_cleanup_planes(drm, state); in mtk_atomic_commit()
218 static int mtk_drm_kms_init(struct drm_device *drm) in mtk_drm_kms_init() argument
220 struct mtk_drm_private *private = drm->dev_private; in mtk_drm_kms_init()
230 dev_err(drm->dev, "Waiting for disp-mutex device %pOF\n", in mtk_drm_kms_init()
237 drm_mode_config_init(drm); in mtk_drm_kms_init()
239 drm->mode_config.min_width = 64; in mtk_drm_kms_init()
240 drm->mode_config.min_height = 64; in mtk_drm_kms_init()
247 drm->mode_config.max_width = 4096; in mtk_drm_kms_init()
248 drm->mode_config.max_height = 4096; in mtk_drm_kms_init()
249 drm->mode_config.funcs = &mtk_drm_mode_config_funcs; in mtk_drm_kms_init()
251 ret = component_bind_all(drm->dev, drm); in mtk_drm_kms_init()
260 ret = mtk_drm_crtc_create(drm, private->data->main_path, in mtk_drm_kms_init()
265 ret = mtk_drm_crtc_create(drm, private->data->ext_path, in mtk_drm_kms_init()
270 ret = mtk_drm_crtc_create(drm, private->data->third_path, in mtk_drm_kms_init()
281 dev_err(drm->dev, "Need at least one OVL device\n"); in mtk_drm_kms_init()
292 drm->irq_enabled = true; in mtk_drm_kms_init()
293 ret = drm_vblank_init(drm, MAX_CRTC); in mtk_drm_kms_init()
297 drm_kms_helper_poll_init(drm); in mtk_drm_kms_init()
298 drm_mode_config_reset(drm); in mtk_drm_kms_init()
303 component_unbind_all(drm->dev, drm); in mtk_drm_kms_init()
305 drm_mode_config_cleanup(drm); in mtk_drm_kms_init()
310 static void mtk_drm_kms_deinit(struct drm_device *drm) in mtk_drm_kms_deinit() argument
312 drm_kms_helper_poll_fini(drm); in mtk_drm_kms_deinit()
314 component_unbind_all(drm->dev, drm); in mtk_drm_kms_deinit()
315 drm_mode_config_cleanup(drm); in mtk_drm_kms_deinit()
361 struct drm_device *drm; in mtk_drm_bind() local
364 drm = drm_dev_alloc(&mtk_drm_driver, dev); in mtk_drm_bind()
365 if (IS_ERR(drm)) in mtk_drm_bind()
366 return PTR_ERR(drm); in mtk_drm_bind()
368 drm->dev_private = private; in mtk_drm_bind()
369 private->drm = drm; in mtk_drm_bind()
371 ret = mtk_drm_kms_init(drm); in mtk_drm_bind()
375 ret = drm_dev_register(drm, 0); in mtk_drm_bind()
382 mtk_drm_kms_deinit(drm); in mtk_drm_bind()
384 drm_dev_put(drm); in mtk_drm_bind()
392 drm_dev_unregister(private->drm); in mtk_drm_unbind()
393 drm_dev_put(private->drm); in mtk_drm_unbind()
394 private->drm = NULL; in mtk_drm_unbind()
562 struct drm_device *drm = private->drm; in mtk_drm_remove() local
565 drm_dev_unregister(drm); in mtk_drm_remove()
566 mtk_drm_kms_deinit(drm); in mtk_drm_remove()
567 drm_dev_put(drm); in mtk_drm_remove()
582 struct drm_device *drm = private->drm; in mtk_drm_sys_suspend() local
585 ret = drm_mode_config_helper_suspend(drm); in mtk_drm_sys_suspend()
594 struct drm_device *drm = private->drm; in mtk_drm_sys_resume() local
597 ret = drm_mode_config_helper_resume(drm); in mtk_drm_sys_resume()