/Linux-v5.4/drivers/gpu/drm/ |
D | drm_crtc.c | 86 struct drm_crtc *crtc; in drm_crtc_from_index() local 88 drm_for_each_crtc(crtc, dev) in drm_crtc_from_index() 89 if (idx == crtc->index) in drm_crtc_from_index() 90 return crtc; in drm_crtc_from_index() 96 int drm_crtc_force_disable(struct drm_crtc *crtc) in drm_crtc_force_disable() argument 99 .crtc = crtc, in drm_crtc_force_disable() 102 WARN_ON(drm_drv_uses_atomic_modeset(crtc->dev)); in drm_crtc_force_disable() 121 struct drm_crtc *crtc; in drm_crtc_register_all() local 124 drm_for_each_crtc(crtc, dev) { in drm_crtc_register_all() 125 drm_debugfs_crtc_add(crtc); in drm_crtc_register_all() [all …]
|
D | drm_crtc_helper.c | 133 bool drm_helper_crtc_in_use(struct drm_crtc *crtc) in drm_helper_crtc_in_use() argument 136 struct drm_device *dev = crtc->dev; in drm_helper_crtc_in_use() 148 if (encoder->crtc == crtc && drm_helper_encoder_in_use(encoder)) in drm_helper_crtc_in_use() 171 struct drm_crtc *crtc; in __drm_helper_disable_unused_functions() local 179 encoder->crtc = NULL; in __drm_helper_disable_unused_functions() 183 drm_for_each_crtc(crtc, dev) { in __drm_helper_disable_unused_functions() 184 const struct drm_crtc_helper_funcs *crtc_funcs = crtc->helper_private; in __drm_helper_disable_unused_functions() 185 crtc->enabled = drm_helper_crtc_in_use(crtc); in __drm_helper_disable_unused_functions() 186 if (!crtc->enabled) { in __drm_helper_disable_unused_functions() 188 (*crtc_funcs->disable)(crtc); in __drm_helper_disable_unused_functions() [all …]
|
D | drm_atomic_helper.c | 80 if (old_plane_state->crtc) { in drm_atomic_helper_plane_changed() 82 old_plane_state->crtc); in drm_atomic_helper_plane_changed() 90 if (plane_state->crtc) { in drm_atomic_helper_plane_changed() 91 crtc_state = drm_atomic_get_new_crtc_state(state, plane_state->crtc); in drm_atomic_helper_plane_changed() 130 if (!new_conn_state->crtc) in handle_conflicting_encoders() 181 connector->state->crtc->base.id, in handle_conflicting_encoders() 182 connector->state->crtc->name, in handle_conflicting_encoders() 196 new_conn_state->crtc->base.id, new_conn_state->crtc->name, in handle_conflicting_encoders() 199 crtc_state = drm_atomic_get_new_crtc_state(state, new_conn_state->crtc); in handle_conflicting_encoders() 226 struct drm_crtc *crtc; in set_best_encoder() local [all …]
|
D | drm_trace.h | 16 TP_PROTO(int crtc, unsigned int seq), 17 TP_ARGS(crtc, seq), 19 __field(int, crtc) 23 __entry->crtc = crtc; 26 TP_printk("crtc=%d, seq=%u", __entry->crtc, __entry->seq) 30 TP_PROTO(struct drm_file *file, int crtc, unsigned int seq), 31 TP_ARGS(file, crtc, seq), 34 __field(int, crtc) 39 __entry->crtc = crtc; 42 TP_printk("file=%p, crtc=%d, seq=%u", __entry->file, __entry->crtc, \ [all …]
|
D | drm_debugfs_crc.c | 85 struct drm_crtc *crtc = m->private; in crc_control_show() local 87 if (crtc->funcs->get_crc_sources) { in crc_control_show() 89 const char *const *sources = crtc->funcs->get_crc_sources(crtc, in crc_control_show() 98 if (!crtc->funcs->verify_crc_source(crtc, sources[i], in crc_control_show() 100 if (strcmp(sources[i], crtc->crc.source)) in crc_control_show() 109 seq_printf(m, "%s*\n", crtc->crc.source); in crc_control_show() 115 struct drm_crtc *crtc = inode->i_private; in crc_control_open() local 117 return single_open(file, crc_control_show, crtc); in crc_control_open() 124 struct drm_crtc *crtc = m->private; in crc_control_write() local 125 struct drm_crtc_crc *crc = &crtc->crc; in crc_control_write() [all …]
|
/Linux-v5.4/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.4/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.4/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() 56 if (!crtc) in dpu_crtc_destroy() 59 drm_crtc_cleanup(crtc); in dpu_crtc_destroy() 89 static void _dpu_crtc_program_lm_output_roi(struct drm_crtc *crtc) in _dpu_crtc_program_lm_output_roi() argument 95 dpu_crtc = to_dpu_crtc(crtc); in _dpu_crtc_program_lm_output_roi() 96 crtc_state = to_dpu_crtc_state(crtc->state); in _dpu_crtc_program_lm_output_roi() 115 static void _dpu_crtc_blend_setup_mixer(struct drm_crtc *crtc, in _dpu_crtc_blend_setup_mixer() argument [all …]
|
/Linux-v5.4/drivers/gpu/drm/sun4i/ |
D | sun4i_crtc.c | 36 static struct drm_encoder *sun4i_crtc_get_encoder(struct drm_crtc *crtc) in sun4i_crtc_get_encoder() argument 40 drm_for_each_encoder(encoder, crtc->dev) in sun4i_crtc_get_encoder() 41 if (encoder->crtc == crtc) in sun4i_crtc_get_encoder() 47 static int sun4i_crtc_atomic_check(struct drm_crtc *crtc, in sun4i_crtc_atomic_check() argument 50 struct sun4i_crtc *scrtc = drm_crtc_to_sun4i_crtc(crtc); in sun4i_crtc_atomic_check() 60 static void sun4i_crtc_atomic_begin(struct drm_crtc *crtc, in sun4i_crtc_atomic_begin() argument 63 struct sun4i_crtc *scrtc = drm_crtc_to_sun4i_crtc(crtc); in sun4i_crtc_atomic_begin() 64 struct drm_device *dev = crtc->dev; in sun4i_crtc_atomic_begin() 68 if (crtc->state->event) { in sun4i_crtc_atomic_begin() 69 WARN_ON(drm_crtc_vblank_get(crtc) != 0); in sun4i_crtc_atomic_begin() [all …]
|
/Linux-v5.4/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.4/drivers/gpu/drm/msm/disp/mdp4/ |
D | mdp4_crtc.c | 61 static struct mdp4_kms *get_kms(struct drm_crtc *crtc) in get_kms() argument 63 struct msm_drm_private *priv = crtc->dev->dev_private; in get_kms() 67 static void request_pending(struct drm_crtc *crtc, uint32_t pending) in request_pending() argument 69 struct mdp4_crtc *mdp4_crtc = to_mdp4_crtc(crtc); in request_pending() 72 mdp_irq_register(&get_kms(crtc)->base, &mdp4_crtc->vblank); in request_pending() 75 static void crtc_flush(struct drm_crtc *crtc) in crtc_flush() argument 77 struct mdp4_crtc *mdp4_crtc = to_mdp4_crtc(crtc); in crtc_flush() 78 struct mdp4_kms *mdp4_kms = get_kms(crtc); in crtc_flush() 82 drm_atomic_crtc_for_each_plane(plane, crtc) { in crtc_flush() 97 static void complete_flip(struct drm_crtc *crtc, struct drm_file *file) in complete_flip() argument [all …]
|
/Linux-v5.4/drivers/gpu/drm/vkms/ |
D | vkms_crtc.c | 14 struct drm_crtc *crtc = &output->crtc; in vkms_vblank_simulate() local 25 ret = drm_crtc_handle_vblank(crtc); in vkms_vblank_simulate() 31 u64 frame = drm_crtc_accurate_vblank_count(crtc); in vkms_vblank_simulate() 56 static int vkms_enable_vblank(struct drm_crtc *crtc) in vkms_enable_vblank() argument 58 struct drm_device *dev = crtc->dev; in vkms_enable_vblank() 59 unsigned int pipe = drm_crtc_index(crtc); in vkms_enable_vblank() 61 struct vkms_output *out = drm_crtc_to_vkms_output(crtc); in vkms_enable_vblank() 63 drm_calc_timestamping_constants(crtc, &crtc->mode); in vkms_enable_vblank() 73 static void vkms_disable_vblank(struct drm_crtc *crtc) in vkms_disable_vblank() argument 75 struct vkms_output *out = drm_crtc_to_vkms_output(crtc); in vkms_disable_vblank() [all …]
|
/Linux-v5.4/drivers/gpu/drm/msm/disp/mdp5/ |
D | mdp5_crtc.c | 65 static void mdp5_crtc_restore_cursor(struct drm_crtc *crtc); 67 static struct mdp5_kms *get_kms(struct drm_crtc *crtc) in get_kms() argument 69 struct msm_drm_private *priv = crtc->dev->dev_private; in get_kms() 73 static void request_pending(struct drm_crtc *crtc, uint32_t pending) in request_pending() argument 75 struct mdp5_crtc *mdp5_crtc = to_mdp5_crtc(crtc); in request_pending() 78 mdp_irq_register(&get_kms(crtc)->base, &mdp5_crtc->vblank); in request_pending() 81 static void request_pp_done_pending(struct drm_crtc *crtc) in request_pp_done_pending() argument 83 struct mdp5_crtc *mdp5_crtc = to_mdp5_crtc(crtc); in request_pp_done_pending() 87 static u32 crtc_flush(struct drm_crtc *crtc, u32 flush_mask) in crtc_flush() argument 89 struct mdp5_crtc_state *mdp5_cstate = to_mdp5_crtc_state(crtc->state); in crtc_flush() [all …]
|
/Linux-v5.4/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.4/drivers/gpu/drm/vc4/ |
D | vc4_crtc.c | 93 struct drm_crtc *crtc = drm_crtc_from_index(dev, crtc_id); in vc4_crtc_get_scanoutpos() local 94 struct vc4_crtc *vc4_crtc = to_vc4_crtc(crtc); in vc4_crtc_get_scanoutpos() 205 static void vc4_crtc_destroy(struct drm_crtc *crtc) in vc4_crtc_destroy() argument 207 drm_crtc_cleanup(crtc); in vc4_crtc_destroy() 211 vc4_crtc_lut_load(struct drm_crtc *crtc) in vc4_crtc_lut_load() argument 213 struct drm_device *dev = crtc->dev; in vc4_crtc_lut_load() 215 struct vc4_crtc *vc4_crtc = to_vc4_crtc(crtc); in vc4_crtc_lut_load() 224 (vc4_crtc->channel * 3 * crtc->gamma_size)); in vc4_crtc_lut_load() 226 for (i = 0; i < crtc->gamma_size; i++) in vc4_crtc_lut_load() 228 for (i = 0; i < crtc->gamma_size; i++) in vc4_crtc_lut_load() [all …]
|
/Linux-v5.4/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() 179 static void reset(struct drm_crtc *crtc) in reset() argument 181 struct drm_device *dev = crtc->dev; in reset() [all …]
|
/Linux-v5.4/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() 98 if (!crtc->dc->desc->fixed_clksrc) { in atmel_hlcdc_crtc_mode_set_nofb() 103 prate = 2 * clk_get_rate(crtc->dc->hlcdc->sys_clk); in atmel_hlcdc_crtc_mode_set_nofb() 156 struct atmel_hlcdc_crtc *crtc = drm_crtc_to_atmel_hlcdc_crtc(c); in atmel_hlcdc_crtc_mode_valid() local 158 return atmel_hlcdc_dc_mode_valid(crtc->dc, mode); in atmel_hlcdc_crtc_mode_valid() 165 struct atmel_hlcdc_crtc *crtc = drm_crtc_to_atmel_hlcdc_crtc(c); in atmel_hlcdc_crtc_atomic_disable() local 166 struct regmap *regmap = crtc->dc->hlcdc->regmap; in atmel_hlcdc_crtc_atomic_disable() [all …]
|
/Linux-v5.4/drivers/gpu/drm/arm/display/komeda/ |
D | komeda_crtc.c | 49 komeda_crtc_atomic_check(struct drm_crtc *crtc, in komeda_crtc_atomic_check() argument 52 struct komeda_crtc *kcrtc = to_kcrtc(crtc); in komeda_crtc_atomic_check() 173 struct drm_crtc *crtc = &kcrtc->base; in komeda_crtc_handle_event() local 177 drm_crtc_handle_vblank(crtc); in komeda_crtc_handle_event() 196 spin_lock_irqsave(&crtc->dev->event_lock, flags); in komeda_crtc_handle_event() 200 } else if (crtc->state->event) { in komeda_crtc_handle_event() 201 event = crtc->state->event; in komeda_crtc_handle_event() 206 crtc->state->event = NULL; in komeda_crtc_handle_event() 207 drm_crtc_send_vblank_event(crtc, event); in komeda_crtc_handle_event() 212 spin_unlock_irqrestore(&crtc->dev->event_lock, flags); in komeda_crtc_handle_event() [all …]
|
/Linux-v5.4/drivers/gpu/drm/imx/ |
D | ipuv3-crtc.c | 44 static inline struct ipu_crtc *to_ipu_crtc(struct drm_crtc *crtc) in to_ipu_crtc() argument 46 return container_of(crtc, struct ipu_crtc, base); in to_ipu_crtc() 49 static void ipu_crtc_atomic_enable(struct drm_crtc *crtc, in ipu_crtc_atomic_enable() argument 52 struct ipu_crtc *ipu_crtc = to_ipu_crtc(crtc); in ipu_crtc_atomic_enable() 81 static void ipu_crtc_atomic_disable(struct drm_crtc *crtc, in ipu_crtc_atomic_disable() argument 84 struct ipu_crtc *ipu_crtc = to_ipu_crtc(crtc); in ipu_crtc_atomic_disable() 98 drm_crtc_vblank_off(crtc); in ipu_crtc_atomic_disable() 100 spin_lock_irq(&crtc->dev->event_lock); in ipu_crtc_atomic_disable() 101 if (crtc->state->event && !crtc->state->active) { in ipu_crtc_atomic_disable() 102 drm_crtc_send_vblank_event(crtc, crtc->state->event); in ipu_crtc_atomic_disable() [all …]
|
/Linux-v5.4/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.4/drivers/gpu/drm/i915/display/ |
D | intel_color.c | 136 static void ilk_update_pipe_csc(struct intel_crtc *crtc, in ilk_update_pipe_csc() argument 141 struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); in ilk_update_pipe_csc() 142 enum pipe pipe = crtc->pipe; in ilk_update_pipe_csc() 164 static void icl_update_output_csc(struct intel_crtc *crtc, in icl_update_output_csc() argument 169 struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); in icl_update_output_csc() 170 enum pipe pipe = crtc->pipe; in icl_update_output_csc() 192 struct drm_i915_private *dev_priv = to_i915(crtc_state->base.crtc->dev); in ilk_csc_limited_range() 257 struct intel_crtc *crtc = to_intel_crtc(crtc_state->base.crtc); in ilk_load_csc_matrix() local 258 struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); in ilk_load_csc_matrix() 265 ilk_update_pipe_csc(crtc, ilk_csc_off_zero, coeff, in ilk_load_csc_matrix() [all …]
|
D | intel_fifo_underrun.c | 57 struct intel_crtc *crtc; in ivb_can_enable_err_int() local 63 crtc = intel_get_crtc_for_pipe(dev_priv, pipe); in ivb_can_enable_err_int() 65 if (crtc->cpu_fifo_underrun_disabled) in ivb_can_enable_err_int() 76 struct intel_crtc *crtc; in cpt_can_enable_serr_int() local 81 crtc = intel_get_crtc_for_pipe(dev_priv, pipe); in cpt_can_enable_serr_int() 83 if (crtc->pch_fifo_underrun_disabled) in cpt_can_enable_serr_int() 90 static void i9xx_check_fifo_underruns(struct intel_crtc *crtc) in i9xx_check_fifo_underruns() argument 92 struct drm_i915_private *dev_priv = to_i915(crtc->base.dev); in i9xx_check_fifo_underruns() 93 i915_reg_t reg = PIPESTAT(crtc->pipe); in i9xx_check_fifo_underruns() 101 enable_mask = i915_pipestat_enable_mask(dev_priv, crtc->pipe); in i9xx_check_fifo_underruns() [all …]
|
/Linux-v5.4/include/drm/ |
D | drm_crtc.h | 102 struct drm_crtc *crtc; member 401 void (*reset)(struct drm_crtc *crtc); 424 int (*cursor_set)(struct drm_crtc *crtc, struct drm_file *file_priv, 446 int (*cursor_set2)(struct drm_crtc *crtc, struct drm_file *file_priv, 466 int (*cursor_move)(struct drm_crtc *crtc, int x, int y); 481 int (*gamma_set)(struct drm_crtc *crtc, u16 *r, u16 *g, u16 *b, 492 void (*destroy)(struct drm_crtc *crtc); 564 int (*page_flip)(struct drm_crtc *crtc, 583 int (*page_flip_target)(struct drm_crtc *crtc, 603 int (*set_property)(struct drm_crtc *crtc, [all …]
|
/Linux-v5.4/drivers/gpu/drm/mediatek/ |
D | mtk_drm_crtc.c | 73 struct drm_crtc *crtc = &mtk_crtc->base; in mtk_drm_crtc_finish_page_flip() local 76 spin_lock_irqsave(&crtc->dev->event_lock, flags); in mtk_drm_crtc_finish_page_flip() 77 drm_crtc_send_vblank_event(crtc, mtk_crtc->event); in mtk_drm_crtc_finish_page_flip() 78 drm_crtc_vblank_put(crtc); in mtk_drm_crtc_finish_page_flip() 80 spin_unlock_irqrestore(&crtc->dev->event_lock, flags); in mtk_drm_crtc_finish_page_flip() 92 static void mtk_drm_crtc_destroy(struct drm_crtc *crtc) in mtk_drm_crtc_destroy() argument 94 struct mtk_drm_crtc *mtk_crtc = to_mtk_crtc(crtc); in mtk_drm_crtc_destroy() 98 drm_crtc_cleanup(crtc); in mtk_drm_crtc_destroy() 101 static void mtk_drm_crtc_reset(struct drm_crtc *crtc) in mtk_drm_crtc_reset() argument 105 if (crtc->state) { in mtk_drm_crtc_reset() [all …]
|
/Linux-v5.4/drivers/gpu/drm/fsl-dcu/ |
D | fsl_dcu_drm_crtc.c | 23 static void fsl_dcu_drm_crtc_atomic_flush(struct drm_crtc *crtc, in fsl_dcu_drm_crtc_atomic_flush() argument 26 struct drm_device *dev = crtc->dev; in fsl_dcu_drm_crtc_atomic_flush() 28 struct drm_pending_vblank_event *event = crtc->state->event; in fsl_dcu_drm_crtc_atomic_flush() 34 crtc->state->event = NULL; in fsl_dcu_drm_crtc_atomic_flush() 36 spin_lock_irq(&crtc->dev->event_lock); in fsl_dcu_drm_crtc_atomic_flush() 37 if (drm_crtc_vblank_get(crtc) == 0) in fsl_dcu_drm_crtc_atomic_flush() 38 drm_crtc_arm_vblank_event(crtc, event); in fsl_dcu_drm_crtc_atomic_flush() 40 drm_crtc_send_vblank_event(crtc, event); in fsl_dcu_drm_crtc_atomic_flush() 41 spin_unlock_irq(&crtc->dev->event_lock); in fsl_dcu_drm_crtc_atomic_flush() 45 static void fsl_dcu_drm_crtc_atomic_disable(struct drm_crtc *crtc, in fsl_dcu_drm_crtc_atomic_disable() argument [all …]
|