Home
last modified time | relevance | path

Searched full:dispc (Results 1 – 25 of 136) sorted by relevance

123456

/kernel/linux/linux-5.10/drivers/gpu/drm/omapdrm/dss/
Ddispc.c10 #define DSS_SUBSYS_NAME "DISPC"
37 #include "dispc.h"
41 /* DISPC */
50 #define REG_GET(dispc, idx, start, end) \ argument
51 FLD_GET(dispc_read_reg(dispc, idx), start, end)
53 #define REG_FLD_MOD(dispc, idx, val, start, end) \ argument
54 dispc_write_reg(dispc, idx, \
55 FLD_MOD(dispc_read_reg(dispc, idx), val, start, end))
57 /* DISPC has feature id */
100 int (*calc_scaling)(struct dispc_device *dispc,
[all …]
Domapdss.h404 /* DISPC channel for this output */
523 /* dispc ops */
526 u32 (*read_irqstatus)(struct dispc_device *dispc);
527 void (*clear_irqstatus)(struct dispc_device *dispc, u32 mask);
528 void (*write_irqenable)(struct dispc_device *dispc, u32 mask);
530 int (*request_irq)(struct dispc_device *dispc, irq_handler_t handler,
532 void (*free_irq)(struct dispc_device *dispc, void *dev_id);
534 int (*runtime_get)(struct dispc_device *dispc);
535 void (*runtime_put)(struct dispc_device *dispc);
537 int (*get_num_ovls)(struct dispc_device *dispc);
[all …]
Ddss.h259 struct dispc_device *dispc; member
390 /* DISPC */
391 void dispc_dump_clocks(struct dispc_device *dispc, struct seq_file *s);
393 int dispc_runtime_get(struct dispc_device *dispc);
394 void dispc_runtime_put(struct dispc_device *dispc);
396 void dispc_enable_sidle(struct dispc_device *dispc);
397 void dispc_disable_sidle(struct dispc_device *dispc);
399 void dispc_lcd_enable_signal(struct dispc_device *dispc, bool enable);
400 void dispc_pck_free_enable(struct dispc_device *dispc, bool enable);
401 void dispc_enable_fifomerge(struct dispc_device *dispc, bool enable);
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/omapdrm/dss/
Ddispc.c10 #define DSS_SUBSYS_NAME "DISPC"
37 #include "dispc.h"
41 /* DISPC */
50 #define REG_GET(dispc, idx, start, end) \ argument
51 FLD_GET(dispc_read_reg(dispc, idx), start, end)
53 #define REG_FLD_MOD(dispc, idx, val, start, end) \ argument
54 dispc_write_reg(dispc, idx, \
55 FLD_MOD(dispc_read_reg(dispc, idx), val, start, end))
57 /* DISPC has feature id */
102 int (*calc_scaling)(struct dispc_device *dispc,
[all …]
Ddss.h259 struct dispc_device *dispc; member
388 /* DISPC */
389 void dispc_dump_clocks(struct dispc_device *dispc, struct seq_file *s);
391 int dispc_runtime_get(struct dispc_device *dispc);
392 void dispc_runtime_put(struct dispc_device *dispc);
394 int dispc_get_num_ovls(struct dispc_device *dispc);
395 int dispc_get_num_mgrs(struct dispc_device *dispc);
397 const u32 *dispc_ovl_get_color_modes(struct dispc_device *dispc,
400 void dispc_ovl_get_max_size(struct dispc_device *dispc, u16 *width, u16 *height);
401 bool dispc_ovl_color_mode_supported(struct dispc_device *dispc,
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/tidss/
Dtidss_dispc.c360 static void dispc_write(struct dispc_device *dispc, u16 reg, u32 val) in dispc_write() argument
362 iowrite32(val, dispc->base_common + reg); in dispc_write()
365 static u32 dispc_read(struct dispc_device *dispc, u16 reg) in dispc_read() argument
367 return ioread32(dispc->base_common + reg); in dispc_read()
371 void dispc_vid_write(struct dispc_device *dispc, u32 hw_plane, u16 reg, u32 val) in dispc_vid_write() argument
373 void __iomem *base = dispc->base_vid[hw_plane]; in dispc_vid_write()
378 static u32 dispc_vid_read(struct dispc_device *dispc, u32 hw_plane, u16 reg) in dispc_vid_read() argument
380 void __iomem *base = dispc->base_vid[hw_plane]; in dispc_vid_read()
385 static void dispc_ovr_write(struct dispc_device *dispc, u32 hw_videoport, in dispc_ovr_write() argument
388 void __iomem *base = dispc->base_ovr[hw_videoport]; in dispc_ovr_write()
[all …]
Dtidss_dispc.h94 void dispc_set_irqenable(struct dispc_device *dispc, dispc_irq_t mask);
95 dispc_irq_t dispc_read_and_clear_irqstatus(struct dispc_device *dispc);
97 void dispc_ovr_set_plane(struct dispc_device *dispc, u32 hw_plane,
99 void dispc_ovr_enable_layer(struct dispc_device *dispc,
102 void dispc_vp_prepare(struct dispc_device *dispc, u32 hw_videoport,
104 void dispc_vp_enable(struct dispc_device *dispc, u32 hw_videoport,
106 void dispc_vp_disable(struct dispc_device *dispc, u32 hw_videoport);
107 void dispc_vp_unprepare(struct dispc_device *dispc, u32 hw_videoport);
108 bool dispc_vp_go_busy(struct dispc_device *dispc, u32 hw_videoport);
109 void dispc_vp_go(struct dispc_device *dispc, u32 hw_videoport);
[all …]
Dtidss_crtc.c37 busy = dispc_vp_go_busy(tidss->dispc, tcrtc->hw_videoport); in tidss_crtc_finish_page_flip()
91 struct dispc_device *dispc = tidss->dispc; in tidss_crtc_atomic_check() local
104 ok = dispc_vp_mode_valid(dispc, hw_videoport, mode); in tidss_crtc_atomic_check()
111 return dispc_vp_bus_check(dispc, hw_videoport, crtc_state); in tidss_crtc_atomic_check()
152 dispc_ovr_set_plane(tidss->dispc, tplane->hw_plane_id, in tidss_crtc_position_planes()
157 dispc_ovr_enable_layer(tidss->dispc, tcrtc->hw_videoport, layer, in tidss_crtc_position_planes()
189 if (WARN_ON(dispc_vp_go_busy(tidss->dispc, tcrtc->hw_videoport))) in tidss_crtc_atomic_flush()
197 dispc_vp_setup(tidss->dispc, tcrtc->hw_videoport, crtc->state, false); in tidss_crtc_atomic_flush()
205 dispc_vp_go(tidss->dispc, tcrtc->hw_videoport); in tidss_crtc_atomic_flush()
231 r = dispc_vp_set_clk_rate(tidss->dispc, tcrtc->hw_videoport, in tidss_crtc_atomic_enable()
[all …]
Dtidss_irq.c18 /* call with wait_lock and dispc runtime held */
23 dispc_set_irqenable(tidss->dispc, tidss->irq_mask); in tidss_irq_update()
64 irqstatus = dispc_read_and_clear_irqstatus(tidss->dispc); in tidss_irq_handler()
106 dispc_set_irqenable(tidss->dispc, 0); in tidss_irq_preinstall()
107 dispc_read_and_clear_irqstatus(tidss->dispc); in tidss_irq_preinstall()
162 dispc_set_irqenable(tidss->dispc, 0); in tidss_irq_uninstall()
Dtidss_drv.c56 return dispc_runtime_suspend(tidss->dispc); in tidss_pm_runtime_suspend()
66 r = dispc_runtime_resume(tidss->dispc); in tidss_pm_runtime_resume()
141 dev_err(dev, "failed to initialize dispc: %d\n", ret); in tidss_probe()
149 dispc_runtime_resume(tidss->dispc); in tidss_probe()
193 dispc_runtime_suspend(tidss->dispc); in tidss_probe()
216 dispc_runtime_suspend(tidss->dispc); in tidss_remove()
220 /* devm allocated dispc goes away with the dev so mark it NULL */ in tidss_remove()
/kernel/linux/linux-5.10/drivers/gpu/drm/tidss/
Dtidss_dispc.c310 static void dispc_write(struct dispc_device *dispc, u16 reg, u32 val) in dispc_write() argument
312 iowrite32(val, dispc->base_common + reg); in dispc_write()
315 static u32 dispc_read(struct dispc_device *dispc, u16 reg) in dispc_read() argument
317 return ioread32(dispc->base_common + reg); in dispc_read()
321 void dispc_vid_write(struct dispc_device *dispc, u32 hw_plane, u16 reg, u32 val) in dispc_vid_write() argument
323 void __iomem *base = dispc->base_vid[hw_plane]; in dispc_vid_write()
328 static u32 dispc_vid_read(struct dispc_device *dispc, u32 hw_plane, u16 reg) in dispc_vid_read() argument
330 void __iomem *base = dispc->base_vid[hw_plane]; in dispc_vid_read()
335 static void dispc_ovr_write(struct dispc_device *dispc, u32 hw_videoport, in dispc_ovr_write() argument
338 void __iomem *base = dispc->base_ovr[hw_videoport]; in dispc_ovr_write()
[all …]
Dtidss_dispc.h92 void dispc_set_irqenable(struct dispc_device *dispc, dispc_irq_t mask);
93 dispc_irq_t dispc_read_and_clear_irqstatus(struct dispc_device *dispc);
95 void dispc_ovr_set_plane(struct dispc_device *dispc, u32 hw_plane,
97 void dispc_ovr_enable_layer(struct dispc_device *dispc,
100 void dispc_vp_prepare(struct dispc_device *dispc, u32 hw_videoport,
102 void dispc_vp_enable(struct dispc_device *dispc, u32 hw_videoport,
104 void dispc_vp_disable(struct dispc_device *dispc, u32 hw_videoport);
105 void dispc_vp_unprepare(struct dispc_device *dispc, u32 hw_videoport);
106 bool dispc_vp_go_busy(struct dispc_device *dispc, u32 hw_videoport);
107 void dispc_vp_go(struct dispc_device *dispc, u32 hw_videoport);
[all …]
Dtidss_crtc.c40 busy = dispc_vp_go_busy(tidss->dispc, tcrtc->hw_videoport); in tidss_crtc_finish_page_flip()
92 struct dispc_device *dispc = tidss->dispc; in tidss_crtc_atomic_check() local
105 ok = dispc_vp_mode_valid(dispc, hw_videoport, mode); in tidss_crtc_atomic_check()
112 return dispc_vp_bus_check(dispc, hw_videoport, state); in tidss_crtc_atomic_check()
153 dispc_ovr_set_plane(tidss->dispc, tplane->hw_plane_id, in tidss_crtc_position_planes()
158 dispc_ovr_enable_layer(tidss->dispc, tcrtc->hw_videoport, layer, in tidss_crtc_position_planes()
188 if (WARN_ON(dispc_vp_go_busy(tidss->dispc, tcrtc->hw_videoport))) in tidss_crtc_atomic_flush()
196 dispc_vp_setup(tidss->dispc, tcrtc->hw_videoport, crtc->state, false); in tidss_crtc_atomic_flush()
204 dispc_vp_go(tidss->dispc, tcrtc->hw_videoport); in tidss_crtc_atomic_flush()
228 r = dispc_vp_set_clk_rate(tidss->dispc, tcrtc->hw_videoport, in tidss_crtc_atomic_enable()
[all …]
Dtidss_irq.c15 /* call with wait_lock and dispc runtime held */
20 dispc_set_irqenable(tidss->dispc, tidss->irq_mask); in tidss_irq_update()
63 irqstatus = dispc_read_and_clear_irqstatus(tidss->dispc); in tidss_irq_handler()
104 dispc_set_irqenable(tidss->dispc, 0); in tidss_irq_preinstall()
105 dispc_read_and_clear_irqstatus(tidss->dispc); in tidss_irq_preinstall()
144 dispc_set_irqenable(tidss->dispc, 0); in tidss_irq_uninstall()
/kernel/linux/linux-5.10/drivers/gpu/drm/omapdrm/
Domap_irq.c18 /* call with wait_lock and dispc runtime held */
32 priv->dispc_ops->write_irqenable(priv->dispc, irqmask); in omap_irq_update()
86 priv->dispc_ops->mgr_get_framedone_irq(priv->dispc, channel); in omap_irq_enable_framedone()
124 priv->irq_mask |= priv->dispc_ops->mgr_get_vsync_irq(priv->dispc, in omap_irq_enable_vblank()
151 priv->irq_mask &= ~priv->dispc_ops->mgr_get_vsync_irq(priv->dispc, in omap_irq_disable_vblank()
216 irqstatus = priv->dispc_ops->read_irqstatus(priv->dispc); in omap_irq_handler()
217 priv->dispc_ops->clear_irqstatus(priv->dispc, irqstatus); in omap_irq_handler()
218 priv->dispc_ops->read_irqstatus(priv->dispc); /* flush posted write */ in omap_irq_handler()
226 if (irqstatus & priv->dispc_ops->mgr_get_vsync_irq(priv->dispc, channel)) { in omap_irq_handler()
231 if (irqstatus & priv->dispc_ops->mgr_get_sync_lost_irq(priv->dispc, channel)) in omap_irq_handler()
[all …]
/kernel/linux/linux-6.6/drivers/gpu/drm/omapdrm/
Domap_irq.c18 /* call with wait_lock and dispc runtime held */
32 dispc_write_irqenable(priv->dispc, irqmask); in omap_irq_update()
86 dispc_mgr_get_framedone_irq(priv->dispc, channel); in omap_irq_enable_framedone()
123 priv->irq_mask |= dispc_mgr_get_vsync_irq(priv->dispc, in omap_irq_enable_vblank()
149 priv->irq_mask &= ~dispc_mgr_get_vsync_irq(priv->dispc, in omap_irq_disable_vblank()
214 irqstatus = dispc_read_irqstatus(priv->dispc); in omap_irq_handler()
215 dispc_clear_irqstatus(priv->dispc, irqstatus); in omap_irq_handler()
216 dispc_read_irqstatus(priv->dispc); /* flush posted write */ in omap_irq_handler()
224 if (irqstatus & dispc_mgr_get_vsync_irq(priv->dispc, channel)) { in omap_irq_handler()
229 if (irqstatus & dispc_mgr_get_sync_lost_irq(priv->dispc, channel)) in omap_irq_handler()
[all …]
Domap_crtc.c105 dispc_mgr_enable(priv->dispc, channel, true); in omap_crtc_dss_start_update()
130 dispc_mgr_enable(priv->dispc, channel, enable); in omap_crtc_set_enabled()
143 framedone_irq = dispc_mgr_get_framedone_irq(priv->dispc, in omap_crtc_set_enabled()
145 vsync_irq = dispc_mgr_get_vsync_irq(priv->dispc, channel); in omap_crtc_set_enabled()
152 * FRAMEDONE to know that DISPC has finished with the output. in omap_crtc_set_enabled()
165 dispc_mgr_enable(priv->dispc, channel, enable); in omap_crtc_set_enabled()
187 dispc_mgr_set_timings(priv->dispc, omap_crtc->channel, in omap_crtc_dss_enable()
221 dispc_mgr_set_lcd_config(priv->dispc, omap_crtc->channel, in omap_crtc_dss_set_lcd_config()
287 * If the dispc is busy we're racing the flush operation. Try again on in omap_crtc_vblank_irq()
290 if (dispc_mgr_go_busy(priv->dispc, omap_crtc->channel)) { in omap_crtc_vblank_irq()
[all …]
/kernel/linux/linux-5.10/drivers/video/fbdev/omap2/omapfb/dss/
Ddispc.c3 * linux/drivers/video/omap2/dss/dispc.c
12 #define DSS_SUBSYS_NAME "DISPC"
37 #include "dispc.h"
39 /* DISPC */
84 /* revert to the OMAP4 mechanism of DISPC Smart Standby operation */
127 } dispc; variable
253 __raw_writel(val, dispc.base + idx); in dispc_write_reg()
258 return __raw_readl(dispc.base + idx); in dispc_read_reg()
274 spin_lock_irqsave(&dispc.control_lock, flags); in mgr_fld_write()
279 spin_unlock_irqrestore(&dispc.control_lock, flags); in mgr_fld_write()
[all …]
/kernel/linux/linux-6.6/drivers/video/fbdev/omap2/omapfb/dss/
Ddispc.c3 * linux/drivers/video/omap2/dss/dispc.c
12 #define DSS_SUBSYS_NAME "DISPC"
37 #include "dispc.h"
39 /* DISPC */
84 /* revert to the OMAP4 mechanism of DISPC Smart Standby operation */
127 } dispc; variable
253 __raw_writel(val, dispc.base + idx); in dispc_write_reg()
258 return __raw_readl(dispc.base + idx); in dispc_read_reg()
274 spin_lock_irqsave(&dispc.control_lock, flags); in mgr_fld_write()
279 spin_unlock_irqrestore(&dispc.control_lock, flags); in mgr_fld_write()
[all …]
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/display/ti/
Dti,dra7-dss.txt29 - DISPC
39 DISPC
43 - compatible: "ti,dra7-dispc"
46 - interrupts: the DISPC interrupt
51 - max-memory-bandwidth: Input memory (from main memory to dispc) bandwidth limit
Dti,omap5-dss.txt18 - DISPC
28 DISPC
32 - compatible: "ti,omap5-dispc"
35 - interrupts: the DISPC interrupt
40 - max-memory-bandwidth: Input memory (from main memory to dispc) bandwidth limit
Dti,omap2-dss.txt22 DISPC
26 - compatible: "ti,omap2-dispc"
29 - interrupts: the DISPC interrupt
32 - max-memory-bandwidth: Input memory (from main memory to dispc) bandwidth limit
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/display/ti/
Dti,dra7-dss.txt29 - DISPC
39 DISPC
43 - compatible: "ti,dra7-dispc"
46 - interrupts: the DISPC interrupt
51 - max-memory-bandwidth: Input memory (from main memory to dispc) bandwidth limit
Dti,omap5-dss.txt18 - DISPC
28 DISPC
32 - compatible: "ti,omap5-dispc"
35 - interrupts: the DISPC interrupt
40 - max-memory-bandwidth: Input memory (from main memory to dispc) bandwidth limit
Dti,omap2-dss.txt22 DISPC
26 - compatible: "ti,omap2-dispc"
29 - interrupts: the DISPC interrupt
32 - max-memory-bandwidth: Input memory (from main memory to dispc) bandwidth limit

123456