/Linux-v4.19/drivers/gpu/drm/msm/ |
D | msm_kms.h | 36 int (*hw_init)(struct msm_kms *kms); 38 void (*irq_preinstall)(struct msm_kms *kms); 39 int (*irq_postinstall)(struct msm_kms *kms); 40 void (*irq_uninstall)(struct msm_kms *kms); 41 irqreturn_t (*irq)(struct msm_kms *kms); 42 int (*enable_vblank)(struct msm_kms *kms, struct drm_crtc *crtc); 43 void (*disable_vblank)(struct msm_kms *kms, struct drm_crtc *crtc); 45 void (*prepare_commit)(struct msm_kms *kms, struct drm_atomic_state *state); 46 void (*commit)(struct msm_kms *kms, struct drm_atomic_state *state); 47 void (*complete_commit)(struct msm_kms *kms, struct drm_atomic_state *state); [all …]
|
D | msm_atomic.c | 28 struct msm_kms *kms = priv->kms; in msm_atomic_wait_for_commit_done() local 35 kms->funcs->wait_for_crtc_commit_done(kms, crtc); in msm_atomic_wait_for_commit_done() 43 struct msm_kms *kms = priv->kms; in msm_atomic_prepare_fb() local 57 return msm_framebuffer_prepare(new_state->fb, kms->aspace); in msm_atomic_prepare_fb() 64 struct msm_kms *kms = priv->kms; in msm_atomic_commit_tail() local 66 kms->funcs->prepare_commit(kms, state); in msm_atomic_commit_tail() 74 if (kms->funcs->commit) { in msm_atomic_commit_tail() 76 kms->funcs->commit(kms, state); in msm_atomic_commit_tail() 81 kms->funcs->complete_commit(kms, state); in msm_atomic_commit_tail()
|
D | msm_drv.c | 218 struct msm_kms *kms = priv->kms; in vblank_ctrl_worker() local 228 kms->funcs->enable_vblank(kms, in vblank_ctrl_worker() 231 kms->funcs->disable_vblank(kms, in vblank_ctrl_worker() 271 struct msm_kms *kms = priv->kms; in msm_drm_uninit() local 324 if (kms && kms->funcs) in msm_drm_uninit() 325 kms->funcs->destroy(kms); in msm_drm_uninit() 439 struct msm_kms *kms; in msm_drm_init() local 499 kms = mdp4_kms_init(ddev); in msm_drm_init() 500 priv->kms = kms; in msm_drm_init() 503 kms = mdp5_kms_init(ddev); in msm_drm_init() [all …]
|
D | msm_fb.c | 139 struct msm_kms *kms = priv->kms; in msm_framebuffer_init() local 154 format = kms->funcs->get_format(kms, mode_cmd->pixel_format, in msm_framebuffer_init()
|
D | msm_debugfs.c | 238 if (priv->kms->funcs->debugfs_init) { in msm_debugfs_init() 239 ret = priv->kms->funcs->debugfs_init(priv->kms, minor); in msm_debugfs_init()
|
D | NOTES | 1 NOTES about msm drm/kms driver: 20 with N different kms devices from xf86-video-freedreno. Plus, it 22 pageflip after rendering completes (ie. have the kms/crtc code build 33 The kms module provides the plane, crtc, and encoder objects, and
|
/Linux-v4.19/drivers/gpu/drm/msm/disp/dpu1/ |
D | dpu_core_perf.c | 52 if (!priv || !priv->kms) { in _dpu_crtc_get_kms() 57 return to_dpu_kms(priv->kms); in _dpu_crtc_get_kms() 87 static void _dpu_core_perf_calc_crtc(struct dpu_kms *kms, in _dpu_core_perf_calc_crtc() argument 95 if (!kms || !kms->catalog || !crtc || !state || !perf) { in _dpu_core_perf_calc_crtc() 105 perf->bw_ctl[i] = kms->catalog->perf.max_bw_high * in _dpu_core_perf_calc_crtc() 109 perf->core_clk_rate = kms->perf.max_core_clk_rate; in _dpu_core_perf_calc_crtc() 110 } else if (kms->perf.perf_tune.mode == DPU_PERF_MODE_MINIMUM) { in _dpu_core_perf_calc_crtc() 116 } else if (kms->perf.perf_tune.mode == DPU_PERF_MODE_FIXED) { in _dpu_core_perf_calc_crtc() 118 perf->bw_ctl[i] = kms->perf.fix_core_ab_vote; in _dpu_core_perf_calc_crtc() 119 perf->max_per_pipe_ib[i] = kms->perf.fix_core_ib_vote; in _dpu_core_perf_calc_crtc() [all …]
|
D | dpu_irq.c | 22 irqreturn_t dpu_irq(struct msm_kms *kms) in dpu_irq() argument 24 struct dpu_kms *dpu_kms = to_dpu_kms(kms); in dpu_irq() 29 void dpu_irq_preinstall(struct msm_kms *kms) in dpu_irq_preinstall() argument 31 struct dpu_kms *dpu_kms = to_dpu_kms(kms); in dpu_irq_preinstall() 41 int dpu_irq_postinstall(struct msm_kms *kms) in dpu_irq_postinstall() argument 43 struct dpu_kms *dpu_kms = to_dpu_kms(kms); in dpu_irq_postinstall() 46 if (!kms) { in dpu_irq_postinstall() 56 void dpu_irq_uninstall(struct msm_kms *kms) in dpu_irq_uninstall() argument 58 struct dpu_kms *dpu_kms = to_dpu_kms(kms); in dpu_irq_uninstall() 60 if (!kms) { in dpu_irq_uninstall()
|
D | dpu_irq.h | 36 void dpu_irq_preinstall(struct msm_kms *kms); 43 int dpu_irq_postinstall(struct msm_kms *kms); 50 void dpu_irq_uninstall(struct msm_kms *kms); 57 irqreturn_t dpu_irq(struct msm_kms *kms);
|
D | dpu_kms.c | 58 static int dpu_kms_hw_init(struct msm_kms *kms); 79 struct dpu_kms *kms = (struct dpu_kms *)s->private; in _dpu_danger_signal_status() local 84 if (!kms || !kms->dev || !kms->dev->dev_private || !kms->hw_mdp) { in _dpu_danger_signal_status() 89 priv = kms->dev->dev_private; in _dpu_danger_signal_status() 92 pm_runtime_get_sync(&kms->pdev->dev); in _dpu_danger_signal_status() 95 if (kms->hw_mdp->ops.get_danger_status) in _dpu_danger_signal_status() 96 kms->hw_mdp->ops.get_danger_status(kms->hw_mdp, in _dpu_danger_signal_status() 100 if (kms->hw_mdp->ops.get_danger_status) in _dpu_danger_signal_status() 101 kms->hw_mdp->ops.get_danger_status(kms->hw_mdp, in _dpu_danger_signal_status() 104 pm_runtime_put_sync(&kms->pdev->dev); in _dpu_danger_signal_status() [all …]
|
D | dpu_plane.c | 133 return to_dpu_kms(priv->kms); in _dpu_plane_get_kms() 436 if (!priv || !priv->kms) { in dpu_plane_danger_signal_ctrl() 441 dpu_kms = to_dpu_kms(priv->kms); in dpu_plane_danger_signal_ctrl() 475 if (!priv || !priv->kms) { in _dpu_plane_set_ot_limit() 480 dpu_kms = to_dpu_kms(priv->kms); in _dpu_plane_set_ot_limit() 518 if (!priv || !priv->kms) { in _dpu_plane_set_qos_remap() 523 dpu_kms = to_dpu_kms(priv->kms); in _dpu_plane_set_qos_remap() 554 struct dpu_kms *kms; in _dpu_plane_get_aspace() local 561 kms = _dpu_plane_get_kms(&pdpu->base); in _dpu_plane_get_aspace() 562 if (!kms) { in _dpu_plane_get_aspace() [all …]
|
D | dpu_formats.h | 39 struct msm_kms *kms, 68 const struct msm_kms *kms,
|
D | dpu_kms.h | 164 ((struct msm_drm_private *)((D)->dev_private))->kms : NULL) 276 int dpu_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc); 277 void dpu_disable_vblank(struct msm_kms *kms, struct drm_crtc *crtc);
|
/Linux-v4.19/drivers/gpu/drm/msm/disp/mdp4/ |
D | mdp4_irq.c | 45 void mdp4_irq_preinstall(struct msm_kms *kms) in mdp4_irq_preinstall() argument 47 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_irq_preinstall() 54 int mdp4_irq_postinstall(struct msm_kms *kms) in mdp4_irq_postinstall() argument 56 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp4_irq_postinstall() 69 void mdp4_irq_uninstall(struct msm_kms *kms) in mdp4_irq_uninstall() argument 71 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_irq_uninstall() 77 irqreturn_t mdp4_irq(struct msm_kms *kms) in mdp4_irq() argument 79 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp4_irq() 101 int mdp4_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc) in mdp4_enable_vblank() argument 103 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_enable_vblank() [all …]
|
D | mdp4_kms.c | 26 static int mdp4_hw_init(struct msm_kms *kms) in mdp4_hw_init() argument 28 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_hw_init() 107 static void mdp4_prepare_commit(struct msm_kms *kms, struct drm_atomic_state *state) in mdp4_prepare_commit() argument 109 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_prepare_commit() 121 static void mdp4_complete_commit(struct msm_kms *kms, struct drm_atomic_state *state) in mdp4_complete_commit() argument 123 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_complete_commit() 137 static void mdp4_wait_for_crtc_commit_done(struct msm_kms *kms, in mdp4_wait_for_crtc_commit_done() argument 143 static long mdp4_round_pixclk(struct msm_kms *kms, unsigned long rate, in mdp4_round_pixclk() argument 161 static void mdp4_destroy(struct msm_kms *kms) in mdp4_destroy() argument 163 struct mdp4_kms *mdp4_kms = to_mdp4_kms(to_mdp_kms(kms)); in mdp4_destroy() [all …]
|
D | mdp4_kms.h | 171 void mdp4_irq_preinstall(struct msm_kms *kms); 172 int mdp4_irq_postinstall(struct msm_kms *kms); 173 void mdp4_irq_uninstall(struct msm_kms *kms); 174 irqreturn_t mdp4_irq(struct msm_kms *kms); 175 int mdp4_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc); 176 void mdp4_disable_vblank(struct msm_kms *kms, struct drm_crtc *crtc);
|
D | mdp4_plane.c | 64 return to_mdp4_kms(to_mdp_kms(priv->kms)); in get_kms() 106 struct msm_kms *kms = &mdp4_kms->base.base; in mdp4_plane_cleanup_fb() local 113 msm_framebuffer_cleanup(fb, kms->aspace); in mdp4_plane_cleanup_fb() 151 struct msm_kms *kms = &mdp4_kms->base.base; in mdp4_plane_set_scanout() local 163 msm_framebuffer_iova(fb, kms->aspace, 0)); in mdp4_plane_set_scanout() 165 msm_framebuffer_iova(fb, kms->aspace, 1)); in mdp4_plane_set_scanout() 167 msm_framebuffer_iova(fb, kms->aspace, 2)); in mdp4_plane_set_scanout() 169 msm_framebuffer_iova(fb, kms->aspace, 3)); in mdp4_plane_set_scanout()
|
D | mdp4_crtc.c | 74 return to_mdp4_kms(to_mdp_kms(priv->kms)); in get_kms() 129 struct msm_kms *kms = &mdp4_kms->base.base; in unref_cursor_worker() local 131 msm_gem_put_iova(val, kms->aspace); in unref_cursor_worker() 374 struct msm_kms *kms = &mdp4_kms->base.base; in update_cursor() local 387 msm_gem_get_iova(next_bo, kms->aspace, &iova); in update_cursor() 424 struct msm_kms *kms = &mdp4_kms->base.base; in mdp4_crtc_cursor_set() local 445 ret = msm_gem_get_iova(cursor_bo, kms->aspace, &iova); in mdp4_crtc_cursor_set()
|
/Linux-v4.19/drivers/gpu/drm/msm/disp/mdp5/ |
D | mdp5_irq.c | 49 void mdp5_irq_preinstall(struct msm_kms *kms) in mdp5_irq_preinstall() argument 51 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_irq_preinstall() 60 int mdp5_irq_postinstall(struct msm_kms *kms) in mdp5_irq_postinstall() argument 62 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp5_irq_postinstall() 80 void mdp5_irq_uninstall(struct msm_kms *kms) in mdp5_irq_uninstall() argument 82 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_irq_uninstall() 90 irqreturn_t mdp5_irq(struct msm_kms *kms) in mdp5_irq() argument 92 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp5_irq() 114 int mdp5_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc) in mdp5_enable_vblank() argument 116 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_enable_vblank() [all …]
|
D | mdp5_kms.c | 30 static int mdp5_hw_init(struct msm_kms *kms) in mdp5_hw_init() argument 32 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_hw_init() 93 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(priv->kms)); in mdp5_get_global_state() 153 static void mdp5_prepare_commit(struct msm_kms *kms, struct drm_atomic_state *state) in mdp5_prepare_commit() argument 155 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_prepare_commit() 167 static void mdp5_complete_commit(struct msm_kms *kms, struct drm_atomic_state *state) in mdp5_complete_commit() argument 169 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_complete_commit() 183 static void mdp5_wait_for_crtc_commit_done(struct msm_kms *kms, in mdp5_wait_for_crtc_commit_done() argument 189 static long mdp5_round_pixclk(struct msm_kms *kms, unsigned long rate, in mdp5_round_pixclk() argument 195 static int mdp5_set_split_display(struct msm_kms *kms, in mdp5_set_split_display() argument [all …]
|
D | mdp5_kms.h | 275 void mdp5_irq_preinstall(struct msm_kms *kms); 276 int mdp5_irq_postinstall(struct msm_kms *kms); 277 void mdp5_irq_uninstall(struct msm_kms *kms); 278 irqreturn_t mdp5_irq(struct msm_kms *kms); 279 int mdp5_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc); 280 void mdp5_disable_vblank(struct msm_kms *kms, struct drm_crtc *crtc);
|
D | mdp5_pipe.c | 26 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(priv->kms)); in mdp5_pipe_assign() 136 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(priv->kms)); in mdp5_pipe_release()
|
/Linux-v4.19/drivers/gpu/drm/msm/dsi/ |
D | dsi_manager.c | 243 struct msm_kms *kms = priv->kms; in dsi_mgr_connector_detect() local 261 if (msm_dsi->panel && kms->funcs->set_encoder_mode) { in dsi_mgr_connector_detect() 267 kms->funcs->set_encoder_mode(kms, encoder, cmd_mode); in dsi_mgr_connector_detect() 286 if (kms->funcs->set_split_display) in dsi_mgr_connector_detect() 287 kms->funcs->set_split_display(kms, encoder, in dsi_mgr_connector_detect() 338 struct msm_kms *kms = priv->kms; in dsi_mgr_connector_mode_valid() local 343 actual = kms->funcs->round_pixclk(kms, requested, encoder); in dsi_mgr_connector_mode_valid() 774 struct msm_kms *kms; in msm_dsi_manager_attach_dsi_device() local 789 kms = priv->kms; in msm_dsi_manager_attach_dsi_device() 794 if (encoder && kms->funcs->set_encoder_mode) in msm_dsi_manager_attach_dsi_device() [all …]
|
/Linux-v4.19/drivers/gpu/drm/msm/edp/ |
D | edp_connector.c | 72 struct msm_kms *kms = priv->kms; in edp_connector_mode_valid() local 76 actual = kms->funcs->round_pixclk(kms, in edp_connector_mode_valid()
|
/Linux-v4.19/Documentation/gpu/ |
D | index.rst | 10 drm-kms 11 drm-kms-helpers
|