Lines Matching refs:lcrtc

21 static void lsdc_crtc0_soft_reset(struct lsdc_crtc *lcrtc)  in lsdc_crtc0_soft_reset()  argument
23 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_soft_reset()
47 static void lsdc_crtc1_soft_reset(struct lsdc_crtc *lcrtc) in lsdc_crtc1_soft_reset() argument
49 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_soft_reset()
73 static void lsdc_crtc0_enable(struct lsdc_crtc *lcrtc) in lsdc_crtc0_enable() argument
75 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_enable()
86 drm_warn(&ldev->base, "%s stall\n", lcrtc->base.name); in lsdc_crtc0_enable()
87 return lsdc_crtc0_soft_reset(lcrtc); in lsdc_crtc0_enable()
93 static void lsdc_crtc0_disable(struct lsdc_crtc *lcrtc) in lsdc_crtc0_disable() argument
95 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_disable()
102 static void lsdc_crtc1_enable(struct lsdc_crtc *lcrtc) in lsdc_crtc1_enable() argument
104 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_enable()
114 drm_warn(&ldev->base, "%s stall\n", lcrtc->base.name); in lsdc_crtc1_enable()
115 return lsdc_crtc1_soft_reset(lcrtc); in lsdc_crtc1_enable()
121 static void lsdc_crtc1_disable(struct lsdc_crtc *lcrtc) in lsdc_crtc1_disable() argument
123 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_disable()
132 static void lsdc_crtc0_scan_pos(struct lsdc_crtc *lcrtc, int *hpos, int *vpos) in lsdc_crtc0_scan_pos() argument
134 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_scan_pos()
143 static void lsdc_crtc1_scan_pos(struct lsdc_crtc *lcrtc, int *hpos, int *vpos) in lsdc_crtc1_scan_pos() argument
145 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_scan_pos()
154 static void lsdc_crtc0_enable_vblank(struct lsdc_crtc *lcrtc) in lsdc_crtc0_enable_vblank() argument
156 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_enable_vblank()
161 static void lsdc_crtc0_disable_vblank(struct lsdc_crtc *lcrtc) in lsdc_crtc0_disable_vblank() argument
163 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_disable_vblank()
168 static void lsdc_crtc1_enable_vblank(struct lsdc_crtc *lcrtc) in lsdc_crtc1_enable_vblank() argument
170 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_enable_vblank()
175 static void lsdc_crtc1_disable_vblank(struct lsdc_crtc *lcrtc) in lsdc_crtc1_disable_vblank() argument
177 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_disable_vblank()
182 static void lsdc_crtc0_flip(struct lsdc_crtc *lcrtc) in lsdc_crtc0_flip() argument
184 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_flip()
189 static void lsdc_crtc1_flip(struct lsdc_crtc *lcrtc) in lsdc_crtc1_flip() argument
191 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_flip()
203 static void lsdc_crtc0_clone(struct lsdc_crtc *lcrtc) in lsdc_crtc0_clone() argument
205 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_clone()
210 static void lsdc_crtc1_clone(struct lsdc_crtc *lcrtc) in lsdc_crtc1_clone() argument
212 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_clone()
217 static void lsdc_crtc0_set_mode(struct lsdc_crtc *lcrtc, in lsdc_crtc0_set_mode() argument
220 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_set_mode()
235 static void lsdc_crtc1_set_mode(struct lsdc_crtc *lcrtc, in lsdc_crtc1_set_mode() argument
238 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_set_mode()
264 static void lsdc_crtc0_reset(struct lsdc_crtc *lcrtc) in lsdc_crtc0_reset() argument
266 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_reset()
271 static void lsdc_crtc1_reset(struct lsdc_crtc *lcrtc) in lsdc_crtc1_reset() argument
273 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_reset()
313 static u32 lsdc_crtc0_get_vblank_count(struct lsdc_crtc *lcrtc) in lsdc_crtc0_get_vblank_count() argument
315 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_get_vblank_count()
320 static u32 lsdc_crtc1_get_vblank_count(struct lsdc_crtc *lcrtc) in lsdc_crtc1_get_vblank_count() argument
322 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_get_vblank_count()
334 static void lsdc_crtc0_set_dma_step(struct lsdc_crtc *lcrtc, in lsdc_crtc0_set_dma_step() argument
337 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc0_set_dma_step()
346 static void lsdc_crtc1_set_dma_step(struct lsdc_crtc *lcrtc, in lsdc_crtc1_set_dma_step() argument
349 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc1_set_dma_step()
391 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_crtc_reset() local
392 const struct lsdc_crtc_hw_ops *ops = lcrtc->hw_ops; in lsdc_crtc_reset()
406 ops->reset(lcrtc); in lsdc_crtc_reset()
441 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_crtc_get_vblank_counter() local
444 return lcrtc->hw_ops->get_vblank_counter(lcrtc); in lsdc_crtc_get_vblank_counter()
449 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_crtc_enable_vblank() local
451 if (!lcrtc->has_vblank) in lsdc_crtc_enable_vblank()
454 lcrtc->hw_ops->enable_vblank(lcrtc); in lsdc_crtc_enable_vblank()
461 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_crtc_disable_vblank() local
463 if (!lcrtc->has_vblank) in lsdc_crtc_disable_vblank()
466 lcrtc->hw_ops->disable_vblank(lcrtc); in lsdc_crtc_disable_vblank()
532 struct lsdc_crtc *lcrtc = (struct lsdc_crtc *)node->info_ent->data; in lsdc_crtc_show_regs() local
533 struct lsdc_device *ldev = lcrtc->ldev; in lsdc_crtc_show_regs()
536 for (i = 0; i < lcrtc->nreg; i++) { in lsdc_crtc_show_regs()
537 const struct lsdc_reg32 *preg = &lcrtc->preg[i]; in lsdc_crtc_show_regs()
550 struct lsdc_crtc *lcrtc = (struct lsdc_crtc *)node->info_ent->data; in lsdc_crtc_show_scan_position() local
553 lcrtc->hw_ops->get_scan_pos(lcrtc, &x, &y); in lsdc_crtc_show_scan_position()
562 struct lsdc_crtc *lcrtc = (struct lsdc_crtc *)node->info_ent->data; in lsdc_crtc_show_vblank_counter() local
564 if (lcrtc->hw_ops->get_vblank_counter) in lsdc_crtc_show_vblank_counter()
565 seq_printf(m, "%s vblank counter: %08u\n\n", lcrtc->base.name, in lsdc_crtc_show_vblank_counter()
566 lcrtc->hw_ops->get_vblank_counter(lcrtc)); in lsdc_crtc_show_vblank_counter()
574 struct lsdc_crtc *lcrtc = (struct lsdc_crtc *)node->info_ent->data; in lsdc_pixpll_show_clock() local
575 struct lsdc_pixpll *pixpll = &lcrtc->pixpll; in lsdc_pixpll_show_clock()
577 struct drm_crtc *crtc = &lcrtc->base; in lsdc_pixpll_show_clock()
637 struct lsdc_crtc *lcrtc = m->private; in lsdc_crtc_man_op_write() local
638 const struct lsdc_crtc_hw_ops *ops = lcrtc->hw_ops; in lsdc_crtc_man_op_write()
650 ops->soft_reset(lcrtc); in lsdc_crtc_man_op_write()
652 ops->enable(lcrtc); in lsdc_crtc_man_op_write()
654 ops->disable(lcrtc); in lsdc_crtc_man_op_write()
656 ops->flip(lcrtc); in lsdc_crtc_man_op_write()
658 ops->clone(lcrtc); in lsdc_crtc_man_op_write()
675 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_crtc_late_register() local
680 lcrtc->preg = lsdc_crtc_regs_array[index]; in lsdc_crtc_late_register()
681 lcrtc->nreg = ARRAY_SIZE(lsdc_crtc_regs_array[index]); in lsdc_crtc_late_register()
682 lcrtc->p_info_list = lsdc_crtc_debugfs_list[index]; in lsdc_crtc_late_register()
683 lcrtc->n_info_list = ARRAY_SIZE(lsdc_crtc_debugfs_list[index]); in lsdc_crtc_late_register()
685 for (i = 0; i < lcrtc->n_info_list; ++i) in lsdc_crtc_late_register()
686 lcrtc->p_info_list[i].data = lcrtc; in lsdc_crtc_late_register()
688 drm_debugfs_create_files(lcrtc->p_info_list, lcrtc->n_info_list, in lsdc_crtc_late_register()
692 debugfs_create_file("ops", 0644, crtc->debugfs_entry, lcrtc, in lsdc_crtc_late_register()
776 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_pixpll_atomic_check() local
777 struct lsdc_pixpll *pixpll = &lcrtc->pixpll; in lsdc_pixpll_atomic_check()
806 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_crtc_mode_set_nofb() local
807 const struct lsdc_crtc_hw_ops *crtc_hw_ops = lcrtc->hw_ops; in lsdc_crtc_mode_set_nofb()
808 struct lsdc_pixpll *pixpll = &lcrtc->pixpll; in lsdc_crtc_mode_set_nofb()
833 crtc_hw_ops->set_dma_step(lcrtc, dma_step); in lsdc_crtc_mode_set_nofb()
836 crtc_hw_ops->set_mode(lcrtc, mode); in lsdc_crtc_mode_set_nofb()
858 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_crtc_atomic_enable() local
860 if (lcrtc->has_vblank) in lsdc_crtc_atomic_enable()
863 lcrtc->hw_ops->enable(lcrtc); in lsdc_crtc_atomic_enable()
869 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_crtc_atomic_disable() local
871 if (lcrtc->has_vblank) in lsdc_crtc_atomic_disable()
874 lcrtc->hw_ops->disable(lcrtc); in lsdc_crtc_atomic_disable()
905 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in lsdc_crtc_get_scanout_position() local
906 const struct lsdc_crtc_hw_ops *ops = lcrtc->hw_ops; in lsdc_crtc_get_scanout_position()
922 ops->get_scan_pos(lcrtc, &x, &y); in lsdc_crtc_get_scanout_position()
955 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in ls7a1000_crtc_init() local
958 ret = lsdc_pixpll_init(&lcrtc->pixpll, ddev, index); in ls7a1000_crtc_init()
964 lcrtc->ldev = to_lsdc(ddev); in ls7a1000_crtc_init()
965 lcrtc->has_vblank = has_vblank; in ls7a1000_crtc_init()
966 lcrtc->hw_ops = &ls7a1000_crtc_hw_ops[index]; in ls7a1000_crtc_init()
994 struct lsdc_crtc *lcrtc = to_lsdc_crtc(crtc); in ls7a2000_crtc_init() local
997 ret = lsdc_pixpll_init(&lcrtc->pixpll, ddev, index); in ls7a2000_crtc_init()
1003 lcrtc->ldev = to_lsdc(ddev); in ls7a2000_crtc_init()
1004 lcrtc->has_vblank = has_vblank; in ls7a2000_crtc_init()
1005 lcrtc->hw_ops = &ls7a2000_crtc_hw_ops[index]; in ls7a2000_crtc_init()