Home
last modified time | relevance | path

Searched refs:kms (Results 1 – 25 of 91) sorted by relevance

1234

/openbmc/linux/drivers/gpu/drm/msm/
H A Dmsm_atomic.c21 static void vblank_get(struct msm_kms *kms, unsigned crtc_mask) in vblank_get() argument
25 for_each_crtc_mask(kms->dev, crtc, crtc_mask) { in vblank_get()
32 static void vblank_put(struct msm_kms *kms, unsigned crtc_mask) in vblank_put() argument
36 for_each_crtc_mask(kms->dev, crtc, crtc_mask) { in vblank_put()
43 static void lock_crtcs(struct msm_kms *kms, unsigned int crtc_mask) in lock_crtcs() argument
48 for_each_crtc_mask(kms->dev, crtc, crtc_mask) { in lock_crtcs()
50 mutex_lock_nested(&kms->commit_lock[crtc_index], crtc_index); in lock_crtcs()
54 static void unlock_crtcs(struct msm_kms *kms, unsigned int crtc_mask) in unlock_crtcs() argument
58 for_each_crtc_mask_reverse(kms->dev, crtc, crtc_mask) in unlock_crtcs()
59 mutex_unlock(&kms->commit_lock[drm_crtc_index(crtc)]); in unlock_crtcs()
[all …]
H A Dmsm_kms.h25 int (*hw_init)(struct msm_kms *kms);
27 void (*irq_preinstall)(struct msm_kms *kms);
28 int (*irq_postinstall)(struct msm_kms *kms);
29 void (*irq_uninstall)(struct msm_kms *kms);
30 irqreturn_t (*irq)(struct msm_kms *kms);
31 int (*enable_vblank)(struct msm_kms *kms, struct drm_crtc *crtc);
32 void (*disable_vblank)(struct msm_kms *kms, struct drm_crtc *crtc);
59 void (*enable_commit)(struct msm_kms *kms);
60 void (*disable_commit)(struct msm_kms *kms);
66 void (*prepare_commit)(struct msm_kms *kms, struct drm_atomic_state *state);
[all …]
H A Dmsm_drv.c90 struct msm_kms *kms = priv->kms; in msm_irq() local
92 BUG_ON(!kms); in msm_irq()
94 return kms->funcs->irq(kms); in msm_irq()
100 struct msm_kms *kms = priv->kms; in msm_irq_preinstall() local
102 BUG_ON(!kms); in msm_irq_preinstall()
104 kms->funcs->irq_preinstall(kms); in msm_irq_preinstall()
110 struct msm_kms *kms = priv->kms; in msm_irq_postinstall() local
112 BUG_ON(!kms); in msm_irq_postinstall()
114 if (kms->funcs->irq_postinstall) in msm_irq_postinstall()
115 return kms->funcs->irq_postinstall(kms); in msm_irq_postinstall()
[all …]
H A Dmsm_debugfs.c151 if (!priv->kms) in msm_kms_open()
154 ret = mutex_lock_interruptible(&priv->kms->dump_mutex); in msm_kms_open()
158 state = msm_disp_snapshot_state_sync(priv->kms); in msm_kms_open()
160 mutex_unlock(&priv->kms->dump_mutex); in msm_kms_open()
340 if (priv->kms && priv->kms->funcs->debugfs_init) in msm_debugfs_init()
341 priv->kms->funcs->debugfs_init(priv->kms, minor); in msm_debugfs_init()
/openbmc/linux/drivers/gpu/drm/msm/disp/
H A Dmsm_disp_snapshot.c32 msm_disp_snapshot_state_sync(struct msm_kms *kms) in msm_disp_snapshot_state_sync() argument
34 struct drm_device *drm_dev = kms->dev; in msm_disp_snapshot_state_sync()
37 WARN_ON(!mutex_is_locked(&kms->dump_mutex)); in msm_disp_snapshot_state_sync()
55 struct msm_kms *kms = container_of(work, struct msm_kms, dump_work); in _msm_disp_snapshot_work() local
60 mutex_lock(&kms->dump_mutex); in _msm_disp_snapshot_work()
61 disp_state = msm_disp_snapshot_state_sync(kms); in _msm_disp_snapshot_work()
62 mutex_unlock(&kms->dump_mutex); in _msm_disp_snapshot_work()
84 struct msm_kms *kms; in msm_disp_snapshot_state() local
92 kms = priv->kms; in msm_disp_snapshot_state()
94 kthread_queue_work(kms->dump_worker, &kms->dump_work); in msm_disp_snapshot_state()
[all …]
H A Dmsm_disp_snapshot_util.c126 struct msm_kms *kms; in msm_disp_snapshot_capture_state() local
131 kms = priv->kms; in msm_disp_snapshot_capture_state()
147 if (kms->funcs->snapshot) in msm_disp_snapshot_capture_state()
148 kms->funcs->snapshot(disp_state, kms); in msm_disp_snapshot_capture_state()
/openbmc/linux/drivers/gpu/drm/imx/dcss/
H A Ddcss-kms.c44 static void dcss_kms_mode_config_init(struct dcss_kms_dev *kms) in dcss_kms_mode_config_init() argument
46 struct drm_mode_config *config = &kms->base.mode_config; in dcss_kms_mode_config_init()
48 drm_mode_config_init(&kms->base); in dcss_kms_mode_config_init()
64 static int dcss_kms_bridge_connector_init(struct dcss_kms_dev *kms) in dcss_kms_bridge_connector_init() argument
66 struct drm_device *ddev = &kms->base; in dcss_kms_bridge_connector_init()
67 struct drm_encoder *encoder = &kms->encoder; in dcss_kms_bridge_connector_init()
68 struct drm_crtc *crtc = (struct drm_crtc *)&kms->crtc; in dcss_kms_bridge_connector_init()
85 ret = drm_encoder_init(&kms->base, encoder, in dcss_kms_bridge_connector_init()
98 kms->connector = drm_bridge_connector_init(ddev, encoder); in dcss_kms_bridge_connector_init()
99 if (IS_ERR(kms->connector)) { in dcss_kms_bridge_connector_init()
[all …]
H A Ddcss-drv.c18 struct dcss_kms_dev *kms; member
32 return mdrv ? &mdrv->kms->base : NULL; in dcss_drv_dev_to_drm()
66 mdrv->kms = dcss_kms_attach(mdrv->dcss); in dcss_drv_platform_probe()
67 if (IS_ERR(mdrv->kms)) { in dcss_drv_platform_probe()
68 err = PTR_ERR(mdrv->kms); in dcss_drv_platform_probe()
87 dcss_kms_detach(mdrv->kms); in dcss_drv_platform_remove()
/openbmc/linux/drivers/gpu/drm/arm/display/komeda/
H A Dkomeda_kms.c40 struct komeda_kms_dev *kms = to_kdev(drm); in komeda_kms_irq_handler() local
52 for (i = 0; i < kms->n_crtcs; i++) in komeda_kms_irq_handler()
53 komeda_crtc_handle_event(&kms->crtcs[i], &evts); in komeda_kms_irq_handler()
72 struct komeda_kms_dev *kms = to_kdev(dev); in komeda_kms_atomic_commit_hw_done() local
75 for (i = 0; i < kms->n_crtcs; i++) { in komeda_kms_atomic_commit_hw_done()
76 struct komeda_crtc *kcrtc = &kms->crtcs[i]; in komeda_kms_atomic_commit_hw_done()
255 static void komeda_kms_mode_config_init(struct komeda_kms_dev *kms, in komeda_kms_mode_config_init() argument
258 struct drm_mode_config *config = &kms->base.mode_config; in komeda_kms_mode_config_init()
260 drm_mode_config_init(&kms->base); in komeda_kms_mode_config_init()
262 komeda_kms_setup_crtcs(kms, mdev); in komeda_kms_mode_config_init()
[all …]
H A Dkomeda_private_obj.c48 static int komeda_layer_obj_add(struct komeda_kms_dev *kms, in komeda_layer_obj_add() argument
58 drm_atomic_private_obj_init(&kms->base, &layer->base.obj, &st->base.obj, in komeda_layer_obj_add()
90 static int komeda_scaler_obj_add(struct komeda_kms_dev *kms, in komeda_scaler_obj_add() argument
100 drm_atomic_private_obj_init(&kms->base, in komeda_scaler_obj_add()
133 static int komeda_compiz_obj_add(struct komeda_kms_dev *kms, in komeda_compiz_obj_add() argument
143 drm_atomic_private_obj_init(&kms->base, &compiz->base.obj, &st->base.obj, in komeda_compiz_obj_add()
176 static int komeda_splitter_obj_add(struct komeda_kms_dev *kms, in komeda_splitter_obj_add() argument
186 drm_atomic_private_obj_init(&kms->base, in komeda_splitter_obj_add()
219 static int komeda_merger_obj_add(struct komeda_kms_dev *kms, in komeda_merger_obj_add() argument
229 drm_atomic_private_obj_init(&kms->base, in komeda_merger_obj_add()
[all …]
H A Dkomeda_plane.c198 static u32 get_possible_crtcs(struct komeda_kms_dev *kms, in get_possible_crtcs() argument
205 for (i = 0; i < kms->n_crtcs; i++) { in get_possible_crtcs()
206 crtc = &kms->crtcs[i]; in get_possible_crtcs()
216 komeda_set_crtc_plane_mask(struct komeda_kms_dev *kms, in komeda_set_crtc_plane_mask() argument
223 for (i = 0; i < kms->n_crtcs; i++) { in komeda_set_crtc_plane_mask()
224 kcrtc = &kms->crtcs[i]; in komeda_set_crtc_plane_mask()
232 static u32 get_plane_type(struct komeda_kms_dev *kms, in get_plane_type() argument
240 static int komeda_plane_add(struct komeda_kms_dev *kms, in komeda_plane_add() argument
243 struct komeda_dev *mdev = kms->base.dev_private; in komeda_plane_add()
264 err = drm_universal_plane_init(&kms->base, plane, in komeda_plane_add()
[all …]
H A Dkomeda_drv.c20 struct komeda_kms_dev *kms; member
35 komeda_kms_detach(mdrv->kms); in komeda_platform_remove()
68 mdrv->kms = komeda_kms_attach(mdrv->mdev); in komeda_platform_probe()
69 if (IS_ERR(mdrv->kms)) { in komeda_platform_probe()
70 err = PTR_ERR(mdrv->kms); in komeda_platform_probe()
75 drm_fbdev_generic_setup(&mdrv->kms->base, 32); in komeda_platform_probe()
119 res = drm_mode_config_helper_suspend(&mdrv->kms->base); in komeda_pm_suspend()
134 return drm_mode_config_helper_resume(&mdrv->kms->base); in komeda_pm_resume()
H A Dkomeda_kms.h176 int komeda_kms_setup_crtcs(struct komeda_kms_dev *kms, struct komeda_dev *mdev);
178 int komeda_kms_add_crtcs(struct komeda_kms_dev *kms, struct komeda_dev *mdev);
179 int komeda_kms_add_planes(struct komeda_kms_dev *kms, struct komeda_dev *mdev);
180 int komeda_kms_add_private_objs(struct komeda_kms_dev *kms,
182 int komeda_kms_add_wb_connectors(struct komeda_kms_dev *kms,
184 void komeda_kms_cleanup_private_objs(struct komeda_kms_dev *kms);
192 void komeda_kms_detach(struct komeda_kms_dev *kms);
H A Dkomeda_wb_connector.c139 static int komeda_wb_connector_add(struct komeda_kms_dev *kms, in komeda_wb_connector_add() argument
142 struct komeda_dev *mdev = kms->base.dev_private; in komeda_wb_connector_add()
168 err = drm_writeback_connector_init(&kms->base, wb_conn, in komeda_wb_connector_add()
190 int komeda_kms_add_wb_connectors(struct komeda_kms_dev *kms, in komeda_kms_add_wb_connectors() argument
195 for (i = 0; i < kms->n_crtcs; i++) { in komeda_kms_add_wb_connectors()
196 err = komeda_wb_connector_add(kms, &kms->crtcs[i]); in komeda_kms_add_wb_connectors()
H A Dkomeda_crtc.c564 int komeda_kms_setup_crtcs(struct komeda_kms_dev *kms, in komeda_kms_setup_crtcs() argument
572 kms->n_crtcs = 0; in komeda_kms_setup_crtcs()
575 crtc = &kms->crtcs[kms->n_crtcs]; in komeda_kms_setup_crtcs()
587 kms->n_crtcs, master->id, str); in komeda_kms_setup_crtcs()
589 kms->n_crtcs++; in komeda_kms_setup_crtcs()
596 get_crtc_primary(struct komeda_kms_dev *kms, struct komeda_crtc *crtc) in get_crtc_primary() argument
601 drm_for_each_plane(plane, &kms->base) { in get_crtc_primary()
635 static int komeda_crtc_add(struct komeda_kms_dev *kms, in komeda_crtc_add() argument
639 struct drm_device *base = &kms->base; in komeda_crtc_add()
645 get_crtc_primary(kms, kcrtc), NULL, in komeda_crtc_add()
[all …]
/openbmc/linux/drivers/gpu/drm/msm/disp/mdp4/
H A Dmdp4_irq.c35 void mdp4_irq_preinstall(struct msm_kms *kms) in mdp4_irq_preinstall() argument
37 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_irq_preinstall()
44 int mdp4_irq_postinstall(struct msm_kms *kms) in mdp4_irq_postinstall() argument
46 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp4_irq_postinstall()
59 void mdp4_irq_uninstall(struct msm_kms *kms) in mdp4_irq_uninstall() argument
61 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_irq_uninstall()
67 irqreturn_t mdp4_irq(struct msm_kms *kms) in mdp4_irq() argument
69 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp4_irq()
90 int mdp4_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc) in mdp4_enable_vblank() argument
92 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_enable_vblank()
[all …]
H A Dmdp4_kms.c16 static int mdp4_hw_init(struct msm_kms *kms) in mdp4_hw_init() argument
18 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_hw_init()
75 static void mdp4_enable_commit(struct msm_kms *kms) in mdp4_enable_commit() argument
77 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_enable_commit()
81 static void mdp4_disable_commit(struct msm_kms *kms) in mdp4_disable_commit() argument
83 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_disable_commit()
87 static void mdp4_flush_commit(struct msm_kms *kms, unsigned crtc_mask) in mdp4_flush_commit() argument
92 static void mdp4_wait_flush(struct msm_kms *kms, unsigned crtc_mask) in mdp4_wait_flush() argument
94 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_wait_flush()
101 static void mdp4_complete_commit(struct msm_kms *kms, unsigned crtc_mask) in mdp4_complete_commit() argument
[all …]
H A Dmdp4_plane.c59 return to_mdp4_kms(to_mdp_kms(priv->kms)); in get_kms()
99 struct msm_kms *kms = priv->kms; in mdp4_plane_prepare_fb() local
106 return msm_framebuffer_prepare(new_state->fb, kms->aspace, false); in mdp4_plane_prepare_fb()
114 struct msm_kms *kms = &mdp4_kms->base.base; in mdp4_plane_cleanup_fb() local
121 msm_framebuffer_cleanup(fb, kms->aspace, false); in mdp4_plane_cleanup_fb()
160 struct msm_kms *kms = &mdp4_kms->base.base; in mdp4_plane_set_scanout() local
172 msm_framebuffer_iova(fb, kms->aspace, 0)); in mdp4_plane_set_scanout()
174 msm_framebuffer_iova(fb, kms->aspace, 1)); in mdp4_plane_set_scanout()
176 msm_framebuffer_iova(fb, kms->aspace, 2)); in mdp4_plane_set_scanout()
178 msm_framebuffer_iova(fb, kms->aspace, 3)); in mdp4_plane_set_scanout()
H A Dmdp4_kms.h154 void mdp4_irq_preinstall(struct msm_kms *kms);
155 int mdp4_irq_postinstall(struct msm_kms *kms);
156 void mdp4_irq_uninstall(struct msm_kms *kms);
157 irqreturn_t mdp4_irq(struct msm_kms *kms);
158 int mdp4_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc);
159 void mdp4_disable_vblank(struct msm_kms *kms, struct drm_crtc *crtc);
/openbmc/linux/drivers/gpu/drm/msm/disp/dpu1/
H A Ddpu_core_perf.c106 return to_dpu_kms(priv->kms); in _dpu_crtc_get_kms()
151 struct dpu_kms *kms; in dpu_core_perf_crtc_check() local
158 kms = _dpu_crtc_get_kms(crtc); in dpu_core_perf_crtc_check()
167 _dpu_core_perf_calc_crtc(&kms->perf, crtc, state, &dpu_cstate->new_perf); in dpu_core_perf_crtc_check()
190 threshold = kms->perf.perf_cfg->max_bw_high; in dpu_core_perf_crtc_check()
207 static int _dpu_core_perf_crtc_update_bus(struct dpu_kms *kms, in _dpu_core_perf_crtc_update_bus() argument
218 if (!kms->num_paths) in _dpu_core_perf_crtc_update_bus()
234 dpu_cstate->new_perf.bw_ctl, kms->num_paths); in _dpu_core_perf_crtc_update_bus()
239 do_div(avg_bw, (kms->num_paths * 1000)); /*Bps_to_icc*/ in _dpu_core_perf_crtc_update_bus()
241 for (i = 0; i < kms->num_paths; i++) in _dpu_core_perf_crtc_update_bus()
[all …]
H A Ddpu_kms.c54 static int dpu_kms_hw_init(struct msm_kms *kms);
62 struct dpu_kms *kms = s->private; in _dpu_danger_signal_status() local
65 if (!kms->hw_mdp) { in _dpu_danger_signal_status()
72 pm_runtime_get_sync(&kms->pdev->dev); in _dpu_danger_signal_status()
75 if (kms->hw_mdp->ops.get_danger_status) in _dpu_danger_signal_status()
76 kms->hw_mdp->ops.get_danger_status(kms->hw_mdp, in _dpu_danger_signal_status()
80 if (kms->hw_mdp->ops.get_safe_status) in _dpu_danger_signal_status()
81 kms->hw_mdp->ops.get_safe_status(kms->hw_mdp, in _dpu_danger_signal_status()
84 pm_runtime_put_sync(&kms->pdev->dev); in _dpu_danger_signal_status()
111 struct dpu_kms *kms = file->private_data; in _dpu_plane_danger_read() local
[all …]
H A Ddpu_core_irq.h16 void dpu_core_irq_preinstall(struct msm_kms *kms);
23 void dpu_core_irq_uninstall(struct msm_kms *kms);
30 irqreturn_t dpu_core_irq(struct msm_kms *kms);
/openbmc/linux/drivers/gpu/drm/msm/disp/mdp5/
H A Dmdp5_irq.c39 void mdp5_irq_preinstall(struct msm_kms *kms) in mdp5_irq_preinstall() argument
41 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_irq_preinstall()
50 int mdp5_irq_postinstall(struct msm_kms *kms) in mdp5_irq_postinstall() argument
52 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp5_irq_postinstall()
70 void mdp5_irq_uninstall(struct msm_kms *kms) in mdp5_irq_uninstall() argument
72 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_irq_uninstall()
80 irqreturn_t mdp5_irq(struct msm_kms *kms) in mdp5_irq() argument
82 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp5_irq()
103 int mdp5_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc) in mdp5_enable_vblank() argument
105 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_enable_vblank()
[all …]
H A Dmdp5_kms.c22 static int mdp5_hw_init(struct msm_kms *kms) in mdp5_hw_init() argument
24 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_hw_init()
85 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(priv->kms)); in mdp5_get_global_state()
145 static void mdp5_enable_commit(struct msm_kms *kms) in mdp5_enable_commit() argument
147 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_enable_commit()
151 static void mdp5_disable_commit(struct msm_kms *kms) in mdp5_disable_commit() argument
153 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_disable_commit()
157 static void mdp5_prepare_commit(struct msm_kms *kms, struct drm_atomic_state *state) in mdp5_prepare_commit() argument
159 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_prepare_commit()
168 static void mdp5_flush_commit(struct msm_kms *kms, unsigned crtc_mask) in mdp5_flush_commit() argument
[all …]
H A Dmdp5_kms.h266 void mdp5_irq_preinstall(struct msm_kms *kms);
267 int mdp5_irq_postinstall(struct msm_kms *kms);
268 void mdp5_irq_uninstall(struct msm_kms *kms);
269 irqreturn_t mdp5_irq(struct msm_kms *kms);
270 int mdp5_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc);
271 void mdp5_disable_vblank(struct msm_kms *kms, struct drm_crtc *crtc);

1234