diff options
Diffstat (limited to 'recipes-kernel/linux/linux-toradex-mainline-4.14/0010-drm-tegra-gem-Make-__tegra_gem_mmap-available-more-w.patch')
-rw-r--r-- | recipes-kernel/linux/linux-toradex-mainline-4.14/0010-drm-tegra-gem-Make-__tegra_gem_mmap-available-more-w.patch | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-toradex-mainline-4.14/0010-drm-tegra-gem-Make-__tegra_gem_mmap-available-more-w.patch b/recipes-kernel/linux/linux-toradex-mainline-4.14/0010-drm-tegra-gem-Make-__tegra_gem_mmap-available-more-w.patch new file mode 100644 index 0000000..2e80852 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-mainline-4.14/0010-drm-tegra-gem-Make-__tegra_gem_mmap-available-more-w.patch @@ -0,0 +1,64 @@ +From 04c0746663bd3ae3cce5e02d5b32c8ade2a833b8 Mon Sep 17 00:00:00 2001 +From: Thierry Reding <treding@nvidia.com> +Date: Wed, 7 Feb 2018 18:45:55 +0100 +Subject: [PATCH] drm/tegra: gem: Make __tegra_gem_mmap() available more widely + +This function allows mapping a GEM object into a virtual memory address +space, which makes it useful outside of the GEM code. + +While at it, rename the function so it doesn't clash with the function +that implements the DRM_TEGRA_GEM_MMAP IOCTL. + +Signed-off-by: Thierry Reding <treding@nvidia.com> +--- + drivers/gpu/drm/tegra/gem.c | 7 +++---- + drivers/gpu/drm/tegra/gem.h | 1 + + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/drivers/gpu/drm/tegra/gem.c b/drivers/gpu/drm/tegra/gem.c +index 49b9bf28f872..d3b3aa148225 100644 +--- a/drivers/gpu/drm/tegra/gem.c ++++ b/drivers/gpu/drm/tegra/gem.c +@@ -459,8 +459,7 @@ const struct vm_operations_struct tegra_bo_vm_ops = { + .close = drm_gem_vm_close, + }; + +-static int tegra_gem_mmap(struct drm_gem_object *gem, +- struct vm_area_struct *vma) ++int __tegra_gem_mmap(struct drm_gem_object *gem, struct vm_area_struct *vma) + { + struct tegra_bo *bo = to_tegra_bo(gem); + +@@ -507,7 +506,7 @@ int tegra_drm_mmap(struct file *file, struct vm_area_struct *vma) + + gem = vma->vm_private_data; + +- return tegra_gem_mmap(gem, vma); ++ return __tegra_gem_mmap(gem, vma); + } + + static struct sg_table * +@@ -600,7 +599,7 @@ static int tegra_gem_prime_mmap(struct dma_buf *buf, struct vm_area_struct *vma) + if (err < 0) + return err; + +- return tegra_gem_mmap(gem, vma); ++ return __tegra_gem_mmap(gem, vma); + } + + static void *tegra_gem_prime_vmap(struct dma_buf *buf) +diff --git a/drivers/gpu/drm/tegra/gem.h b/drivers/gpu/drm/tegra/gem.h +index 1fcf94dce45c..6bd7dd7e55b4 100644 +--- a/drivers/gpu/drm/tegra/gem.h ++++ b/drivers/gpu/drm/tegra/gem.h +@@ -70,6 +70,7 @@ int tegra_bo_dumb_create(struct drm_file *file, struct drm_device *drm, + + extern const struct vm_operations_struct tegra_bo_vm_ops; + ++int __tegra_gem_mmap(struct drm_gem_object *gem, struct vm_area_struct *vma); + int tegra_drm_mmap(struct file *file, struct vm_area_struct *vma); + + struct dma_buf *tegra_gem_prime_export(struct drm_device *drm, +-- +2.15.1 + |