Home
last modified time | relevance | path

Searched refs:tidss (Results 1 - 25 of 32) sorted by relevance

12

/kernel/linux/linux-5.10/drivers/gpu/drm/tidss/
H A Dtidss_irq.c16 static void tidss_irq_update(struct tidss_device *tidss) in tidss_irq_update() argument
18 assert_spin_locked(&tidss->wait_lock); in tidss_irq_update()
20 dispc_set_irqenable(tidss->dispc, tidss->irq_mask); in tidss_irq_update()
26 struct tidss_device *tidss = to_tidss(ddev); in tidss_irq_enable_vblank() local
31 spin_lock_irqsave(&tidss->wait_lock, flags); in tidss_irq_enable_vblank()
32 tidss->irq_mask |= DSS_IRQ_VP_VSYNC_EVEN(hw_videoport) | in tidss_irq_enable_vblank()
34 tidss_irq_update(tidss); in tidss_irq_enable_vblank()
35 spin_unlock_irqrestore(&tidss->wait_lock, flags); in tidss_irq_enable_vblank()
41 struct tidss_device *tidss in tidss_irq_disable_vblank() local
56 struct tidss_device *tidss = to_tidss(ddev); tidss_irq_handler() local
87 tidss_irq_resume(struct tidss_device *tidss) tidss_irq_resume() argument
98 struct tidss_device *tidss = to_tidss(ddev); tidss_irq_preinstall() local
112 struct tidss_device *tidss = to_tidss(ddev); tidss_irq_postinstall() local
141 struct tidss_device *tidss = to_tidss(ddev); tidss_irq_uninstall() local
[all...]
H A Dtidss_drv.c30 int tidss_runtime_get(struct tidss_device *tidss) in tidss_runtime_get() argument
34 dev_dbg(tidss->dev, "%s\n", __func__); in tidss_runtime_get()
36 r = pm_runtime_get_sync(tidss->dev); in tidss_runtime_get()
41 void tidss_runtime_put(struct tidss_device *tidss) in tidss_runtime_put() argument
45 dev_dbg(tidss->dev, "%s\n", __func__); in tidss_runtime_put()
47 r = pm_runtime_put_sync(tidss->dev); in tidss_runtime_put()
53 struct tidss_device *tidss = dev_get_drvdata(dev); in tidss_pm_runtime_suspend() local
57 return dispc_runtime_suspend(tidss->dispc); in tidss_pm_runtime_suspend()
62 struct tidss_device *tidss = dev_get_drvdata(dev); in tidss_pm_runtime_resume() local
67 r = dispc_runtime_resume(tidss in tidss_pm_runtime_resume()
76 struct tidss_device *tidss = dev_get_drvdata(dev); tidss_suspend() local
85 struct tidss_device *tidss = dev_get_drvdata(dev); tidss_resume() local
131 struct tidss_device *tidss; tidss_probe() local
213 struct tidss_device *tidss = platform_get_drvdata(pdev); tidss_remove() local
[all...]
H A Dtidss_kms.c28 struct tidss_device *tidss = to_tidss(ddev); in tidss_atomic_commit_tail() local
32 tidss_runtime_get(tidss); in tidss_atomic_commit_tail()
43 tidss_runtime_put(tidss); in tidss_atomic_commit_tail()
106 static int tidss_dispc_modeset_init(struct tidss_device *tidss) in tidss_dispc_modeset_init() argument
108 struct device *dev = tidss->dev; in tidss_dispc_modeset_init()
110 const u32 *fourccs = dispc_plane_formats(tidss->dispc, &fourccs_len); in tidss_dispc_modeset_init()
119 const struct dispc_features *feat = tidss->feat; in tidss_dispc_modeset_init()
196 u32 hw_plane_id = feat->vid_order[tidss->num_planes]; in tidss_dispc_modeset_init()
199 tplane = tidss_plane_create(tidss, hw_plane_id, in tidss_dispc_modeset_init()
203 dev_err(tidss in tidss_dispc_modeset_init()
253 tidss_modeset_init(struct tidss_device *tidss) tidss_modeset_init() argument
[all...]
H A Dtidss_crtc.c27 struct tidss_device *tidss = to_tidss(ddev); in tidss_crtc_finish_page_flip() local
40 busy = dispc_vp_go_busy(tidss->dispc, tcrtc->hw_videoport); in tidss_crtc_finish_page_flip()
91 struct tidss_device *tidss = to_tidss(ddev); in tidss_crtc_atomic_check() local
92 struct dispc_device *dispc = tidss->dispc; in tidss_crtc_atomic_check()
120 static void tidss_crtc_position_planes(struct tidss_device *tidss, in tidss_crtc_position_planes() argument
134 for (layer = 0; layer < tidss->feat->num_planes; layer++) { in tidss_crtc_position_planes()
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()
168 struct tidss_device *tidss = to_tidss(ddev); in tidss_crtc_atomic_flush() local
188 if (WARN_ON(dispc_vp_go_busy(tidss in tidss_crtc_atomic_flush()
219 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_atomic_enable() local
262 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_atomic_disable() local
298 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_mode_valid() local
317 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_enable_vblank() local
331 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_disable_vblank() local
400 tidss_crtc_create(struct tidss_device *tidss, u32 hw_videoport, struct drm_plane *primary) tidss_crtc_create() argument
[all...]
H A Dtidss_plane.c25 struct tidss_device *tidss = to_tidss(ddev); in tidss_plane_atomic_check() local
93 ret = dispc_plane_check(tidss->dispc, hw_plane, state, hw_videoport); in tidss_plane_atomic_check()
104 struct tidss_device *tidss = to_tidss(ddev); in tidss_plane_atomic_update() local
113 dispc_plane_enable(tidss->dispc, tplane->hw_plane_id, false); in tidss_plane_atomic_update()
119 ret = dispc_plane_setup(tidss->dispc, tplane->hw_plane_id, in tidss_plane_atomic_update()
125 dispc_plane_enable(tidss->dispc, tplane->hw_plane_id, false); in tidss_plane_atomic_update()
129 dispc_plane_enable(tidss->dispc, tplane->hw_plane_id, true); in tidss_plane_atomic_update()
136 struct tidss_device *tidss = to_tidss(ddev); in tidss_plane_atomic_disable() local
141 dispc_plane_enable(tidss->dispc, tplane->hw_plane_id, false); in tidss_plane_atomic_disable()
167 struct tidss_plane *tidss_plane_create(struct tidss_device *tidss, in tidss_plane_create() argument
[all...]
H A Dtidss_encoder.c72 struct drm_encoder *tidss_encoder_create(struct tidss_device *tidss, in tidss_encoder_create() argument
84 ret = drm_encoder_init(&tidss->ddev, enc, &encoder_funcs, in tidss_encoder_create()
93 dev_dbg(tidss->dev, "Encoder create done\n"); in tidss_encoder_create()
H A DMakefile3 tidss-y := tidss_crtc.o \
12 obj-$(CONFIG_DRM_TIDSS) += tidss.o
H A Dtidss_drv.h36 int tidss_runtime_get(struct tidss_device *tidss);
37 void tidss_runtime_put(struct tidss_device *tidss);
H A Dtidss_dispc.h132 int dispc_init(struct tidss_device *tidss);
133 void dispc_remove(struct tidss_device *tidss);
H A Dtidss_kms.h12 int tidss_modeset_init(struct tidss_device *tidss);
H A Dtidss_encoder.h14 struct drm_encoder *tidss_encoder_create(struct tidss_device *tidss,
H A Dtidss_plane.h20 struct tidss_plane *tidss_plane_create(struct tidss_device *tidss,
H A Dtidss_crtc.h45 struct tidss_crtc *tidss_crtc_create(struct tidss_device *tidss,
/kernel/linux/linux-6.6/drivers/gpu/drm/tidss/
H A Dtidss_irq.c19 static void tidss_irq_update(struct tidss_device *tidss) in tidss_irq_update() argument
21 assert_spin_locked(&tidss->wait_lock); in tidss_irq_update()
23 dispc_set_irqenable(tidss->dispc, tidss->irq_mask); in tidss_irq_update()
29 struct tidss_device *tidss = to_tidss(ddev); in tidss_irq_enable_vblank() local
34 spin_lock_irqsave(&tidss->wait_lock, flags); in tidss_irq_enable_vblank()
35 tidss->irq_mask |= DSS_IRQ_VP_VSYNC_EVEN(hw_videoport) | in tidss_irq_enable_vblank()
37 tidss_irq_update(tidss); in tidss_irq_enable_vblank()
38 spin_unlock_irqrestore(&tidss->wait_lock, flags); in tidss_irq_enable_vblank()
44 struct tidss_device *tidss in tidss_irq_disable_vblank() local
59 struct tidss_device *tidss = to_tidss(ddev); tidss_irq_handler() local
87 tidss_irq_resume(struct tidss_device *tidss) tidss_irq_resume() argument
98 struct tidss_device *tidss = to_tidss(ddev); tidss_irq_preinstall() local
112 struct tidss_device *tidss = to_tidss(ddev); tidss_irq_postinstall() local
157 struct tidss_device *tidss = to_tidss(ddev); tidss_irq_uninstall() local
[all...]
H A Dtidss_drv.c29 int tidss_runtime_get(struct tidss_device *tidss) in tidss_runtime_get() argument
33 dev_dbg(tidss->dev, "%s\n", __func__); in tidss_runtime_get()
35 r = pm_runtime_get_sync(tidss->dev); in tidss_runtime_get()
40 void tidss_runtime_put(struct tidss_device *tidss) in tidss_runtime_put() argument
44 dev_dbg(tidss->dev, "%s\n", __func__); in tidss_runtime_put()
46 r = pm_runtime_put_sync(tidss->dev); in tidss_runtime_put()
52 struct tidss_device *tidss = dev_get_drvdata(dev); in tidss_pm_runtime_suspend() local
56 return dispc_runtime_suspend(tidss->dispc); in tidss_pm_runtime_suspend()
61 struct tidss_device *tidss = dev_get_drvdata(dev); in tidss_pm_runtime_resume() local
66 r = dispc_runtime_resume(tidss in tidss_pm_runtime_resume()
75 struct tidss_device *tidss = dev_get_drvdata(dev); tidss_suspend() local
84 struct tidss_device *tidss = dev_get_drvdata(dev); tidss_resume() local
120 struct tidss_device *tidss; tidss_probe() local
203 struct tidss_device *tidss = platform_get_drvdata(pdev); tidss_remove() local
[all...]
H A Dtidss_kms.c25 struct tidss_device *tidss = to_tidss(ddev); in tidss_atomic_commit_tail() local
29 tidss_runtime_get(tidss); in tidss_atomic_commit_tail()
40 tidss_runtime_put(tidss); in tidss_atomic_commit_tail()
103 static int tidss_dispc_modeset_init(struct tidss_device *tidss) in tidss_dispc_modeset_init() argument
105 struct device *dev = tidss->dev; in tidss_dispc_modeset_init()
107 const u32 *fourccs = dispc_plane_formats(tidss->dispc, &fourccs_len); in tidss_dispc_modeset_init()
116 const struct dispc_features *feat = tidss->feat; in tidss_dispc_modeset_init()
192 u32 hw_plane_id = feat->vid_order[tidss->num_planes]; in tidss_dispc_modeset_init()
195 tplane = tidss_plane_create(tidss, hw_plane_id, in tidss_dispc_modeset_init()
199 dev_err(tidss in tidss_dispc_modeset_init()
244 tidss_modeset_init(struct tidss_device *tidss) tidss_modeset_init() argument
[all...]
H A Dtidss_crtc.c24 struct tidss_device *tidss = to_tidss(ddev); in tidss_crtc_finish_page_flip() local
37 busy = dispc_vp_go_busy(tidss->dispc, tcrtc->hw_videoport); in tidss_crtc_finish_page_flip()
90 struct tidss_device *tidss = to_tidss(ddev); in tidss_crtc_atomic_check() local
91 struct dispc_device *dispc = tidss->dispc; in tidss_crtc_atomic_check()
119 static void tidss_crtc_position_planes(struct tidss_device *tidss, in tidss_crtc_position_planes() argument
133 for (layer = 0; layer < tidss->feat->num_planes; layer++) { in tidss_crtc_position_planes()
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()
169 struct tidss_device *tidss = to_tidss(ddev); in tidss_crtc_atomic_flush() local
189 if (WARN_ON(dispc_vp_go_busy(tidss in tidss_crtc_atomic_flush()
222 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_atomic_enable() local
265 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_atomic_disable() local
311 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_mode_valid() local
330 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_enable_vblank() local
344 struct tidss_device *tidss = to_tidss(ddev); tidss_crtc_disable_vblank() local
413 tidss_crtc_create(struct tidss_device *tidss, u32 hw_videoport, struct drm_plane *primary) tidss_crtc_create() argument
[all...]
H A Dtidss_encoder.c27 struct tidss_device *tidss; member
51 struct tidss_device *tidss = t_enc->tidss; in tidss_bridge_atomic_check() local
67 dev_err(tidss->dev, "%s: No bus_formats in connected display\n", in tidss_bridge_atomic_check()
83 int tidss_encoder_create(struct tidss_device *tidss, in tidss_encoder_create() argument
92 t_enc = drmm_simple_encoder_alloc(&tidss->ddev, struct tidss_encoder, in tidss_encoder_create()
97 t_enc->tidss = tidss; in tidss_encoder_create()
108 dev_err(tidss->dev, "bridge attach failed: %d\n", ret); in tidss_encoder_create()
113 connector = drm_bridge_connector_init(&tidss in tidss_encoder_create()
[all...]
H A Dtidss_plane.c28 struct tidss_device *tidss = to_tidss(ddev); in tidss_plane_atomic_check() local
100 ret = dispc_plane_check(tidss->dispc, hw_plane, new_plane_state, in tidss_plane_atomic_check()
112 struct tidss_device *tidss = to_tidss(ddev); in tidss_plane_atomic_update() local
121 dispc_plane_enable(tidss->dispc, tplane->hw_plane_id, false); in tidss_plane_atomic_update()
127 dispc_plane_setup(tidss->dispc, tplane->hw_plane_id, new_state, hw_videoport); in tidss_plane_atomic_update()
134 struct tidss_device *tidss = to_tidss(ddev); in tidss_plane_atomic_enable() local
139 dispc_plane_enable(tidss->dispc, tplane->hw_plane_id, true); in tidss_plane_atomic_enable()
146 struct tidss_device *tidss = to_tidss(ddev); in tidss_plane_atomic_disable() local
151 dispc_plane_enable(tidss->dispc, tplane->hw_plane_id, false); in tidss_plane_atomic_disable()
178 struct tidss_plane *tidss_plane_create(struct tidss_device *tidss, in tidss_plane_create() argument
[all...]
H A DMakefile3 tidss-y := tidss_crtc.o \
12 obj-$(CONFIG_DRM_TIDSS) += tidss.o
H A Dtidss_drv.h38 int tidss_runtime_get(struct tidss_device *tidss);
39 void tidss_runtime_put(struct tidss_device *tidss);
H A Dtidss_dispc.h134 int dispc_init(struct tidss_device *tidss);
135 void dispc_remove(struct tidss_device *tidss);
H A Dtidss_kms.h12 int tidss_modeset_init(struct tidss_device *tidss);
H A Dtidss_encoder.h14 int tidss_encoder_create(struct tidss_device *tidss,
H A Dtidss_plane.h20 struct tidss_plane *tidss_plane_create(struct tidss_device *tidss,

Completed in 12 milliseconds

12