Home
last modified time | relevance | path

Searched refs:dtg (Results 1 - 12 of 12) sorted by relevance

/kernel/linux/linux-5.10/drivers/gpu/drm/imx/dcss/
H A Ddcss-dtg.c98 static void dcss_dtg_write(struct dcss_dtg *dtg, u32 val, u32 ofs) in dcss_dtg_write() argument
100 if (!dtg->in_use) in dcss_dtg_write()
101 dcss_writel(val, dtg->base_reg + ofs); in dcss_dtg_write()
103 dcss_ctxld_write(dtg->ctxld, dtg->ctx_id, in dcss_dtg_write()
104 val, dtg->base_ofs + ofs); in dcss_dtg_write()
109 struct dcss_dtg *dtg = data; in dcss_dtg_irq_handler() local
112 status = dcss_readl(dtg->base_reg + DCSS_DTG_INT_STATUS); in dcss_dtg_irq_handler()
117 dcss_ctxld_kick(dtg->ctxld); in dcss_dtg_irq_handler()
119 dcss_writel(status & LINE0_IRQ, dtg in dcss_dtg_irq_handler()
124 dcss_dtg_irq_config(struct dcss_dtg *dtg, struct platform_device *pdev) dcss_dtg_irq_config() argument
153 struct dcss_dtg *dtg; dcss_dtg_init() local
193 dcss_dtg_exit(struct dcss_dtg *dtg) dcss_dtg_exit() argument
203 dcss_dtg_sync_set(struct dcss_dtg *dtg, struct videomode *vm) dcss_dtg_sync_set() argument
258 dcss_dtg_plane_pos_set(struct dcss_dtg *dtg, int ch_num, int px, int py, int pw, int ph) dcss_dtg_plane_pos_set() argument
280 dcss_dtg_global_alpha_changed(struct dcss_dtg *dtg, int ch_num, int alpha) dcss_dtg_global_alpha_changed() argument
288 dcss_dtg_plane_alpha_set(struct dcss_dtg *dtg, int ch_num, const struct drm_format_info *format, int alpha) dcss_dtg_plane_alpha_set() argument
307 dcss_dtg_css_set(struct dcss_dtg *dtg) dcss_dtg_css_set() argument
313 dcss_dtg_enable(struct dcss_dtg *dtg) dcss_dtg_enable() argument
325 dcss_dtg_shutoff(struct dcss_dtg *dtg) dcss_dtg_shutoff() argument
335 dcss_dtg_is_enabled(struct dcss_dtg *dtg) dcss_dtg_is_enabled() argument
340 dcss_dtg_ch_enable(struct dcss_dtg *dtg, int ch_num, bool en) dcss_dtg_ch_enable() argument
357 dcss_dtg_vblank_irq_enable(struct dcss_dtg *dtg, bool en) dcss_dtg_vblank_irq_enable() argument
371 dcss_dtg_ctxld_kick_irq_enable(struct dcss_dtg *dtg, bool en) dcss_dtg_ctxld_kick_irq_enable() argument
400 dcss_dtg_vblank_irq_clear(struct dcss_dtg *dtg) dcss_dtg_vblank_irq_clear() argument
405 dcss_dtg_vblank_irq_valid(struct dcss_dtg *dtg) dcss_dtg_vblank_irq_valid() argument
[all...]
H A Ddcss-dev.h70 struct dcss_dtg *dtg; member
139 void dcss_dtg_exit(struct dcss_dtg *dtg);
140 bool dcss_dtg_vblank_irq_valid(struct dcss_dtg *dtg);
141 void dcss_dtg_vblank_irq_enable(struct dcss_dtg *dtg, bool en);
142 void dcss_dtg_vblank_irq_clear(struct dcss_dtg *dtg);
143 void dcss_dtg_sync_set(struct dcss_dtg *dtg, struct videomode *vm);
144 void dcss_dtg_css_set(struct dcss_dtg *dtg);
145 void dcss_dtg_enable(struct dcss_dtg *dtg);
146 void dcss_dtg_shutoff(struct dcss_dtg *dtg);
147 bool dcss_dtg_is_enabled(struct dcss_dtg *dtg);
[all...]
H A Ddcss-crtc.c20 dcss_dtg_vblank_irq_enable(dcss->dtg, true); in dcss_enable_vblank()
22 dcss_dtg_ctxld_kick_irq_enable(dcss->dtg, true); in dcss_enable_vblank()
37 dcss_dtg_vblank_irq_enable(dcss->dtg, false); in dcss_disable_vblank()
40 dcss_dtg_ctxld_kick_irq_enable(dcss->dtg, false); in dcss_disable_vblank()
75 if (dcss_dtg_is_enabled(dcss->dtg)) in dcss_crtc_atomic_flush()
96 dcss_dtg_css_set(dcss->dtg); in dcss_crtc_atomic_enable()
99 dcss_dtg_sync_set(dcss->dtg, &vm); in dcss_crtc_atomic_enable()
131 dcss_dtg_ctxld_kick_irq_enable(dcss->dtg, true); in dcss_crtc_atomic_disable()
168 if (!dcss_dtg_vblank_irq_valid(dcss->dtg)) in dcss_crtc_irq_handler()
174 dcss_dtg_vblank_irq_clear(dcss->dtg); in dcss_crtc_irq_handler()
[all...]
H A Ddcss-plane.c324 dcss_dtg_plane_pos_set(dcss->dtg, dcss_plane->ch_num, in dcss_plane_atomic_update()
326 dcss_dtg_plane_alpha_set(dcss->dtg, dcss_plane->ch_num, in dcss_plane_atomic_update()
336 dcss_dtg_plane_pos_set(dcss->dtg, dcss_plane->ch_num, in dcss_plane_atomic_update()
339 dcss_dtg_ch_enable(dcss->dtg, dcss_plane->ch_num, enable); in dcss_plane_atomic_update()
350 dcss_dtg_plane_pos_set(dcss->dtg, dcss_plane->ch_num, 0, 0, 0, 0); in dcss_plane_atomic_disable()
351 dcss_dtg_ch_enable(dcss->dtg, dcss_plane->ch_num, false); in dcss_plane_atomic_disable()
H A Ddcss-dev.c43 dcss_dtg_shutoff(dcss->dtg); in dcss_disable_dtg_and_ss_cb()
58 dcss_dtg_enable(dcss->dtg); in dcss_enable_dtg_and_ss()
105 dcss_dtg_exit(dcss->dtg); in dcss_submodules_init()
124 dcss_dtg_exit(dcss->dtg); in dcss_submodules_stop()
H A DMakefile1 imx-dcss-objs := dcss-drv.o dcss-dev.o dcss-blkctl.o dcss-ctxld.o dcss-dtg.o \
/kernel/linux/linux-6.6/drivers/gpu/drm/imx/dcss/
H A Ddcss-dtg.c98 static void dcss_dtg_write(struct dcss_dtg *dtg, u32 val, u32 ofs) in dcss_dtg_write() argument
100 if (!dtg->in_use) in dcss_dtg_write()
101 dcss_writel(val, dtg->base_reg + ofs); in dcss_dtg_write()
103 dcss_ctxld_write(dtg->ctxld, dtg->ctx_id, in dcss_dtg_write()
104 val, dtg->base_ofs + ofs); in dcss_dtg_write()
109 struct dcss_dtg *dtg = data; in dcss_dtg_irq_handler() local
112 status = dcss_readl(dtg->base_reg + DCSS_DTG_INT_STATUS); in dcss_dtg_irq_handler()
117 dcss_ctxld_kick(dtg->ctxld); in dcss_dtg_irq_handler()
119 dcss_writel(status & LINE0_IRQ, dtg in dcss_dtg_irq_handler()
124 dcss_dtg_irq_config(struct dcss_dtg *dtg, struct platform_device *pdev) dcss_dtg_irq_config() argument
153 struct dcss_dtg *dtg; dcss_dtg_init() local
193 dcss_dtg_exit(struct dcss_dtg *dtg) dcss_dtg_exit() argument
203 dcss_dtg_sync_set(struct dcss_dtg *dtg, struct videomode *vm) dcss_dtg_sync_set() argument
258 dcss_dtg_plane_pos_set(struct dcss_dtg *dtg, int ch_num, int px, int py, int pw, int ph) dcss_dtg_plane_pos_set() argument
280 dcss_dtg_global_alpha_changed(struct dcss_dtg *dtg, int ch_num, int alpha) dcss_dtg_global_alpha_changed() argument
288 dcss_dtg_plane_alpha_set(struct dcss_dtg *dtg, int ch_num, const struct drm_format_info *format, int alpha) dcss_dtg_plane_alpha_set() argument
307 dcss_dtg_css_set(struct dcss_dtg *dtg) dcss_dtg_css_set() argument
313 dcss_dtg_enable(struct dcss_dtg *dtg) dcss_dtg_enable() argument
325 dcss_dtg_shutoff(struct dcss_dtg *dtg) dcss_dtg_shutoff() argument
335 dcss_dtg_is_enabled(struct dcss_dtg *dtg) dcss_dtg_is_enabled() argument
340 dcss_dtg_ch_enable(struct dcss_dtg *dtg, int ch_num, bool en) dcss_dtg_ch_enable() argument
357 dcss_dtg_vblank_irq_enable(struct dcss_dtg *dtg, bool en) dcss_dtg_vblank_irq_enable() argument
371 dcss_dtg_ctxld_kick_irq_enable(struct dcss_dtg *dtg, bool en) dcss_dtg_ctxld_kick_irq_enable() argument
400 dcss_dtg_vblank_irq_clear(struct dcss_dtg *dtg) dcss_dtg_vblank_irq_clear() argument
405 dcss_dtg_vblank_irq_valid(struct dcss_dtg *dtg) dcss_dtg_vblank_irq_valid() argument
[all...]
H A Ddcss-dev.h72 struct dcss_dtg *dtg; member
139 void dcss_dtg_exit(struct dcss_dtg *dtg);
140 bool dcss_dtg_vblank_irq_valid(struct dcss_dtg *dtg);
141 void dcss_dtg_vblank_irq_enable(struct dcss_dtg *dtg, bool en);
142 void dcss_dtg_vblank_irq_clear(struct dcss_dtg *dtg);
143 void dcss_dtg_sync_set(struct dcss_dtg *dtg, struct videomode *vm);
144 void dcss_dtg_css_set(struct dcss_dtg *dtg);
145 void dcss_dtg_enable(struct dcss_dtg *dtg);
146 void dcss_dtg_shutoff(struct dcss_dtg *dtg);
147 bool dcss_dtg_is_enabled(struct dcss_dtg *dtg);
[all...]
H A Ddcss-crtc.c21 dcss_dtg_vblank_irq_enable(dcss->dtg, true); in dcss_enable_vblank()
23 dcss_dtg_ctxld_kick_irq_enable(dcss->dtg, true); in dcss_enable_vblank()
38 dcss_dtg_vblank_irq_enable(dcss->dtg, false); in dcss_disable_vblank()
41 dcss_dtg_ctxld_kick_irq_enable(dcss->dtg, false); in dcss_disable_vblank()
76 if (dcss_dtg_is_enabled(dcss->dtg)) in dcss_crtc_atomic_flush()
99 dcss_dtg_css_set(dcss->dtg); in dcss_crtc_atomic_enable()
102 dcss_dtg_sync_set(dcss->dtg, &vm); in dcss_crtc_atomic_enable()
136 dcss_dtg_ctxld_kick_irq_enable(dcss->dtg, true); in dcss_crtc_atomic_disable()
173 if (!dcss_dtg_vblank_irq_valid(dcss->dtg)) in dcss_crtc_irq_handler()
179 dcss_dtg_vblank_irq_clear(dcss->dtg); in dcss_crtc_irq_handler()
[all...]
H A Ddcss-plane.c335 dcss_dtg_plane_pos_set(dcss->dtg, dcss_plane->ch_num, in dcss_plane_atomic_update()
337 dcss_dtg_plane_alpha_set(dcss->dtg, dcss_plane->ch_num, in dcss_plane_atomic_update()
347 dcss_dtg_plane_pos_set(dcss->dtg, dcss_plane->ch_num, in dcss_plane_atomic_update()
350 dcss_dtg_ch_enable(dcss->dtg, dcss_plane->ch_num, enable); in dcss_plane_atomic_update()
361 dcss_dtg_plane_pos_set(dcss->dtg, dcss_plane->ch_num, 0, 0, 0, 0); in dcss_plane_atomic_disable()
362 dcss_dtg_ch_enable(dcss->dtg, dcss_plane->ch_num, false); in dcss_plane_atomic_disable()
H A Ddcss-dev.c44 dcss_dtg_shutoff(dcss->dtg); in dcss_disable_dtg_and_ss_cb()
59 dcss_dtg_enable(dcss->dtg); in dcss_enable_dtg_and_ss()
106 dcss_dtg_exit(dcss->dtg); in dcss_submodules_init()
125 dcss_dtg_exit(dcss->dtg); in dcss_submodules_stop()
H A DMakefile1 imx-dcss-objs := dcss-drv.o dcss-dev.o dcss-blkctl.o dcss-ctxld.o dcss-dtg.o \

Completed in 6 milliseconds