Revert "drm/rockchip: gem: add dmabuf sync partial to dma_buf_ops"

This reverts commit 64097b127c.

Change-Id: I18917edcda996538b09da55d999dcb76544fdafb
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
This commit is contained in:
Jianqun Xu
2023-02-13 16:33:31 +08:00
committed by Tao Huang
parent 002ff3ed95
commit a2e98940ee
3 changed files with 0 additions and 106 deletions

View File

@@ -1666,26 +1666,6 @@ static int rockchip_drm_gem_dmabuf_end_cpu_access(struct dma_buf *dma_buf,
return rockchip_gem_prime_end_cpu_access(obj, dir);
}
static int rockchip_drm_gem_begin_cpu_access_partial(
struct dma_buf *dma_buf,
enum dma_data_direction dir,
unsigned int offset, unsigned int len)
{
struct drm_gem_object *obj = dma_buf->priv;
return rockchip_gem_prime_begin_cpu_access_partial(obj, dir, offset, len);
}
static int rockchip_drm_gem_end_cpu_access_partial(
struct dma_buf *dma_buf,
enum dma_data_direction dir,
unsigned int offset, unsigned int len)
{
struct drm_gem_object *obj = dma_buf->priv;
return rockchip_gem_prime_end_cpu_access_partial(obj, dir, offset, len);
}
static const struct dma_buf_ops rockchip_drm_gem_prime_dmabuf_ops = {
.cache_sgt_mapping = true,
.attach = drm_gem_map_attach,
@@ -1699,8 +1679,6 @@ static const struct dma_buf_ops rockchip_drm_gem_prime_dmabuf_ops = {
.get_uuid = drm_gem_dmabuf_get_uuid,
.begin_cpu_access = rockchip_drm_gem_dmabuf_begin_cpu_access,
.end_cpu_access = rockchip_drm_gem_dmabuf_end_cpu_access,
.begin_cpu_access_partial = rockchip_drm_gem_begin_cpu_access_partial,
.end_cpu_access_partial = rockchip_drm_gem_end_cpu_access_partial,
};
static struct drm_gem_object *rockchip_drm_gem_prime_import_dev(struct drm_device *dev,

View File

@@ -992,78 +992,3 @@ int rockchip_gem_prime_end_cpu_access(struct drm_gem_object *obj,
rk_obj->sgt->nents, dir);
return 0;
}
static int rockchip_gem_prime_sgl_sync_range(struct device *dev,
struct scatterlist *sgl, unsigned int nents,
unsigned int offset, unsigned int length,
enum dma_data_direction dir, bool for_cpu)
{
int i;
struct scatterlist *sg;
unsigned int len = 0;
dma_addr_t sg_dma_addr;
for_each_sg(sgl, sg, nents, i) {
unsigned int sg_offset, sg_left, size = 0;
len += sg->length;
if (len <= offset)
continue;
sg_dma_addr = sg_phys(sg);
sg_left = len - offset;
sg_offset = sg->length - sg_left;
size = (length < sg_left) ? length : sg_left;
if (for_cpu)
dma_sync_single_range_for_cpu(dev, sg_dma_addr,
sg_offset, size, dir);
else
dma_sync_single_range_for_device(dev, sg_dma_addr,
sg_offset, size, dir);
offset += size;
length -= size;
if (length == 0)
break;
}
return 0;
}
int rockchip_gem_prime_begin_cpu_access_partial(struct drm_gem_object *obj,
enum dma_data_direction dir,
unsigned int offset,
unsigned int len)
{
struct rockchip_gem_object *rk_obj = to_rockchip_obj(obj);
struct drm_device *drm = obj->dev;
if (!rk_obj->sgt)
return 0;
rockchip_gem_prime_sgl_sync_range(drm->dev, rk_obj->sgt->sgl,
rk_obj->sgt->nents,
offset, len, dir, true);
return 0;
}
int rockchip_gem_prime_end_cpu_access_partial(struct drm_gem_object *obj,
enum dma_data_direction dir,
unsigned int offset,
unsigned int len)
{
struct rockchip_gem_object *rk_obj = to_rockchip_obj(obj);
struct drm_device *drm = obj->dev;
if (!rk_obj->sgt)
return 0;
rockchip_gem_prime_sgl_sync_range(drm->dev, rk_obj->sgt->sgl,
rk_obj->sgt->nents,
offset, len, dir, false);
return 0;
}

View File

@@ -81,14 +81,5 @@ int rockchip_gem_prime_begin_cpu_access(struct drm_gem_object *obj,
int rockchip_gem_prime_end_cpu_access(struct drm_gem_object *obj,
enum dma_data_direction dir);
int rockchip_gem_prime_begin_cpu_access_partial(struct drm_gem_object *obj,
enum dma_data_direction dir,
unsigned int offset,
unsigned int len);
int rockchip_gem_prime_end_cpu_access_partial(struct drm_gem_object *obj,
enum dma_data_direction dir,
unsigned int offset,
unsigned int len);
void rockchip_gem_get_ddr_info(void);
#endif /* _ROCKCHIP_DRM_GEM_H */