| /linux/drivers/gpu/drm/msm/ |
| H A D | msm_kms.c | 38 struct msm_kms *kms = priv->kms; in msm_irq() local 40 BUG_ON(!kms); in msm_irq() 42 return kms->funcs->irq(kms); in msm_irq() 48 struct msm_kms *kms = priv->kms; in msm_irq_preinstall() local 50 BUG_ON(!kms); in msm_irq_preinstall() 52 kms->funcs->irq_preinstall(kms); in msm_irq_preinstall() 58 struct msm_kms *kms = priv->kms; in msm_irq_postinstall() local 60 BUG_ON(!kms); in msm_irq_postinstall() 62 if (kms->funcs->irq_postinstall) in msm_irq_postinstall() 63 return kms->funcs->irq_postinstall(kms); in msm_irq_postinstall() [all …]
|
| H A D | msm_debugfs.c | 181 if (!priv->kms) in msm_kms_open() 184 ret = mutex_lock_interruptible(&priv->kms->dump_mutex); in msm_kms_open() 188 state = msm_disp_snapshot_state_sync(priv->kms); in msm_kms_open() 190 mutex_unlock(&priv->kms->dump_mutex); in msm_kms_open() 224 if (priv->kms->funcs->debugfs_init) in msm_debugfs_kms_init() 225 priv->kms->funcs->debugfs_init(priv->kms, minor); in msm_debugfs_kms_init() 408 if (priv->kms) in msm_debugfs_init()
|
| H A D | msm_fb.c | 82 struct drm_gpuvm *vm = priv->kms->vm; in msm_framebuffer_prepare() 107 struct drm_gpuvm *vm = priv->kms->vm; in msm_framebuffer_cleanup() 177 struct msm_kms *kms = priv->kms; in msm_framebuffer_init() local 188 format = mdp_get_format(kms, mode_cmd->pixel_format, in msm_framebuffer_init()
|
| H A 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/drivers/gpu/drm/imx/dcss/ |
| H A D | dcss-kms.c | 46 static void dcss_kms_mode_config_init(struct dcss_kms_dev *kms) in dcss_kms_mode_config_init() argument 48 struct drm_mode_config *config = &kms->base.mode_config; in dcss_kms_mode_config_init() 50 drm_mode_config_init(&kms->base); in dcss_kms_mode_config_init() 66 static int dcss_kms_bridge_connector_init(struct dcss_kms_dev *kms) in dcss_kms_bridge_connector_init() argument 68 struct drm_device *ddev = &kms->base; in dcss_kms_bridge_connector_init() 69 struct drm_encoder *encoder = &kms->encoder; in dcss_kms_bridge_connector_init() 70 struct drm_crtc *crtc = (struct drm_crtc *)&kms->crtc; in dcss_kms_bridge_connector_init() 87 ret = drm_encoder_init(&kms->base, encoder, in dcss_kms_bridge_connector_init() 100 kms->connector = drm_bridge_connector_init(ddev, encoder); in dcss_kms_bridge_connector_init() 101 if (IS_ERR(kms->connector)) { in dcss_kms_bridge_connector_init() [all …]
|
| H A D | dcss-drv.c | 18 struct dcss_kms_dev *kms; member 32 return mdrv ? &mdrv->kms->base : NULL; in dcss_drv_dev_to_drm() 64 mdrv->kms = dcss_kms_attach(mdrv->dcss); in dcss_drv_platform_probe() 65 if (IS_ERR(mdrv->kms)) { in dcss_drv_platform_probe() 66 err = PTR_ERR(mdrv->kms); in dcss_drv_platform_probe() 83 dcss_kms_detach(mdrv->kms); in dcss_drv_platform_remove() 91 dcss_kms_shutdown(mdrv->kms); in dcss_drv_platform_shutdown()
|
| H A D | dcss-kms.h | 36 void dcss_kms_detach(struct dcss_kms_dev *kms); 37 void dcss_kms_shutdown(struct dcss_kms_dev *kms);
|
| H A D | Makefile | 2 dcss-ss.o dcss-dpr.o dcss-scaler.o dcss-kms.o dcss-crtc.o \
|
| /linux/drivers/gpu/drm/arm/display/komeda/ |
| H A D | komeda_kms.c | 41 struct komeda_kms_dev *kms = to_kdev(drm); in komeda_kms_irq_handler() local 53 for (i = 0; i < kms->n_crtcs; i++) in komeda_kms_irq_handler() 54 komeda_crtc_handle_event(&kms->crtcs[i], &evts); in komeda_kms_irq_handler() 73 struct komeda_kms_dev *kms = to_kdev(dev); in komeda_kms_atomic_commit_hw_done() local 76 for (i = 0; i < kms->n_crtcs; i++) { in komeda_kms_atomic_commit_hw_done() 77 struct komeda_crtc *kcrtc = &kms->crtcs[i]; in komeda_kms_atomic_commit_hw_done() 256 static void komeda_kms_mode_config_init(struct komeda_kms_dev *kms, in komeda_kms_mode_config_init() argument 259 struct drm_mode_config *config = &kms->base.mode_config; in komeda_kms_mode_config_init() 261 drm_mode_config_init(&kms->base); in komeda_kms_mode_config_init() 263 komeda_kms_setup_crtcs(kms, mdev); in komeda_kms_mode_config_init() [all …]
|
| H A D | komeda_private_obj.c | 48 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 D | komeda_plane.c | 198 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 D | komeda_drv.c | 20 struct komeda_kms_dev *kms; member 35 komeda_kms_detach(mdrv->kms); in komeda_platform_remove() 53 komeda_kms_shutdown(mdrv->kms); in komeda_platform_shutdown() 80 mdrv->kms = komeda_kms_attach(mdrv->mdev); in komeda_platform_probe() 81 if (IS_ERR(mdrv->kms)) { in komeda_platform_probe() 82 err = PTR_ERR(mdrv->kms); in komeda_platform_probe() 87 drm_client_setup(&mdrv->kms->base, NULL); in komeda_platform_probe() 131 res = drm_mode_config_helper_suspend(&mdrv->kms->base); in komeda_pm_suspend() 146 return drm_mode_config_helper_resume(&mdrv->kms->base); in komeda_pm_resume()
|
| H A D | komeda_kms.h | 176 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); 193 void komeda_kms_shutdown(struct komeda_kms_dev *kms);
|
| H A D | komeda_wb_connector.c | 139 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()
|
| /linux/drivers/gpu/drm/msm/disp/mdp4/ |
| H A D | mdp4_irq.c | 35 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 …]
|
| /linux/drivers/gpu/drm/msm/disp/mdp5/ |
| H A D | mdp5_irq.c | 37 void mdp5_irq_preinstall(struct msm_kms *kms) in mdp5_irq_preinstall() argument 39 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_irq_preinstall() 48 int mdp5_irq_postinstall(struct msm_kms *kms) in mdp5_irq_postinstall() argument 50 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp5_irq_postinstall() 68 void mdp5_irq_uninstall(struct msm_kms *kms) in mdp5_irq_uninstall() argument 70 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_irq_uninstall() 78 irqreturn_t mdp5_irq(struct msm_kms *kms) in mdp5_irq() argument 80 struct mdp_kms *mdp_kms = to_mdp_kms(kms); in mdp5_irq() 101 int mdp5_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc) in mdp5_enable_vblank() argument 103 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(kms)); in mdp5_enable_vblank() [all …]
|
| H A D | mdp5_kms.h | 265 void mdp5_irq_preinstall(struct msm_kms *kms); 266 int mdp5_irq_postinstall(struct msm_kms *kms); 267 void mdp5_irq_uninstall(struct msm_kms *kms); 268 irqreturn_t mdp5_irq(struct msm_kms *kms); 269 int mdp5_enable_vblank(struct msm_kms *kms, struct drm_crtc *crtc); 270 void mdp5_disable_vblank(struct msm_kms *kms, struct drm_crtc *crtc);
|
| H A D | mdp5_pipe.c | 15 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(priv->kms)); in mdp5_pipe_assign() 125 struct mdp5_kms *mdp5_kms = to_mdp5_kms(to_mdp_kms(priv->kms)); in mdp5_pipe_release()
|
| /linux/drivers/gpu/drm/msm/disp/dpu1/ |
| H A D | dpu_kms.c | 58 static int dpu_kms_hw_init(struct msm_kms *kms); 66 struct dpu_kms *kms = s->private; in _dpu_danger_signal_status() local 69 if (!kms->hw_mdp) { in _dpu_danger_signal_status() 76 pm_runtime_get_sync(&kms->pdev->dev); in _dpu_danger_signal_status() 79 if (kms->hw_mdp->ops.get_danger_status) in _dpu_danger_signal_status() 80 kms->hw_mdp->ops.get_danger_status(kms->hw_mdp, in _dpu_danger_signal_status() 84 if (kms->hw_mdp->ops.get_safe_status) in _dpu_danger_signal_status() 85 kms->hw_mdp->ops.get_safe_status(kms->hw_mdp, in _dpu_danger_signal_status() 88 pm_runtime_put_sync(&kms->pdev->dev); in _dpu_danger_signal_status() 115 struct dpu_kms *kms = file->private_data; in _dpu_plane_danger_read() local [all …]
|
| H A D | dpu_plane.c | 103 return to_dpu_kms(priv->kms); in _dpu_plane_get_kms() 633 fmt = mdp_get_format(priv->kms, DRM_FORMAT_ABGR8888, 0); in _dpu_plane_color_fill() 733 struct dpu_kms *kms = _dpu_plane_get_kms(&pdpu->base); in dpu_plane_atomic_check_pipe() local 807 if (_dpu_plane_calc_clk(mode, pipe_cfg) > kms->perf.max_core_clk_rate) { in dpu_plane_atomic_check_pipe() 824 struct dpu_kms *kms = _dpu_plane_get_kms(&pdpu->base); in dpu_plane_atomic_check_nosspp() local 825 u64 max_mdp_clk_rate = kms->perf.max_core_clk_rate; in dpu_plane_atomic_check_nosspp() 1770 struct dpu_kms *kms = to_dpu_kms(priv->kms); in dpu_plane_init_common() local 1785 pdpu->catalog = kms->catalog; in dpu_plane_init_common() 1827 struct dpu_kms *kms = to_dpu_kms(priv->kms); in dpu_plane_init() local 1831 pipe_hw = dpu_rm_get_sspp(&kms->rm, pipe); in dpu_plane_init() [all …]
|
| /linux/drivers/gpu/drm/msm/disp/ |
| H A D | msm_disp_snapshot_util.c | 122 struct msm_kms *kms; in msm_disp_snapshot_capture_state() local 127 kms = priv->kms; in msm_disp_snapshot_capture_state() 129 for (i = 0; i < ARRAY_SIZE(kms->dp); i++) { in msm_disp_snapshot_capture_state() 130 if (!kms->dp[i]) in msm_disp_snapshot_capture_state() 133 msm_dp_snapshot(disp_state, kms->dp[i]); in msm_disp_snapshot_capture_state() 136 for (i = 0; i < ARRAY_SIZE(kms->dsi); i++) { in msm_disp_snapshot_capture_state() 137 if (!kms->dsi[i]) in msm_disp_snapshot_capture_state() 140 msm_dsi_snapshot(disp_state, kms->dsi[i]); in msm_disp_snapshot_capture_state() 143 if (kms->funcs->snapshot) in msm_disp_snapshot_capture_state() 144 kms->funcs->snapshot(disp_state, kms); in msm_disp_snapshot_capture_state()
|
| H A D | msm_disp_snapshot.h | 97 struct msm_disp_state *msm_disp_snapshot_state_sync(struct msm_kms *kms);
|
| /linux/Documentation/gpu/ |
| H A D | index.rst | 10 drm-kms 11 drm-kms-helpers
|
| /linux/drivers/gpu/drm/msm/hdmi/ |
| H A D | hdmi_bridge.c | 430 struct msm_kms *kms = priv->kms; in msm_hdmi_bridge_tmds_char_rate_valid() local 437 if (kms->funcs->round_pixclk) in msm_hdmi_bridge_tmds_char_rate_valid() 438 actual = kms->funcs->round_pixclk(kms, in msm_hdmi_bridge_tmds_char_rate_valid()
|
| /linux/drivers/staging/sm750fb/ |
| H A D | TODO | 6 - must be ported to the atomic kms framework in the drm subsystem (which will
|