summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/tegra/submit.c
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2020-02-07 18:50:52 +0300
committerThierry Reding <treding@nvidia.com>2021-12-16 16:07:06 +0300
commit1f39b1dfa53c84b56d7ad37fed44afda7004959d (patch)
tree8ef62c2b9b69fbf96e0cdad49362f2c4c17e0682 /drivers/gpu/drm/tegra/submit.c
parentc6aeaf56f468a565f6d2f27325fc07d35cdcd3cb (diff)
downloadlinux-1f39b1dfa53c84b56d7ad37fed44afda7004959d.tar.xz
drm/tegra: Implement buffer object cache
This cache is used to avoid mapping and unmapping buffer objects unnecessarily. Mappings are cached per client and stay hot until the buffer object is destroyed. Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'drivers/gpu/drm/tegra/submit.c')
-rw-r--r--drivers/gpu/drm/tegra/submit.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/tegra/submit.c b/drivers/gpu/drm/tegra/submit.c
index 6b950388527b..c32698404e36 100644
--- a/drivers/gpu/drm/tegra/submit.c
+++ b/drivers/gpu/drm/tegra/submit.c
@@ -75,6 +75,7 @@ gather_bo_pin(struct device *dev, struct host1x_bo *bo, enum dma_data_direction
if (!map)
return ERR_PTR(-ENOMEM);
+ kref_init(&map->ref);
map->bo = host1x_bo_get(bo);
map->direction = direction;
map->dev = dev;