Lines Matching refs:sou

99 static void vmw_sou_destroy(struct vmw_screen_object_unit *sou)  in vmw_sou_destroy()  argument
101 vmw_du_cleanup(&sou->base); in vmw_sou_destroy()
102 kfree(sou); in vmw_sou_destroy()
119 struct vmw_screen_object_unit *sou, in vmw_sou_fifo_create() argument
132 BUG_ON(!sou->buffer); in vmw_sou_fifo_create()
142 cmd->obj.id = sou->base.unit; in vmw_sou_fifo_create()
144 (sou->base.unit == 0 ? SVGA_SCREEN_IS_PRIMARY : 0); in vmw_sou_fifo_create()
149 sou->base.set_gui_x = cmd->obj.root.x; in vmw_sou_fifo_create()
150 sou->base.set_gui_y = cmd->obj.root.y; in vmw_sou_fifo_create()
153 vmw_bo_get_guest_ptr(&sou->buffer->base, &cmd->obj.backingStore.ptr); in vmw_sou_fifo_create()
158 sou->defined = true; in vmw_sou_fifo_create()
167 struct vmw_screen_object_unit *sou) in vmw_sou_fifo_destroy() argument
180 if (unlikely(!sou->defined)) in vmw_sou_fifo_destroy()
190 cmd->body.screenId = sou->base.unit; in vmw_sou_fifo_destroy()
199 sou->defined = false; in vmw_sou_fifo_destroy()
215 struct vmw_screen_object_unit *sou; in vmw_sou_crtc_mode_set_nofb() local
222 sou = vmw_crtc_to_sou(crtc); in vmw_sou_crtc_mode_set_nofb()
230 if (sou->defined) { in vmw_sou_crtc_mode_set_nofb()
231 ret = vmw_sou_fifo_destroy(dev_priv, sou); in vmw_sou_crtc_mode_set_nofb()
243 sou->buffer = vps->bo; in vmw_sou_crtc_mode_set_nofb()
244 sou->buffer_size = vps->bo_size; in vmw_sou_crtc_mode_set_nofb()
246 conn_state = sou->base.connector.state; in vmw_sou_crtc_mode_set_nofb()
252 ret = vmw_sou_fifo_create(dev_priv, sou, x, y, &crtc->mode); in vmw_sou_crtc_mode_set_nofb()
258 sou->buffer = NULL; in vmw_sou_crtc_mode_set_nofb()
259 sou->buffer_size = 0; in vmw_sou_crtc_mode_set_nofb()
295 struct vmw_screen_object_unit *sou; in vmw_sou_crtc_atomic_disable() local
304 sou = vmw_crtc_to_sou(crtc); in vmw_sou_crtc_atomic_disable()
307 if (sou->defined) { in vmw_sou_crtc_atomic_disable()
308 ret = vmw_sou_fifo_destroy(dev_priv, sou); in vmw_sou_crtc_atomic_disable()
831 struct vmw_screen_object_unit *sou; in vmw_sou_init() local
839 sou = kzalloc(sizeof(*sou), GFP_KERNEL); in vmw_sou_init()
840 if (!sou) in vmw_sou_init()
843 sou->base.unit = unit; in vmw_sou_init()
844 crtc = &sou->base.crtc; in vmw_sou_init()
845 encoder = &sou->base.encoder; in vmw_sou_init()
846 connector = &sou->base.connector; in vmw_sou_init()
847 primary = &sou->base.primary; in vmw_sou_init()
848 cursor = &sou->base.cursor; in vmw_sou_init()
850 sou->base.pref_active = (unit == 0); in vmw_sou_init()
851 sou->base.pref_width = dev_priv->initial_width; in vmw_sou_init()
852 sou->base.pref_height = dev_priv->initial_height; in vmw_sou_init()
853 sou->base.pref_mode = NULL; in vmw_sou_init()
859 sou->base.is_implicit = false; in vmw_sou_init()
862 ret = drm_universal_plane_init(dev, &sou->base.primary, in vmw_sou_init()
876 ret = drm_universal_plane_init(dev, &sou->base.cursor, in vmw_sou_init()
883 drm_plane_cleanup(&sou->base.primary); in vmw_sou_init()
916 ret = drm_crtc_init_with_planes(dev, crtc, &sou->base.primary, in vmw_sou_init()
917 &sou->base.cursor, in vmw_sou_init()
943 kfree(sou); in vmw_sou_init()