Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cdd32563 authored by Lucas Stach's avatar Lucas Stach
Browse files

drm/etnaviv: fold __etnaviv_gem_new into caller



This function has only one caller and it isn't expected that there will
be any more in the future. Folding this function into the caller is
helping the readability.

Signed-off-by: default avatarLucas Stach <l.stach@pengutronix.de>
Reviewed-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
Reviewed-by: default avatarChristian Gmeiner <christian.gmeiner@gmail.com>
parent 783c06cb
Loading
Loading
Loading
Loading
+5 −21
Original line number Original line Diff line number Diff line
@@ -643,8 +643,9 @@ static int etnaviv_gem_new_impl(struct drm_device *dev, u32 size, u32 flags,
	return 0;
	return 0;
}
}


static struct drm_gem_object *__etnaviv_gem_new(struct drm_device *dev,
/* convenience method to construct a GEM buffer object, and userspace handle */
		u32 size, u32 flags)
int etnaviv_gem_new_handle(struct drm_device *dev, struct drm_file *file,
	u32 size, u32 flags, u32 *handle)
{
{
	struct drm_gem_object *obj = NULL;
	struct drm_gem_object *obj = NULL;
	int ret;
	int ret;
@@ -665,7 +666,7 @@ static struct drm_gem_object *__etnaviv_gem_new(struct drm_device *dev,
		/*
		/*
		 * Our buffers are kept pinned, so allocating them
		 * Our buffers are kept pinned, so allocating them
		 * from the MOVABLE zone is a really bad idea, and
		 * from the MOVABLE zone is a really bad idea, and
		 * conflicts with CMA.  See coments above new_inode()
		 * conflicts with CMA. See comments above new_inode()
		 * why this is required _and_ expected if you're
		 * why this is required _and_ expected if you're
		 * going to pin these pages.
		 * going to pin these pages.
		 */
		 */
@@ -677,24 +678,6 @@ static struct drm_gem_object *__etnaviv_gem_new(struct drm_device *dev,
	if (ret)
	if (ret)
		goto fail;
		goto fail;


	return obj;

fail:
	drm_gem_object_put_unlocked(obj);
	return ERR_PTR(ret);
}

/* convenience method to construct a GEM buffer object, and userspace handle */
int etnaviv_gem_new_handle(struct drm_device *dev, struct drm_file *file,
		u32 size, u32 flags, u32 *handle)
{
	struct drm_gem_object *obj;
	int ret;

	obj = __etnaviv_gem_new(dev, size, flags);
	if (IS_ERR(obj))
		return PTR_ERR(obj);

	ret = etnaviv_gem_obj_add(dev, obj);
	ret = etnaviv_gem_obj_add(dev, obj);
	if (ret < 0) {
	if (ret < 0) {
		drm_gem_object_put_unlocked(obj);
		drm_gem_object_put_unlocked(obj);
@@ -704,6 +687,7 @@ int etnaviv_gem_new_handle(struct drm_device *dev, struct drm_file *file,
	ret = drm_gem_handle_create(file, obj, handle);
	ret = drm_gem_handle_create(file, obj, handle);


	/* drop reference from allocate - handle holds it now */
	/* drop reference from allocate - handle holds it now */
fail:
	drm_gem_object_put_unlocked(obj);
	drm_gem_object_put_unlocked(obj);


	return ret;
	return ret;