Lines Matching refs:kms

20 	struct msm_kms *kms = priv->kms;
27 return msm_framebuffer_prepare(new_state->fb, kms->aspace);
36 static void vblank_get(struct msm_kms *kms, unsigned crtc_mask)
40 for_each_crtc_mask(kms->dev, crtc, crtc_mask) {
47 static void vblank_put(struct msm_kms *kms, unsigned crtc_mask)
51 for_each_crtc_mask(kms->dev, crtc, crtc_mask) {
58 static void msm_atomic_async_commit(struct msm_kms *kms, int crtc_idx)
64 mutex_lock(&kms->commit_lock);
66 if (!(kms->pending_crtc_mask & crtc_mask)) {
67 mutex_unlock(&kms->commit_lock);
71 kms->pending_crtc_mask &= ~crtc_mask;
73 kms->funcs->enable_commit(kms);
75 vblank_get(kms, crtc_mask);
81 kms->funcs->flush_commit(kms, crtc_mask);
82 mutex_unlock(&kms->commit_lock);
88 kms->funcs->wait_flush(kms, crtc_mask);
91 vblank_put(kms, crtc_mask);
93 mutex_lock(&kms->commit_lock);
94 kms->funcs->complete_commit(kms, crtc_mask);
95 mutex_unlock(&kms->commit_lock);
96 kms->funcs->disable_commit(kms);
106 struct msm_drm_private *priv = timer->kms->dev->dev_private;
118 msm_atomic_async_commit(timer->kms, timer->crtc_idx);
122 struct msm_kms *kms, int crtc_idx)
124 timer->kms = kms;
178 struct msm_kms *kms = priv->kms;
181 bool async = kms->funcs->vsync_time &&
186 kms->funcs->enable_commit(kms);
193 kms->funcs->wait_flush(kms, crtc_mask);
196 mutex_lock(&kms->commit_lock);
202 kms->funcs->prepare_commit(kms, state);
213 &kms->pending_timers[drm_crtc_index(async_crtc)];
222 if (!(kms->pending_crtc_mask & crtc_mask)) {
225 kms->pending_crtc_mask |= crtc_mask;
227 vsync_time = kms->funcs->vsync_time(kms, async_crtc);
234 kms->funcs->disable_commit(kms);
235 mutex_unlock(&kms->commit_lock);
254 kms->pending_crtc_mask &= ~crtc_mask;
256 vblank_get(kms, crtc_mask);
262 kms->funcs->flush_commit(kms, crtc_mask);
263 mutex_unlock(&kms->commit_lock);
269 kms->funcs->wait_flush(kms, crtc_mask);
272 vblank_put(kms, crtc_mask);
274 mutex_lock(&kms->commit_lock);
275 kms->funcs->complete_commit(kms, crtc_mask);
276 mutex_unlock(&kms->commit_lock);
277 kms->funcs->disable_commit(kms);