Lines Matching refs:kcrtc
82 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_atomic_check() local
90 err = komeda_build_display_data_flow(kcrtc, kcrtc_st); in komeda_crtc_atomic_check()
96 err = komeda_release_unclaimed_resources(kcrtc->slave, kcrtc_st); in komeda_crtc_atomic_check()
100 err = komeda_release_unclaimed_resources(kcrtc->master, kcrtc_st); in komeda_crtc_atomic_check()
112 komeda_crtc_prepare(struct komeda_crtc *kcrtc) in komeda_crtc_prepare() argument
114 struct komeda_dev *mdev = kcrtc->base.dev->dev_private; in komeda_crtc_prepare()
115 struct komeda_pipeline *master = kcrtc->master; in komeda_crtc_prepare()
116 struct komeda_crtc_state *kcrtc_st = to_kcrtc_st(kcrtc->base.state); in komeda_crtc_prepare()
165 komeda_crtc_unprepare(struct komeda_crtc *kcrtc) in komeda_crtc_unprepare() argument
167 struct komeda_dev *mdev = kcrtc->base.dev->dev_private; in komeda_crtc_unprepare()
168 struct komeda_pipeline *master = kcrtc->master; in komeda_crtc_unprepare()
200 void komeda_crtc_handle_event(struct komeda_crtc *kcrtc, in komeda_crtc_handle_event() argument
203 struct drm_crtc *crtc = &kcrtc->base; in komeda_crtc_handle_event()
204 u32 events = evts->pipes[kcrtc->master->id]; in komeda_crtc_handle_event()
210 struct komeda_wb_connector *wb_conn = kcrtc->wb_conn; in komeda_crtc_handle_event()
216 drm_crtc_index(&kcrtc->base)); in komeda_crtc_handle_event()
227 if (kcrtc->disable_done) { in komeda_crtc_handle_event()
228 complete_all(kcrtc->disable_done); in komeda_crtc_handle_event()
229 kcrtc->disable_done = NULL; in komeda_crtc_handle_event()
240 drm_crtc_index(&kcrtc->base)); in komeda_crtc_handle_event()
250 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_do_flush() local
252 struct komeda_dev *mdev = kcrtc->base.dev->dev_private; in komeda_crtc_do_flush()
253 struct komeda_pipeline *master = kcrtc->master; in komeda_crtc_do_flush()
254 struct komeda_pipeline *slave = kcrtc->slave; in komeda_crtc_do_flush()
255 struct komeda_wb_connector *wb_conn = kcrtc->wb_conn; in komeda_crtc_do_flush()
291 komeda_crtc_flush_and_wait_for_flip_done(struct komeda_crtc *kcrtc, in komeda_crtc_flush_and_wait_for_flip_done() argument
294 struct drm_device *drm = kcrtc->base.dev; in komeda_crtc_flush_and_wait_for_flip_done()
295 struct komeda_dev *mdev = kcrtc->master->mdev; in komeda_crtc_flush_and_wait_for_flip_done()
304 kcrtc->disable_done = &temp; in komeda_crtc_flush_and_wait_for_flip_done()
308 mdev->funcs->flush(mdev, kcrtc->master->id, 0); in komeda_crtc_flush_and_wait_for_flip_done()
312 DRM_ERROR("wait pipe%d flip done timeout\n", kcrtc->master->id); in komeda_crtc_flush_and_wait_for_flip_done()
317 kcrtc->disable_done = NULL; in komeda_crtc_flush_and_wait_for_flip_done()
329 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_atomic_disable() local
331 struct komeda_pipeline *master = kcrtc->master; in komeda_crtc_atomic_disable()
332 struct komeda_pipeline *slave = kcrtc->slave; in komeda_crtc_atomic_disable()
367 komeda_crtc_flush_and_wait_for_flip_done(kcrtc, disable_done); in komeda_crtc_atomic_disable()
371 komeda_pipeline_disable(kcrtc->master, old->state); in komeda_crtc_atomic_disable()
376 komeda_crtc_flush_and_wait_for_flip_done(kcrtc, disable_done); in komeda_crtc_atomic_disable()
381 komeda_crtc_unprepare(kcrtc); in komeda_crtc_atomic_disable()
402 komeda_calc_min_aclk_rate(struct komeda_crtc *kcrtc, in komeda_calc_min_aclk_rate() argument
408 if (kcrtc->master->dual_link) in komeda_calc_min_aclk_rate()
431 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_mode_valid() local
432 struct komeda_pipeline *master = kcrtc->master; in komeda_crtc_mode_valid()
463 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_mode_fixup() local
468 if (kcrtc->master->dual_link) { in komeda_crtc_mode_fixup()
478 adjusted_mode->crtc_clock = clk_round_rate(kcrtc->master->pxlclk, in komeda_crtc_mode_fixup()
537 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_vblank_enable() local
539 mdev->funcs->on_off_vblank(mdev, kcrtc->master->id, true); in komeda_crtc_vblank_enable()
546 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_vblank_disable() local
548 mdev->funcs->on_off_vblank(mdev, kcrtc->master->id, false); in komeda_crtc_vblank_disable()
634 struct komeda_crtc *kcrtc) in komeda_crtc_add() argument
636 struct drm_crtc *crtc = &kcrtc->base; in komeda_crtc_add()
638 struct komeda_pipeline *pipe = kcrtc->master; in komeda_crtc_add()
639 struct drm_encoder *encoder = &kcrtc->encoder; in komeda_crtc_add()
643 get_crtc_primary(kms, kcrtc), NULL, in komeda_crtc_add()
655 kcrtc->encoder.possible_crtcs = drm_crtc_mask(crtc); in komeda_crtc_add()