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

Commit 70dc51b4 authored by Jordan Crouse's avatar Jordan Crouse Committed by Rob Clark
Browse files

drm/msm: Remove sgt from the mmu unmap function



The scatter gather table doesn't need to be passed in for the
MMU unmap function.

Signed-off-by: default avatarJordan Crouse <jcrouse@codeaurora.org>
Signed-off-by: default avatarRob Clark <robdclark@gmail.com>
parent 1e29dff0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -242,7 +242,7 @@ void msm_atomic_state_clear(struct drm_atomic_state *state);
void msm_atomic_state_free(struct drm_atomic_state *state);

void msm_gem_unmap_vma(struct msm_gem_address_space *aspace,
		struct msm_gem_vma *vma, struct sg_table *sgt);
		struct msm_gem_vma *vma);
int msm_gem_map_vma(struct msm_gem_address_space *aspace,
		struct msm_gem_vma *vma, struct sg_table *sgt, int npages);

+1 −1
Original line number Diff line number Diff line
@@ -352,7 +352,7 @@ put_iova(struct drm_gem_object *obj)
	WARN_ON(!mutex_is_locked(&msm_obj->lock));

	list_for_each_entry_safe(vma, tmp, &msm_obj->vmas, list) {
		msm_gem_unmap_vma(vma->aspace, vma, msm_obj->sgt);
		msm_gem_unmap_vma(vma->aspace, vma);
		del_vma(vma);
	}
}
+2 −2
Original line number Diff line number Diff line
@@ -40,14 +40,14 @@ void msm_gem_address_space_put(struct msm_gem_address_space *aspace)

void
msm_gem_unmap_vma(struct msm_gem_address_space *aspace,
		struct msm_gem_vma *vma, struct sg_table *sgt)
		struct msm_gem_vma *vma)
{
	if (!aspace || !vma->iova)
		return;

	if (aspace->mmu) {
		unsigned size = vma->node.size << PAGE_SHIFT;
		aspace->mmu->funcs->unmap(aspace->mmu, vma->iova, sgt, size);
		aspace->mmu->funcs->unmap(aspace->mmu, vma->iova, size);
	}

	spin_lock(&aspace->lock);
+1 −2
Original line number Diff line number Diff line
@@ -71,8 +71,7 @@ static int msm_iommu_map(struct msm_mmu *mmu, uint64_t iova,
	return (ret == len) ? 0 : -EINVAL;
}

static int msm_iommu_unmap(struct msm_mmu *mmu, uint64_t iova,
		struct sg_table *sgt, unsigned len)
static int msm_iommu_unmap(struct msm_mmu *mmu, uint64_t iova, unsigned len)
{
	struct msm_iommu *iommu = to_msm_iommu(mmu);

+1 −2
Original line number Diff line number Diff line
@@ -25,8 +25,7 @@ struct msm_mmu_funcs {
	void (*detach)(struct msm_mmu *mmu, const char * const *names, int cnt);
	int (*map)(struct msm_mmu *mmu, uint64_t iova, struct sg_table *sgt,
			unsigned len, int prot);
	int (*unmap)(struct msm_mmu *mmu, uint64_t iova, struct sg_table *sgt,
			unsigned len);
	int (*unmap)(struct msm_mmu *mmu, uint64_t iova, unsigned len);
	void (*destroy)(struct msm_mmu *mmu);
};