gallium: add FMA and DFMA opcodes (v3)
[mesa.git] / src / gallium / drivers / i915 / i915_resource.c
index 499233ceb9be1d5f2e86c7299a2c68846e3d5574..627ed2b4445156a87d2d3a857a3a3ed26a811bb2 100644 (file)
@@ -7,13 +7,17 @@
 
 static struct pipe_resource *
 i915_resource_create(struct pipe_screen *screen,
-                    const struct pipe_resource *template)
+                     const struct pipe_resource *template)
 {
    if (template->target == PIPE_BUFFER)
       return i915_buffer_create(screen, template);
    else
-      return i915_texture_create(screen, template);
-
+   {
+      if (!(template->bind & PIPE_BIND_LINEAR))
+         return i915_texture_create(screen, template, FALSE);
+      else
+         return i915_texture_create(screen, template, TRUE);
+   }
 }
 
 static struct pipe_resource *
@@ -31,12 +35,9 @@ i915_resource_from_handle(struct pipe_screen * screen,
 void
 i915_init_resource_functions(struct i915_context *i915 )
 {
-   i915->base.is_resource_referenced = u_default_is_resource_referenced;
-   i915->base.get_transfer = u_get_transfer_vtbl;
    i915->base.transfer_map = u_transfer_map_vtbl;
    i915->base.transfer_flush_region = u_transfer_flush_region_vtbl;
    i915->base.transfer_unmap = u_transfer_unmap_vtbl;
-   i915->base.transfer_destroy = u_transfer_destroy_vtbl;
    i915->base.transfer_inline_write = u_transfer_inline_write_vtbl;
 }
 
@@ -47,5 +48,4 @@ i915_init_screen_resource_functions(struct i915_screen *is)
    is->base.resource_from_handle = i915_resource_from_handle;
    is->base.resource_get_handle = u_resource_get_handle_vtbl;
    is->base.resource_destroy = u_resource_destroy_vtbl;
-   is->base.user_buffer_create = i915_user_buffer_create;
 }