Lines Matching refs:pipeline

93 static void send_pending_event(struct xen_drm_front_drm_pipeline *pipeline)
95 struct drm_crtc *crtc = &pipeline->pipe.crtc;
100 if (pipeline->pending_event)
101 drm_crtc_send_vblank_event(crtc, pipeline->pending_event);
102 pipeline->pending_event = NULL;
110 struct xen_drm_front_drm_pipeline *pipeline =
119 ret = xen_drm_front_mode_set(pipeline, crtc->x, crtc->y,
126 pipeline->conn_connected = false;
134 struct xen_drm_front_drm_pipeline *pipeline =
139 ret = xen_drm_front_mode_set(pipeline, 0, 0, 0, 0, 0,
147 pipeline->conn_connected = true;
150 send_pending_event(pipeline);
153 void xen_drm_front_kms_on_frame_done(struct xen_drm_front_drm_pipeline *pipeline,
161 cancel_delayed_work(&pipeline->pflip_to_worker);
163 send_pending_event(pipeline);
169 struct xen_drm_front_drm_pipeline *pipeline =
175 send_pending_event(pipeline);
194 struct xen_drm_front_drm_pipeline *pipeline =
196 struct xen_drm_front_drm_info *drm_info = pipeline->drm_info;
199 schedule_delayed_work(&pipeline->pflip_to_worker,
203 pipeline->index,
208 pipeline->conn_connected = false;
246 struct xen_drm_front_drm_pipeline *pipeline =
257 WARN_ON(pipeline->pending_event);
262 pipeline->pending_event = event;
267 send_pending_event(pipeline);
280 send_pending_event(pipeline);
289 struct xen_drm_front_drm_pipeline *pipeline =
293 if (mode->hdisplay != pipeline->width)
296 if (mode->vdisplay != pipeline->height)
312 struct xen_drm_front_drm_pipeline *pipeline)
319 pipeline->drm_info = drm_info;
320 pipeline->index = index;
321 pipeline->height = cfg->height;
322 pipeline->width = cfg->width;
324 INIT_DELAYED_WORK(&pipeline->pflip_to_worker, pflip_to_worker);
326 ret = xen_drm_front_conn_init(drm_info, &pipeline->conn);
332 return drm_simple_display_pipe_init(dev, &pipeline->pipe,
335 &pipeline->conn);
354 struct xen_drm_front_drm_pipeline *pipeline =
355 &drm_info->pipeline[i];
357 ret = display_pipe_init(drm_info, i, cfg, pipeline);
374 struct xen_drm_front_drm_pipeline *pipeline =
375 &drm_info->pipeline[i];
377 cancel_delayed_work_sync(&pipeline->pflip_to_worker);
379 send_pending_event(pipeline);