Lines Matching refs:kcrtc_st
21 static void komeda_crtc_update_clock_ratio(struct komeda_crtc_state *kcrtc_st) in komeda_crtc_update_clock_ratio() argument
25 if (!kcrtc_st->base.active) { in komeda_crtc_update_clock_ratio()
26 kcrtc_st->clock_ratio = 0; in komeda_crtc_update_clock_ratio()
30 pxlclk = kcrtc_st->base.adjusted_mode.crtc_clock * 1000ULL; in komeda_crtc_update_clock_ratio()
31 aclk = komeda_crtc_get_aclk(kcrtc_st); in komeda_crtc_update_clock_ratio()
33 kcrtc_st->clock_ratio = div64_u64(aclk << 32, pxlclk); in komeda_crtc_update_clock_ratio()
53 struct komeda_crtc_state *kcrtc_st = to_kcrtc_st(state); in komeda_crtc_atomic_check() local
57 komeda_crtc_update_clock_ratio(kcrtc_st); in komeda_crtc_atomic_check()
60 err = komeda_build_display_data_flow(kcrtc, kcrtc_st); in komeda_crtc_atomic_check()
66 err = komeda_release_unclaimed_resources(kcrtc->slave, kcrtc_st); in komeda_crtc_atomic_check()
70 err = komeda_release_unclaimed_resources(kcrtc->master, kcrtc_st); in komeda_crtc_atomic_check()
86 struct komeda_crtc_state *kcrtc_st = to_kcrtc_st(kcrtc->base.state); in komeda_crtc_prepare() local
87 struct drm_display_mode *mode = &kcrtc_st->base.adjusted_mode; in komeda_crtc_prepare()
113 err = clk_set_rate(mdev->aclk, komeda_crtc_get_aclk(kcrtc_st)); in komeda_crtc_prepare()
221 struct komeda_crtc_state *kcrtc_st = to_kcrtc_st(crtc->state); in komeda_crtc_do_flush() local
230 kcrtc_st->active_pipes, kcrtc_st->affected_pipes); in komeda_crtc_do_flush()
233 if (has_bit(master->id, kcrtc_st->affected_pipes)) in komeda_crtc_do_flush()
236 if (slave && has_bit(slave->id, kcrtc_st->affected_pipes)) in komeda_crtc_do_flush()
244 mdev->funcs->flush(mdev, master->id, kcrtc_st->active_pipes); in komeda_crtc_do_flush()
354 unsigned long komeda_crtc_get_aclk(struct komeda_crtc_state *kcrtc_st) in komeda_crtc_get_aclk() argument
356 struct drm_crtc *crtc = kcrtc_st->base.crtc; in komeda_crtc_get_aclk()
358 unsigned long pxlclk = kcrtc_st->base.adjusted_mode.crtc_clock * 1000; in komeda_crtc_get_aclk()