OSDN Git Service

minigbm: use drv_array for mappings
[android-x86/external-minigbm.git] / i915.c
diff --git a/i915.c b/i915.c
index e25b068..965f62d 100644 (file)
--- a/i915.c
+++ b/i915.c
 #define I915_CACHELINE_SIZE 64
 #define I915_CACHELINE_MASK (I915_CACHELINE_SIZE - 1)
 
-static const uint32_t render_target_formats[] = { DRM_FORMAT_ABGR8888, DRM_FORMAT_ARGB1555,
-                                                 DRM_FORMAT_ARGB8888, DRM_FORMAT_RGB565,
+static const uint32_t render_target_formats[] = { DRM_FORMAT_ABGR8888,    DRM_FORMAT_ARGB1555,
+                                                 DRM_FORMAT_ARGB8888,    DRM_FORMAT_RGB565,
                                                  DRM_FORMAT_XBGR2101010, DRM_FORMAT_XBGR8888,
-                                                 DRM_FORMAT_XRGB1555, DRM_FORMAT_XRGB2101010,
+                                                 DRM_FORMAT_XRGB1555,    DRM_FORMAT_XRGB2101010,
                                                  DRM_FORMAT_XRGB8888 };
 
 static const uint32_t tileable_texture_source_formats[] = { DRM_FORMAT_GR88, DRM_FORMAT_NV12,
@@ -445,7 +445,7 @@ static int i915_bo_import(struct bo *bo, struct drv_import_fd_data *data)
        return 0;
 }
 
-static void *i915_bo_map(struct bo *bo, struct map_info *data, size_t plane, uint32_t map_flags)
+static void *i915_bo_map(struct bo *bo, struct mapping *mapping, size_t plane, uint32_t map_flags)
 {
        int ret;
        void *addr;
@@ -489,11 +489,11 @@ static void *i915_bo_map(struct bo *bo, struct map_info *data, size_t plane, uin
                return addr;
        }
 
-       data->length = bo->total_size;
+       mapping->vma->length = bo->total_size;
        return addr;
 }
 
-static int i915_bo_invalidate(struct bo *bo, struct map_info *data)
+static int i915_bo_invalidate(struct bo *bo, struct mapping *mapping)
 {
        int ret;
        struct drm_i915_gem_set_domain set_domain;
@@ -502,11 +502,11 @@ static int i915_bo_invalidate(struct bo *bo, struct map_info *data)
        set_domain.handle = bo->handles[0].u32;
        if (bo->tiling == I915_TILING_NONE) {
                set_domain.read_domains = I915_GEM_DOMAIN_CPU;
-               if (data->map_flags & BO_MAP_WRITE)
+               if (mapping->vma->map_flags & BO_MAP_WRITE)
                        set_domain.write_domain = I915_GEM_DOMAIN_CPU;
        } else {
                set_domain.read_domains = I915_GEM_DOMAIN_GTT;
-               if (data->map_flags & BO_MAP_WRITE)
+               if (mapping->vma->map_flags & BO_MAP_WRITE)
                        set_domain.write_domain = I915_GEM_DOMAIN_GTT;
        }
 
@@ -519,11 +519,11 @@ static int i915_bo_invalidate(struct bo *bo, struct map_info *data)
        return 0;
 }
 
-static int i915_bo_flush(struct bo *bo, struct map_info *data)
+static int i915_bo_flush(struct bo *bo, struct mapping *mapping)
 {
        struct i915_device *i915 = bo->drv->priv;
        if (!i915->has_llc && bo->tiling == I915_TILING_NONE)
-               i915_clflush(data->addr, data->length);
+               i915_clflush(mapping->vma->addr, mapping->vma->length);
 
        return 0;
 }
@@ -547,7 +547,7 @@ static uint32_t i915_resolve_format(uint32_t format, uint64_t use_flags)
        }
 }
 
-struct backend backend_i915 = {
+const struct backend backend_i915 = {
        .name = "i915",
        .init = i915_init,
        .close = i915_close,