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

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
...@@ -242,7 +242,7 @@ void msm_atomic_state_clear(struct drm_atomic_state *state); ...@@ -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_atomic_state_free(struct drm_atomic_state *state);
void msm_gem_unmap_vma(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);
int msm_gem_map_vma(struct msm_gem_address_space *aspace, int msm_gem_map_vma(struct msm_gem_address_space *aspace,
struct msm_gem_vma *vma, struct sg_table *sgt, int npages); struct msm_gem_vma *vma, struct sg_table *sgt, int npages);
......
...@@ -352,7 +352,7 @@ put_iova(struct drm_gem_object *obj) ...@@ -352,7 +352,7 @@ put_iova(struct drm_gem_object *obj)
WARN_ON(!mutex_is_locked(&msm_obj->lock)); WARN_ON(!mutex_is_locked(&msm_obj->lock));
list_for_each_entry_safe(vma, tmp, &msm_obj->vmas, list) { 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); del_vma(vma);
} }
} }
......
...@@ -40,14 +40,14 @@ void msm_gem_address_space_put(struct msm_gem_address_space *aspace) ...@@ -40,14 +40,14 @@ void msm_gem_address_space_put(struct msm_gem_address_space *aspace)
void void
msm_gem_unmap_vma(struct msm_gem_address_space *aspace, 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) if (!aspace || !vma->iova)
return; return;
if (aspace->mmu) { if (aspace->mmu) {
unsigned size = vma->node.size << PAGE_SHIFT; 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); spin_lock(&aspace->lock);
......
...@@ -71,8 +71,7 @@ static int msm_iommu_map(struct msm_mmu *mmu, uint64_t iova, ...@@ -71,8 +71,7 @@ static int msm_iommu_map(struct msm_mmu *mmu, uint64_t iova,
return (ret == len) ? 0 : -EINVAL; return (ret == len) ? 0 : -EINVAL;
} }
static int msm_iommu_unmap(struct msm_mmu *mmu, uint64_t iova, static int msm_iommu_unmap(struct msm_mmu *mmu, uint64_t iova, unsigned len)
struct sg_table *sgt, unsigned len)
{ {
struct msm_iommu *iommu = to_msm_iommu(mmu); struct msm_iommu *iommu = to_msm_iommu(mmu);
......
...@@ -25,8 +25,7 @@ struct msm_mmu_funcs { ...@@ -25,8 +25,7 @@ struct msm_mmu_funcs {
void (*detach)(struct msm_mmu *mmu, const char * const *names, int cnt); 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, int (*map)(struct msm_mmu *mmu, uint64_t iova, struct sg_table *sgt,
unsigned len, int prot); unsigned len, int prot);
int (*unmap)(struct msm_mmu *mmu, uint64_t iova, struct sg_table *sgt, int (*unmap)(struct msm_mmu *mmu, uint64_t iova, unsigned len);
unsigned len);
void (*destroy)(struct msm_mmu *mmu); void (*destroy)(struct msm_mmu *mmu);
}; };
......
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