summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Simmons <jsimmons@infradead.org>2013-12-14 13:05:50 -0500
committerJames Simmons <jsimmons@infradead.org>2013-12-14 13:05:50 -0500
commitf3ab97ba782d7a5b245c5be8a8226c22700983a8 (patch)
treed232aa280c8b3ebd16a61a37defe91de179aa0ea
parent558a29fcc23c35eada8d71b94bdb9a4874cd7b7c (diff)
Move the handling of the shmem backend setting from ttm_bo_allocate to the gem functions instead.
-rw-r--r--drivers/gpu/drm/via/init_ttm.c11
-rw-r--r--drivers/gpu/drm/via/ttm_gem.c3
-rw-r--r--drivers/gpu/drm/via/via_drv.c3
-rw-r--r--drivers/gpu/drm/via/via_drv.h1
-rw-r--r--drivers/gpu/drm/via/via_fb.c3
-rw-r--r--drivers/gpu/drm/via/via_h1_cmdbuf.c2
6 files changed, 11 insertions, 12 deletions
diff --git a/drivers/gpu/drm/via/init_ttm.c b/drivers/gpu/drm/via/init_ttm.c
index aab022115d09..1688d4f7ae23 100644
--- a/drivers/gpu/drm/via/init_ttm.c
+++ b/drivers/gpu/drm/via/init_ttm.c
@@ -153,7 +153,6 @@ ttm_bo_allocate(struct ttm_bo_device *bdev,
uint32_t page_align,
bool interruptible,
struct sg_table *sg,
- struct file *persistant_swap_storage,
struct ttm_buffer_object **p_bo)
{
unsigned long acc_size = sizeof(struct ttm_heap);
@@ -174,10 +173,10 @@ ttm_bo_allocate(struct ttm_bo_device *bdev,
ttm_placement_from_domain(bo, &placement, domains, bdev);
ret = ttm_bo_init(bdev, bo, size, origin, &placement,
- page_align >> PAGE_SHIFT,
- interruptible, persistant_swap_storage,
- ttm_bo_dma_acc_size(bdev, size, acc_size),
- sg, ttm_buffer_object_destroy);
+ page_align >> PAGE_SHIFT,
+ interruptible, NULL,
+ ttm_bo_dma_acc_size(bdev, size, acc_size),
+ sg, ttm_buffer_object_destroy);
if (unlikely(ret))
kfree(heap);
else
@@ -237,7 +236,7 @@ ttm_allocate_kernel_buffer(struct ttm_bo_device *bdev, unsigned long size,
{
int ret = ttm_bo_allocate(bdev, size, ttm_bo_type_kernel, domain,
alignment, PAGE_SIZE, false, NULL,
- NULL, &kmap->bo);
+ &kmap->bo);
if (likely(!ret)) {
ret = ttm_bo_pin(kmap->bo, kmap);
if (unlikely(ret)) {
diff --git a/drivers/gpu/drm/via/ttm_gem.c b/drivers/gpu/drm/via/ttm_gem.c
index 4c30b8b8e371..a78c2a01d8e4 100644
--- a/drivers/gpu/drm/via/ttm_gem.c
+++ b/drivers/gpu/drm/via/ttm_gem.c
@@ -83,12 +83,13 @@ ttm_gem_create(struct drm_device *dev, struct ttm_bo_device *bdev, int types,
ret = ttm_bo_allocate(bdev, size, ttm_bo_type_device, types,
byte_align, page_align, interruptible,
- NULL, obj->filp, &bo);
+ NULL, &bo);
if (ret) {
DRM_ERROR("Failed to create buffer object\n");
drm_gem_object_unreference_unlocked(obj);
return ERR_PTR(ret);
}
+ bo->persistent_swap_storage = obj->filp;
obj->driver_private = bo;
return obj;
}
diff --git a/drivers/gpu/drm/via/via_drv.c b/drivers/gpu/drm/via/via_drv.c
index ac17d3d685a9..d425db05f952 100644
--- a/drivers/gpu/drm/via/via_drv.c
+++ b/drivers/gpu/drm/via/via_drv.c
@@ -152,8 +152,7 @@ via_mmio_setup(struct drm_device *dev)
return ret;
ret = ttm_bo_allocate(&dev_priv->bdev, VIA_MMIO_REGSIZE, ttm_bo_type_kernel,
- TTM_PL_FLAG_PRIV0, 1, PAGE_SIZE, false, NULL,
- NULL, &bo);
+ TTM_PL_FLAG_PRIV0, 1, PAGE_SIZE, false, NULL, &bo);
if (ret)
goto err;
diff --git a/drivers/gpu/drm/via/via_drv.h b/drivers/gpu/drm/via/via_drv.h
index 5198a4328174..9e6bc02b1712 100644
--- a/drivers/gpu/drm/via/via_drv.h
+++ b/drivers/gpu/drm/via/via_drv.h
@@ -226,7 +226,6 @@ extern int ttm_bo_allocate(struct ttm_bo_device *bdev, unsigned long size,
enum ttm_bo_type origin, int types,
uint32_t byte_align, uint32_t page_align,
bool interruptible, struct sg_table *sg,
- struct file *persistant_swap_storage,
struct ttm_buffer_object **p_bo);
extern void ttm_placement_from_domain(struct ttm_buffer_object *bo,
struct ttm_placement *placement, u32 domains,
diff --git a/drivers/gpu/drm/via/via_fb.c b/drivers/gpu/drm/via/via_fb.c
index 06ac2df41474..b42e251a5ee0 100644
--- a/drivers/gpu/drm/via/via_fb.c
+++ b/drivers/gpu/drm/via/via_fb.c
@@ -1027,9 +1027,10 @@ via_fb_probe(struct drm_fb_helper *helper,
}
ret = ttm_bo_allocate(&dev_priv->bdev, size, ttm_bo_type_kernel,
TTM_PL_FLAG_VRAM, 1, PAGE_SIZE, false,
- NULL, obj->filp, &kmap->bo);
+ NULL, &kmap->bo);
if (unlikely(ret))
goto out_err;
+ kmap->bo->persistent_swap_storage = obj->filp;
ret = ttm_bo_pin(kmap->bo, kmap);
if (unlikely(ret))
diff --git a/drivers/gpu/drm/via/via_h1_cmdbuf.c b/drivers/gpu/drm/via/via_h1_cmdbuf.c
index e5087f9b0690..e4e06983a54d 100644
--- a/drivers/gpu/drm/via/via_h1_cmdbuf.c
+++ b/drivers/gpu/drm/via/via_h1_cmdbuf.c
@@ -161,7 +161,7 @@ static int via_initialize(struct drm_device *dev,
ret = ttm_bo_allocate(&dev_priv->bdev, init->size, ttm_bo_type_kernel,
TTM_PL_FLAG_TT, VIA_MM_ALIGN_SIZE, PAGE_SIZE,
- false, NULL, NULL, &bo);
+ false, NULL, &bo);
if (!ret) {
ret = ttm_bo_pin(bo, &dev_priv->dmabuf);
if (ret)