Lines Matching refs:dev_priv

74 static int vmw_ldu_commit_list(struct vmw_private *dev_priv)  in vmw_ldu_commit_list()  argument
76 struct vmw_legacy_display *lds = dev_priv->ldu_priv; in vmw_ldu_commit_list()
86 if (!(dev_priv->capabilities & SVGA_CAP_DISPLAY_TOPOLOGY)) { in vmw_ldu_commit_list()
99 return vmw_kms_write_svga(dev_priv, w, h, fb->pitches[0], in vmw_ldu_commit_list()
107 vmw_kms_write_svga(dev_priv, fb->width, fb->height, fb->pitches[0], in vmw_ldu_commit_list()
112 vmw_write(dev_priv, SVGA_REG_NUM_GUEST_DISPLAYS, in vmw_ldu_commit_list()
119 vmw_write(dev_priv, SVGA_REG_DISPLAY_ID, i); in vmw_ldu_commit_list()
120 vmw_write(dev_priv, SVGA_REG_DISPLAY_IS_PRIMARY, !i); in vmw_ldu_commit_list()
121 vmw_write(dev_priv, SVGA_REG_DISPLAY_POSITION_X, crtc->x); in vmw_ldu_commit_list()
122 vmw_write(dev_priv, SVGA_REG_DISPLAY_POSITION_Y, crtc->y); in vmw_ldu_commit_list()
123 vmw_write(dev_priv, SVGA_REG_DISPLAY_WIDTH, crtc->mode.hdisplay); in vmw_ldu_commit_list()
124 vmw_write(dev_priv, SVGA_REG_DISPLAY_HEIGHT, crtc->mode.vdisplay); in vmw_ldu_commit_list()
125 vmw_write(dev_priv, SVGA_REG_DISPLAY_ID, SVGA_ID_INVALID); in vmw_ldu_commit_list()
142 ret = vmw_cursor_update_dmabuf(dev_priv, in vmw_ldu_commit_list()
212 struct vmw_private *dev_priv; in vmw_ldu_crtc_set_config() local
231 dev_priv = vmw_priv(crtc->dev); in vmw_ldu_crtc_set_config()
246 if (dev_priv->ldu_priv->fb && vfb && in vmw_ldu_crtc_set_config()
247 !(dev_priv->ldu_priv->num_active == 1 && in vmw_ldu_crtc_set_config()
249 dev_priv->ldu_priv->fb != vfb) { in vmw_ldu_crtc_set_config()
266 vmw_ldu_del_active(dev_priv, ldu); in vmw_ldu_crtc_set_config()
268 return vmw_ldu_commit_list(dev_priv); in vmw_ldu_crtc_set_config()
282 vmw_fb_off(dev_priv); in vmw_ldu_crtc_set_config()
292 vmw_ldu_add_active(dev_priv, ldu, vfb); in vmw_ldu_crtc_set_config()
294 return vmw_ldu_commit_list(dev_priv); in vmw_ldu_crtc_set_config()
340 static int vmw_ldu_init(struct vmw_private *dev_priv, unsigned unit) in vmw_ldu_init() argument
343 struct drm_device *dev = dev_priv->dev; in vmw_ldu_init()
360 ldu->base.pref_width = dev_priv->initial_width; in vmw_ldu_init()
361 ldu->base.pref_height = dev_priv->initial_height; in vmw_ldu_init()
388 int vmw_kms_init_legacy_display_system(struct vmw_private *dev_priv) in vmw_kms_init_legacy_display_system() argument
390 struct drm_device *dev = dev_priv->dev; in vmw_kms_init_legacy_display_system()
393 if (dev_priv->ldu_priv) { in vmw_kms_init_legacy_display_system()
398 dev_priv->ldu_priv = kmalloc(sizeof(*dev_priv->ldu_priv), GFP_KERNEL); in vmw_kms_init_legacy_display_system()
399 if (!dev_priv->ldu_priv) in vmw_kms_init_legacy_display_system()
402 INIT_LIST_HEAD(&dev_priv->ldu_priv->active); in vmw_kms_init_legacy_display_system()
403 dev_priv->ldu_priv->num_active = 0; in vmw_kms_init_legacy_display_system()
404 dev_priv->ldu_priv->last_num_active = 0; in vmw_kms_init_legacy_display_system()
405 dev_priv->ldu_priv->fb = NULL; in vmw_kms_init_legacy_display_system()
408 if (dev_priv->capabilities & SVGA_CAP_MULTIMON) in vmw_kms_init_legacy_display_system()
419 if (dev_priv->capabilities & SVGA_CAP_MULTIMON) in vmw_kms_init_legacy_display_system()
421 vmw_ldu_init(dev_priv, i); in vmw_kms_init_legacy_display_system()
423 vmw_ldu_init(dev_priv, 0); in vmw_kms_init_legacy_display_system()
430 kfree(dev_priv->ldu_priv); in vmw_kms_init_legacy_display_system()
431 dev_priv->ldu_priv = NULL; in vmw_kms_init_legacy_display_system()
435 int vmw_kms_close_legacy_display_system(struct vmw_private *dev_priv) in vmw_kms_close_legacy_display_system() argument
437 struct drm_device *dev = dev_priv->dev; in vmw_kms_close_legacy_display_system()
439 if (!dev_priv->ldu_priv) in vmw_kms_close_legacy_display_system()
444 BUG_ON(!list_empty(&dev_priv->ldu_priv->active)); in vmw_kms_close_legacy_display_system()
446 kfree(dev_priv->ldu_priv); in vmw_kms_close_legacy_display_system()