drm/gem: Use struct dma_buf_map in GEM vmap ops and convert GEM backends
[linux-2.6-block.git] / drivers / gpu / drm / etnaviv / etnaviv_gem_prime.c
index a6d9932a32ae0a8b6e185a23e129659b7187e730..d9bd83203a15e5d4cb10f0875e1067a6afbe4c49 100644 (file)
@@ -22,9 +22,16 @@ struct sg_table *etnaviv_gem_prime_get_sg_table(struct drm_gem_object *obj)
        return drm_prime_pages_to_sg(obj->dev, etnaviv_obj->pages, npages);
 }
 
-void *etnaviv_gem_prime_vmap(struct drm_gem_object *obj)
+int etnaviv_gem_prime_vmap(struct drm_gem_object *obj, struct dma_buf_map *map)
 {
-       return etnaviv_gem_vmap(obj);
+       void *vaddr;
+
+       vaddr = etnaviv_gem_vmap(obj);
+       if (!vaddr)
+               return -ENOMEM;
+       dma_buf_map_set_vaddr(map, vaddr);
+
+       return 0;
 }
 
 int etnaviv_gem_prime_mmap(struct drm_gem_object *obj,