Lines Matching refs:dev_priv

88 static int vmw_overlay_send_put(struct vmw_private *dev_priv,
95 bool have_so = (dev_priv->active_display_unit == vmw_du_screen_object);
119 cmds = VMW_CMD_RESERVE(dev_priv, fifo_size);
166 vmw_cmd_commit(dev_priv, fifo_size);
177 static int vmw_overlay_send_stop(struct vmw_private *dev_priv,
189 cmds = VMW_CMD_RESERVE(dev_priv, sizeof(*cmds));
193 ret = vmw_fallback_wait(dev_priv, false, true, 0,
208 vmw_cmd_commit(dev_priv, sizeof(*cmds));
219 static int vmw_overlay_move_buffer(struct vmw_private *dev_priv,
224 return vmw_bo_unpin(dev_priv, buf, inter);
226 if (dev_priv->active_display_unit == vmw_du_legacy)
227 return vmw_bo_pin_in_vram(dev_priv, buf, inter);
229 return vmw_bo_pin_in_vram_or_gmr(dev_priv, buf, inter);
244 static int vmw_overlay_stop(struct vmw_private *dev_priv,
248 struct vmw_overlay *overlay = dev_priv->overlay_priv;
258 ret = vmw_overlay_send_stop(dev_priv, stream_id,
264 ret = vmw_overlay_move_buffer(dev_priv, stream->buf, false,
291 static int vmw_overlay_update_stream(struct vmw_private *dev_priv,
296 struct vmw_overlay *overlay = dev_priv->overlay_priv;
307 ret = vmw_overlay_stop(dev_priv, arg->stream_id,
315 ret = vmw_overlay_send_put(dev_priv, buf, arg, interruptible);
327 ret = vmw_overlay_move_buffer(dev_priv, buf, true, interruptible);
331 ret = vmw_overlay_send_put(dev_priv, buf, arg, interruptible);
336 BUG_ON(vmw_overlay_move_buffer(dev_priv, buf, false, false)
357 int vmw_overlay_resume_all(struct vmw_private *dev_priv)
359 struct vmw_overlay *overlay = dev_priv->overlay_priv;
372 ret = vmw_overlay_update_stream(dev_priv, stream->buf,
391 int vmw_overlay_pause_all(struct vmw_private *dev_priv)
393 struct vmw_overlay *overlay = dev_priv->overlay_priv;
405 ret = vmw_overlay_stop(dev_priv, i, true, false);
415 static bool vmw_overlay_available(const struct vmw_private *dev_priv)
417 return (dev_priv->overlay_priv != NULL &&
418 ((vmw_fifo_caps(dev_priv) & VMW_OVERLAY_CAP_MASK) ==
426 struct vmw_private *dev_priv = vmw_priv(dev);
427 struct vmw_overlay *overlay = dev_priv->overlay_priv;
434 if (!vmw_overlay_available(dev_priv))
437 ret = vmw_user_stream_lookup(dev_priv, tfile, &arg->stream_id, &res);
444 ret = vmw_overlay_stop(dev_priv, arg->stream_id, false, true);
452 ret = vmw_overlay_update_stream(dev_priv, buf, arg, true);
463 int vmw_overlay_num_overlays(struct vmw_private *dev_priv)
465 if (!vmw_overlay_available(dev_priv))
471 int vmw_overlay_num_free_overlays(struct vmw_private *dev_priv)
473 struct vmw_overlay *overlay = dev_priv->overlay_priv;
476 if (!vmw_overlay_available(dev_priv))
490 int vmw_overlay_claim(struct vmw_private *dev_priv, uint32_t *out)
492 struct vmw_overlay *overlay = dev_priv->overlay_priv;
515 int vmw_overlay_unref(struct vmw_private *dev_priv, uint32_t stream_id)
517 struct vmw_overlay *overlay = dev_priv->overlay_priv;
527 vmw_overlay_stop(dev_priv, stream_id, false, false);
534 int vmw_overlay_init(struct vmw_private *dev_priv)
539 if (dev_priv->overlay_priv)
553 dev_priv->overlay_priv = overlay;
558 int vmw_overlay_close(struct vmw_private *dev_priv)
560 struct vmw_overlay *overlay = dev_priv->overlay_priv;
570 vmw_overlay_stop(dev_priv, i, false, false);
576 dev_priv->overlay_priv = NULL;