| /Linux-v5.15/drivers/gpu/drm/ |
| D | drm_crtc.c | 87 struct drm_crtc *crtc; in drm_crtc_from_index() local 89 drm_for_each_crtc(crtc, dev) in drm_crtc_from_index() 90 if (idx == crtc->index) in drm_crtc_from_index() 91 return crtc; in drm_crtc_from_index() 97 int drm_crtc_force_disable(struct drm_crtc *crtc) in drm_crtc_force_disable() argument 100 .crtc = crtc, in drm_crtc_force_disable() 103 WARN_ON(drm_drv_uses_atomic_modeset(crtc->dev)); in drm_crtc_force_disable() 122 struct drm_crtc *crtc; in drm_crtc_register_all() local 125 drm_for_each_crtc(crtc, dev) { in drm_crtc_register_all() 126 drm_debugfs_crtc_add(crtc); in drm_crtc_register_all() [all …]
|
| D | drm_crtc_helper.c | 136 bool drm_helper_crtc_in_use(struct drm_crtc *crtc) in drm_helper_crtc_in_use() argument 139 struct drm_device *dev = crtc->dev; in drm_helper_crtc_in_use() 151 if (encoder->crtc == crtc && drm_helper_encoder_in_use(encoder)) in drm_helper_crtc_in_use() 174 struct drm_crtc *crtc; in __drm_helper_disable_unused_functions() local 182 encoder->crtc = NULL; in __drm_helper_disable_unused_functions() 186 drm_for_each_crtc(crtc, dev) { in __drm_helper_disable_unused_functions() 187 const struct drm_crtc_helper_funcs *crtc_funcs = crtc->helper_private; in __drm_helper_disable_unused_functions() 189 crtc->enabled = drm_helper_crtc_in_use(crtc); in __drm_helper_disable_unused_functions() 190 if (!crtc->enabled) { in __drm_helper_disable_unused_functions() 192 (*crtc_funcs->disable)(crtc); in __drm_helper_disable_unused_functions() [all …]
|
| D | drm_atomic_helper.c | 83 if (old_plane_state->crtc) { in drm_atomic_helper_plane_changed() 85 old_plane_state->crtc); in drm_atomic_helper_plane_changed() 93 if (plane_state->crtc) { in drm_atomic_helper_plane_changed() 94 crtc_state = drm_atomic_get_new_crtc_state(state, plane_state->crtc); in drm_atomic_helper_plane_changed() 122 if (!new_conn_state->crtc) in handle_conflicting_encoders() 174 connector->state->crtc->base.id, in handle_conflicting_encoders() 175 connector->state->crtc->name, in handle_conflicting_encoders() 189 new_conn_state->crtc->base.id, new_conn_state->crtc->name, in handle_conflicting_encoders() 192 crtc_state = drm_atomic_get_new_crtc_state(state, new_conn_state->crtc); in handle_conflicting_encoders() 219 struct drm_crtc *crtc; in set_best_encoder() local [all …]
|
| D | drm_trace.h | 16 TP_PROTO(int crtc, unsigned int seq, ktime_t time, bool high_prec), 17 TP_ARGS(crtc, seq, time, high_prec), 19 __field(int, crtc) 25 __entry->crtc = crtc; 31 __entry->crtc, __entry->seq, __entry->time, 36 TP_PROTO(struct drm_file *file, int crtc, unsigned int seq), 37 TP_ARGS(file, crtc, seq), 40 __field(int, crtc) 45 __entry->crtc = crtc; 48 TP_printk("file=%p, crtc=%d, seq=%u", __entry->file, __entry->crtc, \ [all …]
|
| /Linux-v5.15/drivers/gpu/drm/i915/display/ |
| D | intel_crtc.c | 31 static void assert_vblank_disabled(struct drm_crtc *crtc) in assert_vblank_disabled() argument 33 if (I915_STATE_WARN_ON(drm_crtc_vblank_get(crtc) == 0)) in assert_vblank_disabled() 34 drm_crtc_vblank_put(crtc); in assert_vblank_disabled() 37 u32 intel_crtc_get_vblank_counter(struct intel_crtc *crtc) in intel_crtc_get_vblank_counter() argument 39 struct drm_device *dev = crtc->base.dev; in intel_crtc_get_vblank_counter() 40 struct drm_vblank_crtc *vblank = &dev->vblank[drm_crtc_index(&crtc->base)]; in intel_crtc_get_vblank_counter() 42 if (!crtc->active) in intel_crtc_get_vblank_counter() 46 return (u32)drm_crtc_accurate_vblank_count(&crtc->base); in intel_crtc_get_vblank_counter() 48 return crtc->base.funcs->get_vblank_counter(&crtc->base); in intel_crtc_get_vblank_counter() 53 struct drm_i915_private *dev_priv = to_i915(crtc_state->uapi.crtc->dev); in intel_crtc_max_vblank_count() [all …]
|
| D | intel_color.c | 153 static void ilk_update_pipe_csc(struct intel_crtc *crtc, in ilk_update_pipe_csc() argument 158 struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); in ilk_update_pipe_csc() 159 enum pipe pipe = crtc->pipe; in ilk_update_pipe_csc() 187 static void icl_update_output_csc(struct intel_crtc *crtc, in icl_update_output_csc() argument 192 struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); in icl_update_output_csc() 193 enum pipe pipe = crtc->pipe; in icl_update_output_csc() 221 struct drm_i915_private *dev_priv = to_i915(crtc_state->uapi.crtc->dev); in ilk_csc_limited_range() 286 struct intel_crtc *crtc = to_intel_crtc(crtc_state->uapi.crtc); in ilk_load_csc_matrix() local 287 struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); in ilk_load_csc_matrix() 294 ilk_update_pipe_csc(crtc, ilk_csc_off_zero, coeff, in ilk_load_csc_matrix() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/tidss/ |
| D | tidss_crtc.c | 26 struct drm_device *ddev = tcrtc->crtc.dev; in tidss_crtc_finish_page_flip() 54 drm_crtc_send_vblank_event(&tcrtc->crtc, event); in tidss_crtc_finish_page_flip() 58 drm_crtc_vblank_put(&tcrtc->crtc); in tidss_crtc_finish_page_flip() 61 void tidss_crtc_vblank_irq(struct drm_crtc *crtc) in tidss_crtc_vblank_irq() argument 63 struct tidss_crtc *tcrtc = to_tidss_crtc(crtc); in tidss_crtc_vblank_irq() 65 drm_crtc_handle_vblank(crtc); in tidss_crtc_vblank_irq() 70 void tidss_crtc_framedone_irq(struct drm_crtc *crtc) in tidss_crtc_framedone_irq() argument 72 struct tidss_crtc *tcrtc = to_tidss_crtc(crtc); in tidss_crtc_framedone_irq() 77 void tidss_crtc_error_irq(struct drm_crtc *crtc, u64 irqstatus) in tidss_crtc_error_irq() argument 79 struct tidss_crtc *tcrtc = to_tidss_crtc(crtc); in tidss_crtc_error_irq() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/exynos/ |
| D | exynos_drm_crtc.c | 21 static void exynos_drm_crtc_atomic_enable(struct drm_crtc *crtc, in exynos_drm_crtc_atomic_enable() argument 24 struct exynos_drm_crtc *exynos_crtc = to_exynos_crtc(crtc); in exynos_drm_crtc_atomic_enable() 29 drm_crtc_vblank_on(crtc); in exynos_drm_crtc_atomic_enable() 32 static void exynos_drm_crtc_atomic_disable(struct drm_crtc *crtc, in exynos_drm_crtc_atomic_disable() argument 35 struct exynos_drm_crtc *exynos_crtc = to_exynos_crtc(crtc); in exynos_drm_crtc_atomic_disable() 37 drm_crtc_vblank_off(crtc); in exynos_drm_crtc_atomic_disable() 42 if (crtc->state->event && !crtc->state->active) { in exynos_drm_crtc_atomic_disable() 43 spin_lock_irq(&crtc->dev->event_lock); in exynos_drm_crtc_atomic_disable() 44 drm_crtc_send_vblank_event(crtc, crtc->state->event); in exynos_drm_crtc_atomic_disable() 45 spin_unlock_irq(&crtc->dev->event_lock); in exynos_drm_crtc_atomic_disable() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/omapdrm/ |
| D | omap_crtc.c | 56 struct videomode *omap_crtc_timings(struct drm_crtc *crtc) in omap_crtc_timings() argument 58 struct omap_crtc *omap_crtc = to_omap_crtc(crtc); in omap_crtc_timings() 62 enum omap_channel omap_crtc_channel(struct drm_crtc *crtc) in omap_crtc_channel() argument 64 struct omap_crtc *omap_crtc = to_omap_crtc(crtc); in omap_crtc_channel() 68 static bool omap_crtc_is_pending(struct drm_crtc *crtc) in omap_crtc_is_pending() argument 70 struct omap_crtc *omap_crtc = to_omap_crtc(crtc); in omap_crtc_is_pending() 74 spin_lock_irqsave(&crtc->dev->event_lock, flags); in omap_crtc_is_pending() 76 spin_unlock_irqrestore(&crtc->dev->event_lock, flags); in omap_crtc_is_pending() 81 int omap_crtc_wait_pending(struct drm_crtc *crtc) in omap_crtc_wait_pending() argument 83 struct omap_crtc *omap_crtc = to_omap_crtc(crtc); in omap_crtc_wait_pending() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/sun4i/ |
| D | sun4i_crtc.c | 37 static struct drm_encoder *sun4i_crtc_get_encoder(struct drm_crtc *crtc) in sun4i_crtc_get_encoder() argument 41 drm_for_each_encoder(encoder, crtc->dev) in sun4i_crtc_get_encoder() 42 if (encoder->crtc == crtc) in sun4i_crtc_get_encoder() 48 static int sun4i_crtc_atomic_check(struct drm_crtc *crtc, in sun4i_crtc_atomic_check() argument 52 crtc); in sun4i_crtc_atomic_check() 53 struct sun4i_crtc *scrtc = drm_crtc_to_sun4i_crtc(crtc); in sun4i_crtc_atomic_check() 63 static void sun4i_crtc_atomic_begin(struct drm_crtc *crtc, in sun4i_crtc_atomic_begin() argument 67 crtc); in sun4i_crtc_atomic_begin() 68 struct sun4i_crtc *scrtc = drm_crtc_to_sun4i_crtc(crtc); in sun4i_crtc_atomic_begin() 69 struct drm_device *dev = crtc->dev; in sun4i_crtc_atomic_begin() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/imx/dcss/ |
| D | dcss-crtc.c | 15 static int dcss_enable_vblank(struct drm_crtc *crtc) in dcss_enable_vblank() argument 17 struct dcss_crtc *dcss_crtc = container_of(crtc, struct dcss_crtc, in dcss_enable_vblank() 19 struct dcss_dev *dcss = crtc->dev->dev_private; in dcss_enable_vblank() 30 static void dcss_disable_vblank(struct drm_crtc *crtc) in dcss_disable_vblank() argument 32 struct dcss_crtc *dcss_crtc = container_of(crtc, struct dcss_crtc, in dcss_disable_vblank() 55 static void dcss_crtc_atomic_begin(struct drm_crtc *crtc, in dcss_crtc_atomic_begin() argument 58 drm_crtc_vblank_on(crtc); in dcss_crtc_atomic_begin() 61 static void dcss_crtc_atomic_flush(struct drm_crtc *crtc, in dcss_crtc_atomic_flush() argument 64 struct dcss_crtc *dcss_crtc = container_of(crtc, struct dcss_crtc, in dcss_crtc_atomic_flush() 68 spin_lock_irq(&crtc->dev->event_lock); in dcss_crtc_atomic_flush() [all …]
|
| /Linux-v5.15/drivers/rtc/ |
| D | rtc-cadence.c | 87 static void cdns_rtc_set_enabled(struct cdns_rtc *crtc, bool enabled) in cdns_rtc_set_enabled() argument 91 writel(reg, crtc->regs + CDNS_RTC_CTLR); in cdns_rtc_set_enabled() 94 static bool cdns_rtc_get_enabled(struct cdns_rtc *crtc) in cdns_rtc_get_enabled() argument 96 return !(readl(crtc->regs + CDNS_RTC_CTLR) & CDNS_RTC_CTLR_TIME_CAL); in cdns_rtc_get_enabled() 102 struct cdns_rtc *crtc = dev_get_drvdata(dev); in cdns_rtc_irq_handler() local 105 if (!(readl(crtc->regs + CDNS_RTC_EFLR) & CDNS_RTC_AEI_ALRM)) in cdns_rtc_irq_handler() 108 rtc_update_irq(crtc->rtc_dev, 1, RTC_IRQF | RTC_AF); in cdns_rtc_irq_handler() 128 struct cdns_rtc *crtc = dev_get_drvdata(dev); in cdns_rtc_read_time() local 132 if (!cdns_rtc_get_enabled(crtc)) in cdns_rtc_read_time() 135 cdns_rtc_set_enabled(crtc, false); in cdns_rtc_read_time() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/sti/ |
| D | sti_crtc.c | 25 static void sti_crtc_atomic_enable(struct drm_crtc *crtc, in sti_crtc_atomic_enable() argument 28 struct sti_mixer *mixer = to_sti_mixer(crtc); in sti_crtc_atomic_enable() 34 drm_crtc_vblank_on(crtc); in sti_crtc_atomic_enable() 37 static void sti_crtc_atomic_disable(struct drm_crtc *crtc, in sti_crtc_atomic_disable() argument 40 struct sti_mixer *mixer = to_sti_mixer(crtc); in sti_crtc_atomic_disable() 46 drm_crtc_wait_one_vblank(crtc); in sti_crtc_atomic_disable() 50 sti_crtc_mode_set(struct drm_crtc *crtc, struct drm_display_mode *mode) in sti_crtc_mode_set() argument 52 struct sti_mixer *mixer = to_sti_mixer(crtc); in sti_crtc_mode_set() 59 crtc->base.id, sti_mixer_to_str(mixer), mode->name); in sti_crtc_mode_set() 87 sti_vtg_set_config(compo->vtg[mixer->id], &crtc->mode); in sti_crtc_mode_set() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/msm/disp/dpu1/ |
| D | dpu_crtc.c | 43 static struct dpu_kms *_dpu_crtc_get_kms(struct drm_crtc *crtc) in _dpu_crtc_get_kms() argument 45 struct msm_drm_private *priv = crtc->dev->dev_private; in _dpu_crtc_get_kms() 50 static void dpu_crtc_destroy(struct drm_crtc *crtc) in dpu_crtc_destroy() argument 52 struct dpu_crtc *dpu_crtc = to_dpu_crtc(crtc); in dpu_crtc_destroy() 54 if (!crtc) in dpu_crtc_destroy() 57 drm_crtc_cleanup(crtc); in dpu_crtc_destroy() 61 static struct drm_encoder *get_encoder_from_crtc(struct drm_crtc *crtc) in get_encoder_from_crtc() argument 63 struct drm_device *dev = crtc->dev; in get_encoder_from_crtc() 67 if (encoder->crtc == crtc) in get_encoder_from_crtc() 73 static u32 dpu_crtc_get_vblank_counter(struct drm_crtc *crtc) in dpu_crtc_get_vblank_counter() argument [all …]
|
| /Linux-v5.15/drivers/gpu/drm/vkms/ |
| D | vkms_crtc.c | 16 struct drm_crtc *crtc = &output->crtc; in vkms_vblank_simulate() local 29 ret = drm_crtc_handle_vblank(crtc); in vkms_vblank_simulate() 37 u64 frame = drm_crtc_accurate_vblank_count(crtc); in vkms_vblank_simulate() 62 static int vkms_enable_vblank(struct drm_crtc *crtc) in vkms_enable_vblank() argument 64 struct drm_device *dev = crtc->dev; in vkms_enable_vblank() 65 unsigned int pipe = drm_crtc_index(crtc); in vkms_enable_vblank() 67 struct vkms_output *out = drm_crtc_to_vkms_output(crtc); in vkms_enable_vblank() 69 drm_calc_timestamping_constants(crtc, &crtc->mode); in vkms_enable_vblank() 79 static void vkms_disable_vblank(struct drm_crtc *crtc) in vkms_disable_vblank() argument 81 struct vkms_output *out = drm_crtc_to_vkms_output(crtc); in vkms_disable_vblank() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/tilcdc/ |
| D | tilcdc_crtc.c | 62 static void set_scanout(struct drm_crtc *crtc, struct drm_framebuffer *fb) in set_scanout() argument 64 struct drm_device *dev = crtc->dev; in set_scanout() 73 crtc->y * fb->pitches[0] + in set_scanout() 74 crtc->x * fb->format->cpp[0]; in set_scanout() 76 end = start + (crtc->mode.vdisplay * fb->pitches[0]); in set_scanout() 96 static void tilcdc_crtc_load_palette(struct drm_crtc *crtc) in tilcdc_crtc_load_palette() argument 98 struct tilcdc_crtc *tilcdc_crtc = to_tilcdc_crtc(crtc); in tilcdc_crtc_load_palette() 99 struct drm_device *dev = crtc->dev; in tilcdc_crtc_load_palette() 176 static void reset(struct drm_crtc *crtc) in reset() argument 178 struct drm_device *dev = crtc->dev; in reset() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/imx/ |
| D | ipuv3-crtc.c | 45 static inline struct ipu_crtc *to_ipu_crtc(struct drm_crtc *crtc) in to_ipu_crtc() argument 47 return container_of(crtc, struct ipu_crtc, base); in to_ipu_crtc() 50 static void ipu_crtc_atomic_enable(struct drm_crtc *crtc, in ipu_crtc_atomic_enable() argument 53 struct ipu_crtc *ipu_crtc = to_ipu_crtc(crtc); in ipu_crtc_atomic_enable() 82 static void ipu_crtc_atomic_disable(struct drm_crtc *crtc, in ipu_crtc_atomic_disable() argument 86 crtc); in ipu_crtc_atomic_disable() 87 struct ipu_crtc *ipu_crtc = to_ipu_crtc(crtc); in ipu_crtc_atomic_disable() 101 drm_crtc_vblank_off(crtc); in ipu_crtc_atomic_disable() 103 spin_lock_irq(&crtc->dev->event_lock); in ipu_crtc_atomic_disable() 104 if (crtc->state->event && !crtc->state->active) { in ipu_crtc_atomic_disable() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/msm/disp/mdp4/ |
| D | mdp4_crtc.c | 62 static struct mdp4_kms *get_kms(struct drm_crtc *crtc) in get_kms() argument 64 struct msm_drm_private *priv = crtc->dev->dev_private; in get_kms() 68 static void request_pending(struct drm_crtc *crtc, uint32_t pending) in request_pending() argument 70 struct mdp4_crtc *mdp4_crtc = to_mdp4_crtc(crtc); in request_pending() 73 mdp_irq_register(&get_kms(crtc)->base, &mdp4_crtc->vblank); in request_pending() 76 static void crtc_flush(struct drm_crtc *crtc) in crtc_flush() argument 78 struct mdp4_crtc *mdp4_crtc = to_mdp4_crtc(crtc); in crtc_flush() 79 struct mdp4_kms *mdp4_kms = get_kms(crtc); in crtc_flush() 83 drm_atomic_crtc_for_each_plane(plane, crtc) { in crtc_flush() 98 static void complete_flip(struct drm_crtc *crtc, struct drm_file *file) in complete_flip() argument [all …]
|
| /Linux-v5.15/drivers/gpu/drm/msm/disp/mdp5/ |
| D | mdp5_crtc.c | 67 static void mdp5_crtc_restore_cursor(struct drm_crtc *crtc); 69 static struct mdp5_kms *get_kms(struct drm_crtc *crtc) in get_kms() argument 71 struct msm_drm_private *priv = crtc->dev->dev_private; in get_kms() 75 static void request_pending(struct drm_crtc *crtc, uint32_t pending) in request_pending() argument 77 struct mdp5_crtc *mdp5_crtc = to_mdp5_crtc(crtc); in request_pending() 80 mdp_irq_register(&get_kms(crtc)->base, &mdp5_crtc->vblank); in request_pending() 83 static void request_pp_done_pending(struct drm_crtc *crtc) in request_pp_done_pending() argument 85 struct mdp5_crtc *mdp5_crtc = to_mdp5_crtc(crtc); in request_pp_done_pending() 89 static u32 crtc_flush(struct drm_crtc *crtc, u32 flush_mask) in crtc_flush() argument 91 struct mdp5_crtc_state *mdp5_cstate = to_mdp5_crtc_state(crtc->state); in crtc_flush() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/arm/display/komeda/ |
| D | komeda_crtc.c | 30 if (conn_st->crtc != crtc_st->crtc) in komeda_crtc_get_color_config() 76 komeda_crtc_atomic_check(struct drm_crtc *crtc, in komeda_crtc_atomic_check() argument 80 crtc); in komeda_crtc_atomic_check() 81 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_atomic_check() 202 struct drm_crtc *crtc = &kcrtc->base; in komeda_crtc_handle_event() local 206 drm_crtc_handle_vblank(crtc); in komeda_crtc_handle_event() 225 spin_lock_irqsave(&crtc->dev->event_lock, flags); in komeda_crtc_handle_event() 229 } else if (crtc->state->event) { in komeda_crtc_handle_event() 230 event = crtc->state->event; in komeda_crtc_handle_event() 235 crtc->state->event = NULL; in komeda_crtc_handle_event() [all …]
|
| /Linux-v5.15/drivers/gpu/drm/radeon/ |
| D | radeon_cursor.c | 32 static void radeon_lock_cursor(struct drm_crtc *crtc, bool lock) in radeon_lock_cursor() argument 34 struct radeon_device *rdev = crtc->dev->dev_private; in radeon_lock_cursor() 35 struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc); in radeon_lock_cursor() 62 static void radeon_hide_cursor(struct drm_crtc *crtc) in radeon_hide_cursor() argument 64 struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc); in radeon_hide_cursor() 65 struct radeon_device *rdev = crtc->dev->dev_private; in radeon_hide_cursor() 90 static void radeon_show_cursor(struct drm_crtc *crtc) in radeon_show_cursor() argument 92 struct radeon_crtc *radeon_crtc = to_radeon_crtc(crtc); in radeon_show_cursor() 93 struct radeon_device *rdev = crtc->dev->dev_private; in radeon_show_cursor() 144 static int radeon_cursor_move_locked(struct drm_crtc *crtc, int x, int y) in radeon_cursor_move_locked() argument [all …]
|
| /Linux-v5.15/drivers/gpu/drm/vc4/ |
| D | vc4_crtc.c | 82 static bool vc4_crtc_get_scanout_position(struct drm_crtc *crtc, in vc4_crtc_get_scanout_position() argument 88 struct drm_device *dev = crtc->dev; in vc4_crtc_get_scanout_position() 90 struct vc4_crtc *vc4_crtc = to_vc4_crtc(crtc); in vc4_crtc_get_scanout_position() 91 struct vc4_crtc_state *vc4_crtc_state = to_vc4_crtc_state(crtc->state); in vc4_crtc_get_scanout_position() 204 void vc4_crtc_destroy(struct drm_crtc *crtc) in vc4_crtc_destroy() argument 206 drm_crtc_cleanup(crtc); in vc4_crtc_destroy() 282 static struct drm_encoder *vc4_get_crtc_encoder(struct drm_crtc *crtc, in vc4_get_crtc_encoder() argument 290 drm_connector_list_iter_begin(crtc->dev, &conn_iter); in vc4_get_crtc_encoder() 297 if (conn_state->crtc == crtc) { in vc4_get_crtc_encoder() 307 static void vc4_crtc_pixelvalve_reset(struct drm_crtc *crtc) in vc4_crtc_pixelvalve_reset() argument [all …]
|
| /Linux-v5.15/drivers/gpu/drm/atmel-hlcdc/ |
| D | atmel_hlcdc_crtc.c | 60 drm_crtc_to_atmel_hlcdc_crtc(struct drm_crtc *crtc) in drm_crtc_to_atmel_hlcdc_crtc() argument 62 return container_of(crtc, struct atmel_hlcdc_crtc, base); in drm_crtc_to_atmel_hlcdc_crtc() 67 struct atmel_hlcdc_crtc *crtc = drm_crtc_to_atmel_hlcdc_crtc(c); in atmel_hlcdc_crtc_mode_set_nofb() local 68 struct regmap *regmap = crtc->dc->hlcdc->regmap; in atmel_hlcdc_crtc_mode_set_nofb() 78 ret = clk_prepare_enable(crtc->dc->hlcdc->sys_clk); in atmel_hlcdc_crtc_mode_set_nofb() 102 prate = clk_get_rate(crtc->dc->hlcdc->sys_clk); in atmel_hlcdc_crtc_mode_set_nofb() 104 if (!crtc->dc->desc->fixed_clksrc) { in atmel_hlcdc_crtc_mode_set_nofb() 155 clk_disable_unprepare(crtc->dc->hlcdc->sys_clk); in atmel_hlcdc_crtc_mode_set_nofb() 162 struct atmel_hlcdc_crtc *crtc = drm_crtc_to_atmel_hlcdc_crtc(c); in atmel_hlcdc_crtc_mode_valid() local 164 return atmel_hlcdc_dc_mode_valid(crtc->dc, mode); in atmel_hlcdc_crtc_mode_valid() [all …]
|
| /Linux-v5.15/include/drm/ |
| D | drm_crtc.h | 101 struct drm_crtc *crtc; member 427 void (*reset)(struct drm_crtc *crtc); 450 int (*cursor_set)(struct drm_crtc *crtc, struct drm_file *file_priv, 472 int (*cursor_set2)(struct drm_crtc *crtc, struct drm_file *file_priv, 492 int (*cursor_move)(struct drm_crtc *crtc, int x, int y); 507 int (*gamma_set)(struct drm_crtc *crtc, u16 *r, u16 *g, u16 *b, 518 void (*destroy)(struct drm_crtc *crtc); 590 int (*page_flip)(struct drm_crtc *crtc, 609 int (*page_flip_target)(struct drm_crtc *crtc, 629 int (*set_property)(struct drm_crtc *crtc, [all …]
|
| /Linux-v5.15/drivers/gpu/drm/mediatek/ |
| D | mtk_drm_crtc.c | 88 struct drm_crtc *crtc = &mtk_crtc->base; in mtk_drm_crtc_finish_page_flip() local 91 spin_lock_irqsave(&crtc->dev->event_lock, flags); in mtk_drm_crtc_finish_page_flip() 92 drm_crtc_send_vblank_event(crtc, mtk_crtc->event); in mtk_drm_crtc_finish_page_flip() 93 drm_crtc_vblank_put(crtc); in mtk_drm_crtc_finish_page_flip() 95 spin_unlock_irqrestore(&crtc->dev->event_lock, flags); in mtk_drm_crtc_finish_page_flip() 107 static void mtk_drm_crtc_destroy(struct drm_crtc *crtc) in mtk_drm_crtc_destroy() argument 109 struct mtk_drm_crtc *mtk_crtc = to_mtk_crtc(crtc); in mtk_drm_crtc_destroy() 113 drm_crtc_cleanup(crtc); in mtk_drm_crtc_destroy() 116 static void mtk_drm_crtc_reset(struct drm_crtc *crtc) in mtk_drm_crtc_reset() argument 120 if (crtc->state) in mtk_drm_crtc_reset() [all …]
|