Commit 220df83a authored by Steven Price's avatar Steven Price Committed by Rob Herring

drm/gem: Rename drm_gem_dumb_map_offset() to drm_gem_map_offset()

drm_gem_dumb_map_offset() is a useful helper for non-dumb clients, so
rename it to remove the _dumb and add a comment that it can be used by
shmem clients.
Signed-off-by: default avatarSteven Price <steven.price@arm.com>
Acked-by: default avatarDaniel Vetter <daniel@ffwll.ch>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20190627155318.38053-2-steven.price@arm.com
parent 52500de6
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
* To support dumb objects drivers must implement the &drm_driver.dumb_create * To support dumb objects drivers must implement the &drm_driver.dumb_create
* operation. &drm_driver.dumb_destroy defaults to drm_gem_dumb_destroy() if * operation. &drm_driver.dumb_destroy defaults to drm_gem_dumb_destroy() if
* not set and &drm_driver.dumb_map_offset defaults to * not set and &drm_driver.dumb_map_offset defaults to
* drm_gem_dumb_map_offset(). See the callbacks for further details. * drm_gem_map_offset(). See the callbacks for further details.
* *
* Note that dumb objects may not be used for gpu acceleration, as has been * Note that dumb objects may not be used for gpu acceleration, as has been
* attempted on some ARM embedded platforms. Such drivers really must have * attempted on some ARM embedded platforms. Such drivers really must have
...@@ -127,7 +127,7 @@ int drm_mode_mmap_dumb_ioctl(struct drm_device *dev, ...@@ -127,7 +127,7 @@ int drm_mode_mmap_dumb_ioctl(struct drm_device *dev,
args->handle, args->handle,
&args->offset); &args->offset);
else else
return drm_gem_dumb_map_offset(file_priv, dev, args->handle, return drm_gem_map_offset(file_priv, dev, args->handle,
&args->offset); &args->offset);
} }
......
...@@ -297,7 +297,7 @@ drm_gem_handle_delete(struct drm_file *filp, u32 handle) ...@@ -297,7 +297,7 @@ drm_gem_handle_delete(struct drm_file *filp, u32 handle)
EXPORT_SYMBOL(drm_gem_handle_delete); EXPORT_SYMBOL(drm_gem_handle_delete);
/** /**
* drm_gem_dumb_map_offset - return the fake mmap offset for a gem object * drm_gem_map_offset - return the fake mmap offset for a gem object
* @file: drm file-private structure containing the gem object * @file: drm file-private structure containing the gem object
* @dev: corresponding drm_device * @dev: corresponding drm_device
* @handle: gem object handle * @handle: gem object handle
...@@ -306,10 +306,14 @@ EXPORT_SYMBOL(drm_gem_handle_delete); ...@@ -306,10 +306,14 @@ EXPORT_SYMBOL(drm_gem_handle_delete);
* This implements the &drm_driver.dumb_map_offset kms driver callback for * This implements the &drm_driver.dumb_map_offset kms driver callback for
* drivers which use gem to manage their backing storage. * drivers which use gem to manage their backing storage.
* *
* It can also be used by drivers using GEM BO implementations which
* have same restriction that imported objects cannot be mapped. The
* shmem backend is one example.
*
* Returns: * Returns:
* 0 on success or a negative error code on failure. * 0 on success or a negative error code on failure.
*/ */
int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev, int drm_gem_map_offset(struct drm_file *file, struct drm_device *dev,
u32 handle, u64 *offset) u32 handle, u64 *offset)
{ {
struct drm_gem_object *obj; struct drm_gem_object *obj;
...@@ -335,7 +339,7 @@ int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev, ...@@ -335,7 +339,7 @@ int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev,
return ret; return ret;
} }
EXPORT_SYMBOL_GPL(drm_gem_dumb_map_offset); EXPORT_SYMBOL_GPL(drm_gem_map_offset);
/** /**
* drm_gem_dumb_destroy - dumb fb callback helper for gem based drivers * drm_gem_dumb_destroy - dumb fb callback helper for gem based drivers
......
...@@ -272,8 +272,7 @@ int exynos_drm_gem_map_ioctl(struct drm_device *dev, void *data, ...@@ -272,8 +272,7 @@ int exynos_drm_gem_map_ioctl(struct drm_device *dev, void *data,
{ {
struct drm_exynos_gem_map *args = data; struct drm_exynos_gem_map *args = data;
return drm_gem_dumb_map_offset(file_priv, dev, args->handle, return drm_gem_map_offset(file_priv, dev, args->handle, &args->offset);
&args->offset);
} }
struct exynos_drm_gem *exynos_drm_gem_get(struct drm_file *filp, struct exynos_drm_gem *exynos_drm_gem_get(struct drm_file *filp,
......
...@@ -401,7 +401,7 @@ int drm_gem_fence_array_add(struct xarray *fence_array, ...@@ -401,7 +401,7 @@ int drm_gem_fence_array_add(struct xarray *fence_array,
int drm_gem_fence_array_add_implicit(struct xarray *fence_array, int drm_gem_fence_array_add_implicit(struct xarray *fence_array,
struct drm_gem_object *obj, struct drm_gem_object *obj,
bool write); bool write);
int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev, int drm_gem_map_offset(struct drm_file *file, struct drm_device *dev,
u32 handle, u64 *offset); u32 handle, u64 *offset);
int drm_gem_dumb_destroy(struct drm_file *file, int drm_gem_dumb_destroy(struct drm_file *file,
struct drm_device *dev, struct drm_device *dev,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment