diff options
author | Joonyoung Shim <jy0922.shim@samsung.com> | 2014-03-15 03:30:28 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2014-03-18 05:20:25 -0400 |
commit | 7550e3668ce1414f6c7edbe8b13c1169a1aa5960 (patch) | |
tree | fbaede90c27316447eb0299abb0f9e071967c1ad | |
parent | d1583c9997cf5e7e8ceef35b6f264262cda5f948 (diff) |
drm/cma: remove to make sg_table when gem cma is created
The sg_table made when gem cma is created isn't used anywhere. The sgt
of struct drm_gem_cma_object will have only sg_tabel imported.
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | drivers/gpu/drm/drm_gem_cma_helper.c | 19 |
1 files changed, 0 insertions, 19 deletions
diff --git a/drivers/gpu/drm/drm_gem_cma_helper.c b/drivers/gpu/drm/drm_gem_cma_helper.c index 6b51bf90df0e..2c07cb9550ef 100644 --- a/drivers/gpu/drm/drm_gem_cma_helper.c +++ b/drivers/gpu/drm/drm_gem_cma_helper.c | |||
@@ -79,7 +79,6 @@ struct drm_gem_cma_object *drm_gem_cma_create(struct drm_device *drm, | |||
79 | unsigned int size) | 79 | unsigned int size) |
80 | { | 80 | { |
81 | struct drm_gem_cma_object *cma_obj; | 81 | struct drm_gem_cma_object *cma_obj; |
82 | struct sg_table *sgt = NULL; | ||
83 | int ret; | 82 | int ret; |
84 | 83 | ||
85 | size = round_up(size, PAGE_SIZE); | 84 | size = round_up(size, PAGE_SIZE); |
@@ -97,23 +96,9 @@ struct drm_gem_cma_object *drm_gem_cma_create(struct drm_device *drm, | |||
97 | goto error; | 96 | goto error; |
98 | } | 97 | } |
99 | 98 | ||
100 | sgt = kzalloc(sizeof(*cma_obj->sgt), GFP_KERNEL); | ||
101 | if (sgt == NULL) { | ||
102 | ret = -ENOMEM; | ||
103 | goto error; | ||
104 | } | ||
105 | |||
106 | ret = dma_get_sgtable(drm->dev, sgt, cma_obj->vaddr, | ||
107 | cma_obj->paddr, size); | ||
108 | if (ret < 0) | ||
109 | goto error; | ||
110 | |||
111 | cma_obj->sgt = sgt; | ||
112 | |||
113 | return cma_obj; | 99 | return cma_obj; |
114 | 100 | ||
115 | error: | 101 | error: |
116 | kfree(sgt); | ||
117 | drm_gem_cma_free_object(&cma_obj->base); | 102 | drm_gem_cma_free_object(&cma_obj->base); |
118 | return ERR_PTR(ret); | 103 | return ERR_PTR(ret); |
119 | } | 104 | } |
@@ -175,10 +160,6 @@ void drm_gem_cma_free_object(struct drm_gem_object *gem_obj) | |||
175 | if (cma_obj->vaddr) { | 160 | if (cma_obj->vaddr) { |
176 | dma_free_writecombine(gem_obj->dev->dev, cma_obj->base.size, | 161 | dma_free_writecombine(gem_obj->dev->dev, cma_obj->base.size, |
177 | cma_obj->vaddr, cma_obj->paddr); | 162 | cma_obj->vaddr, cma_obj->paddr); |
178 | if (cma_obj->sgt) { | ||
179 | sg_free_table(cma_obj->sgt); | ||
180 | kfree(cma_obj->sgt); | ||
181 | } | ||
182 | } else if (gem_obj->import_attach) { | 163 | } else if (gem_obj->import_attach) { |
183 | drm_prime_gem_destroy(gem_obj, cma_obj->sgt); | 164 | drm_prime_gem_destroy(gem_obj, cma_obj->sgt); |
184 | } | 165 | } |