Lines Matching defs:obj
58 struct drm_i915_gem_object *obj)
60 struct drm_i915_private *dev_priv = to_i915(obj->base.dev);
69 fb_info = (struct intel_vgpu_fb_info *)obj->gvt_info;
73 vgpu = fb_info->obj->vgpu;
81 page_num = obj->base.size >> PAGE_SHIFT;
103 __i915_gem_object_set_pages(obj, st, PAGE_SIZE);
121 static void vgpu_gem_put_pages(struct drm_i915_gem_object *obj,
126 if (obj->base.dma_buf) {
127 struct intel_vgpu_fb_info *fb_info = obj->gvt_info;
128 struct intel_vgpu_dmabuf_obj *obj = fb_info->obj;
129 struct intel_vgpu *vgpu = obj->vgpu;
143 struct intel_vgpu_dmabuf_obj *obj =
145 struct intel_vgpu *vgpu = obj->vgpu;
153 if (dmabuf_obj == obj) {
165 kfree(obj->info);
166 kfree(obj);
171 static inline void dmabuf_obj_get(struct intel_vgpu_dmabuf_obj *obj)
173 kref_get(&obj->kref);
176 static inline void dmabuf_obj_put(struct intel_vgpu_dmabuf_obj *obj)
178 kref_put(&obj->kref, dmabuf_gem_object_free);
185 struct intel_vgpu_dmabuf_obj *obj = fb_info->obj;
186 struct intel_vgpu *vgpu = obj->vgpu;
191 dmabuf_obj_put(obj);
196 dmabuf_obj_put(obj);
213 struct drm_i915_gem_object *obj;
215 obj = i915_gem_object_alloc();
216 if (obj == NULL)
219 drm_gem_private_object_init(dev, &obj->base,
221 i915_gem_object_init(obj, &intel_vgpu_gem_ops, &lock_class);
222 i915_gem_object_set_readonly(obj);
224 obj->read_domains = I915_GEM_DOMAIN_GTT;
225 obj->write_domain = 0;
247 obj->tiling_and_stride = tiling_mode | stride;
249 obj->tiling_and_stride = info->drm_format_mod ?
253 return obj;
481 ((struct intel_vgpu_fb_info *)dmabuf_obj->info)->obj = dmabuf_obj;
529 struct drm_i915_gem_object *obj;
543 obj = vgpu_create_gem(dev, dmabuf_obj->info);
544 if (obj == NULL) {
545 gvt_vgpu_err("create gvt gem obj failed\n");
550 obj->gvt_info = dmabuf_obj->info;
552 dmabuf = i915_gem_prime_export(&obj->base, DRM_CLOEXEC | DRM_RDWR);
581 kref_read(&obj->base.refcount));
583 i915_gem_object_put(obj);
590 i915_gem_object_put(obj);