• Home
  • Raw
  • Download

Lines Matching refs:crtc

29 		if (conn_st->crtc != crtc_st->crtc)  in komeda_crtc_get_color_config()
75 komeda_crtc_atomic_check(struct drm_crtc *crtc, in komeda_crtc_atomic_check() argument
79 crtc); in komeda_crtc_atomic_check()
80 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_atomic_check()
201 struct drm_crtc *crtc = &kcrtc->base; in komeda_crtc_handle_event() local
205 drm_crtc_handle_vblank(crtc); in komeda_crtc_handle_event()
224 spin_lock_irqsave(&crtc->dev->event_lock, flags); in komeda_crtc_handle_event()
228 } else if (crtc->state->event) { in komeda_crtc_handle_event()
229 event = crtc->state->event; in komeda_crtc_handle_event()
234 crtc->state->event = NULL; in komeda_crtc_handle_event()
235 drm_crtc_send_vblank_event(crtc, event); in komeda_crtc_handle_event()
240 spin_unlock_irqrestore(&crtc->dev->event_lock, flags); in komeda_crtc_handle_event()
245 komeda_crtc_do_flush(struct drm_crtc *crtc, in komeda_crtc_do_flush() argument
248 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_do_flush()
249 struct komeda_crtc_state *kcrtc_st = to_kcrtc_st(crtc->state); in komeda_crtc_do_flush()
257 drm_crtc_index(crtc), in komeda_crtc_do_flush()
276 komeda_crtc_atomic_enable(struct drm_crtc *crtc, in komeda_crtc_atomic_enable() argument
280 crtc); in komeda_crtc_atomic_enable()
281 pm_runtime_get_sync(crtc->dev->dev); in komeda_crtc_atomic_enable()
282 komeda_crtc_prepare(to_kcrtc(crtc)); in komeda_crtc_atomic_enable()
283 drm_crtc_vblank_on(crtc); in komeda_crtc_atomic_enable()
284 WARN_ON(drm_crtc_vblank_get(crtc)); in komeda_crtc_atomic_enable()
285 komeda_crtc_do_flush(crtc, old); in komeda_crtc_atomic_enable()
324 komeda_crtc_atomic_disable(struct drm_crtc *crtc, in komeda_crtc_atomic_disable() argument
328 crtc); in komeda_crtc_atomic_disable()
329 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_atomic_disable()
337 drm_crtc_index(crtc), in komeda_crtc_atomic_disable()
363 disable_done = (needs_phase2 || crtc->state->active) ? in komeda_crtc_atomic_disable()
364 NULL : &crtc->state->commit->flip_done; in komeda_crtc_atomic_disable()
373 disable_done = crtc->state->active ? in komeda_crtc_atomic_disable()
374 NULL : &crtc->state->commit->flip_done; in komeda_crtc_atomic_disable()
379 drm_crtc_vblank_put(crtc); in komeda_crtc_atomic_disable()
380 drm_crtc_vblank_off(crtc); in komeda_crtc_atomic_disable()
382 pm_runtime_put(crtc->dev->dev); in komeda_crtc_atomic_disable()
386 komeda_crtc_atomic_flush(struct drm_crtc *crtc, in komeda_crtc_atomic_flush() argument
390 crtc); in komeda_crtc_atomic_flush()
392 crtc); in komeda_crtc_atomic_flush()
397 komeda_crtc_do_flush(crtc, old); in komeda_crtc_atomic_flush()
417 struct drm_crtc *crtc = kcrtc_st->base.crtc; in komeda_crtc_get_aclk() local
418 struct komeda_dev *mdev = crtc->dev->dev_private; in komeda_crtc_get_aclk()
422 min_aclk = komeda_calc_min_aclk_rate(to_kcrtc(crtc), pxlclk); in komeda_crtc_get_aclk()
428 komeda_crtc_mode_valid(struct drm_crtc *crtc, const struct drm_display_mode *m) in komeda_crtc_mode_valid() argument
430 struct komeda_dev *mdev = crtc->dev->dev_private; in komeda_crtc_mode_valid()
431 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_mode_valid()
448 min_aclk = komeda_calc_min_aclk_rate(to_kcrtc(crtc), min_pxlclk); in komeda_crtc_mode_valid()
459 static bool komeda_crtc_mode_fixup(struct drm_crtc *crtc, in komeda_crtc_mode_fixup() argument
463 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_mode_fixup()
493 static void komeda_crtc_reset(struct drm_crtc *crtc) in komeda_crtc_reset() argument
497 if (crtc->state) in komeda_crtc_reset()
498 __drm_atomic_helper_crtc_destroy_state(crtc->state); in komeda_crtc_reset()
500 kfree(to_kcrtc_st(crtc->state)); in komeda_crtc_reset()
501 crtc->state = NULL; in komeda_crtc_reset()
505 __drm_atomic_helper_crtc_reset(crtc, &state->base); in komeda_crtc_reset()
509 komeda_crtc_atomic_duplicate_state(struct drm_crtc *crtc) in komeda_crtc_atomic_duplicate_state() argument
511 struct komeda_crtc_state *old = to_kcrtc_st(crtc->state); in komeda_crtc_atomic_duplicate_state()
518 __drm_atomic_helper_crtc_duplicate_state(crtc, &new->base); in komeda_crtc_atomic_duplicate_state()
527 static void komeda_crtc_atomic_destroy_state(struct drm_crtc *crtc, in komeda_crtc_atomic_destroy_state() argument
534 static int komeda_crtc_vblank_enable(struct drm_crtc *crtc) in komeda_crtc_vblank_enable() argument
536 struct komeda_dev *mdev = crtc->dev->dev_private; in komeda_crtc_vblank_enable()
537 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_vblank_enable()
543 static void komeda_crtc_vblank_disable(struct drm_crtc *crtc) in komeda_crtc_vblank_disable() argument
545 struct komeda_dev *mdev = crtc->dev->dev_private; in komeda_crtc_vblank_disable()
546 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_vblank_disable()
565 struct komeda_crtc *crtc; in komeda_kms_setup_crtcs() local
573 crtc = &kms->crtcs[kms->n_crtcs]; in komeda_kms_setup_crtcs()
576 crtc->master = master; in komeda_kms_setup_crtcs()
577 crtc->slave = komeda_pipeline_get_slave(master); in komeda_kms_setup_crtcs()
579 if (crtc->slave) in komeda_kms_setup_crtcs()
580 sprintf(str, "pipe-%d", crtc->slave->id); in komeda_kms_setup_crtcs()
594 get_crtc_primary(struct komeda_kms_dev *kms, struct komeda_crtc *crtc) in get_crtc_primary() argument
605 if (kplane->layer->base.pipeline == crtc->master) in get_crtc_primary()
615 struct drm_crtc *crtc = &kcrtc->base; in komeda_crtc_add() local
618 err = drm_crtc_init_with_planes(&kms->base, crtc, in komeda_crtc_add()
624 drm_crtc_helper_add(crtc, &komeda_crtc_helper_funcs); in komeda_crtc_add()
626 crtc->port = kcrtc->master->of_output_port; in komeda_crtc_add()
628 drm_crtc_enable_color_mgmt(crtc, 0, true, KOMEDA_COLOR_LUT_SIZE); in komeda_crtc_add()