Home
last modified time | relevance | path

Searched refs:crtc (Results 1 – 25 of 484) sorted by relevance

12345678910>>...20

/Linux-v5.4/drivers/gpu/drm/
Ddrm_crtc.c86 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 …]
Ddrm_crtc_helper.c133 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 …]
Ddrm_atomic_helper.c80 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 …]
Ddrm_trace.h16 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 …]
Ddrm_debugfs_crc.c85 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/
Domap_crtc.c56 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/
Dexynos_drm_crtc.c21 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/
Ddpu_crtc.c43 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/
Dsun4i_crtc.c36 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/
Drtc-cadence.c87 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/
Dmdp4_crtc.c61 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/
Dvkms_crtc.c14 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/
Dmdp5_crtc.c65 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/
Dsti_crtc.c25 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/
Dvc4_crtc.c93 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/
Dtilcdc_crtc.c62 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/
Datmel_hlcdc_crtc.c60 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/
Dkomeda_crtc.c49 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/
Dipuv3-crtc.c44 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/
Dradeon_cursor.c32 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/
Dintel_color.c136 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 …]
Dintel_fifo_underrun.c57 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/
Ddrm_crtc.h102 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/
Dmtk_drm_crtc.c73 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/
Dfsl_dcu_drm_crtc.c23 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 …]

12345678910>>...20