Lines Matching refs:kms
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()
71 struct msm_kms *kms = priv->kms; in msm_irq_install() local
83 kms->irq_requested = true; in msm_irq_install()
97 struct msm_kms *kms = priv->kms; in msm_irq_uninstall() local
99 kms->funcs->irq_uninstall(kms); in msm_irq_uninstall()
100 if (kms->irq_requested) in msm_irq_uninstall()
101 free_irq(kms->irq, dev); in msm_irq_uninstall()
116 struct msm_kms *kms = priv->kms; in vblank_ctrl_worker() local
119 kms->funcs->enable_vblank(kms, vbl_work->crtc); in vblank_ctrl_worker()
121 kms->funcs->disable_vblank(kms, vbl_work->crtc); in vblank_ctrl_worker()
141 queue_work(priv->kms->wq, &vbl_work->work); in vblank_ctrl_queue_work()
150 struct msm_kms *kms = priv->kms; in msm_crtc_enable_vblank() local
151 if (!kms) in msm_crtc_enable_vblank()
161 struct msm_kms *kms = priv->kms; in msm_crtc_disable_vblank() local
162 if (!kms) in msm_crtc_disable_vblank()
170 struct msm_kms *kms = arg; in msm_kms_fault_handler() local
172 if (atomic_read(&kms->fault_snapshot_capture) == 0) { in msm_kms_fault_handler()
173 msm_disp_snapshot_state(kms->dev); in msm_kms_fault_handler()
174 atomic_inc(&kms->fault_snapshot_capture); in msm_kms_fault_handler()
187 struct msm_kms *kms = priv->kms; in msm_kms_init_vm() local
216 msm_mmu_set_fault_handler(to_msm_vm(vm)->mmu, kms, msm_kms_fault_handler); in msm_kms_init_vm()
235 struct msm_kms *kms = priv->kms; in msm_drm_kms_uninit() local
238 BUG_ON(!kms); in msm_drm_kms_uninit()
245 flush_workqueue(kms->wq); in msm_drm_kms_uninit()
249 if (kms->event_thread[i].worker) in msm_drm_kms_uninit()
250 kthread_destroy_worker(kms->event_thread[i].worker); in msm_drm_kms_uninit()
261 if (kms && kms->funcs) in msm_drm_kms_uninit()
262 kms->funcs->destroy(kms); in msm_drm_kms_uninit()
269 struct msm_kms *kms = priv->kms; in msm_drm_kms_init() local
290 kms->dev = ddev; in msm_drm_kms_init()
291 ret = kms->funcs->hw_init(kms); in msm_drm_kms_init()
303 ev_thread = &kms->event_thread[drm_crtc_index(crtc)]; in msm_drm_kms_init()
323 ret = msm_irq_install(ddev, kms->irq); in msm_drm_kms_init()
347 if (!priv || !priv->kms) in msm_kms_pm_prepare()
358 if (!priv || !priv->kms) in msm_kms_pm_complete()
376 if (drm && drm->registered && priv->kms) in msm_kms_shutdown()