linux/drivers/gpu/drm/msm/adreno
Jordan Crouse 7ad0e8cf63 drm/msm: Count how many times iova memory is pinned
Add a reference count to track how many times a particular
chunk of iova memory is pinned (mapped) in the iomu and
add msm_gem_unpin_iova to give up references.

It is important to note that msm_gem_unpin_iova replaces
msm_gem_put_iova because the new implicit behavior
that an assigned iova in a given vma is now valid for the
life of the buffer and what we are really focusing on is
the use of that iova.

For now the unmappings are lazy; once the reference counts
go to zero they *COULD* be unmapped dynamically but that
will require an outside force such as a shrinker or
mm_notifiers.  For now, we're just focusing on getting
the counting right and setting ourselves up to be ready
for the future.

Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@gmail.com>
2018-12-11 13:05:32 -05:00
..
a2xx.xml.h drm/msm: update generated headers 2018-12-11 13:05:27 -05:00
a3xx_gpu.c drm: msm: Use DRM_DEV_* instead of dev_* 2018-12-11 13:05:22 -05:00
a3xx_gpu.h drm/msm: Remove uneeded platform dev members 2017-08-02 07:57:02 -04:00
a3xx.xml.h drm/msm: update generated headers 2018-12-11 13:05:27 -05:00
a4xx_gpu.c drm: msm: Use DRM_DEV_* instead of dev_* 2018-12-11 13:05:22 -05:00
a4xx_gpu.h drm/msm: Remove uneeded platform dev members 2017-08-02 07:57:02 -04:00
a4xx.xml.h drm/msm: update generated headers 2018-12-11 13:05:27 -05:00
a5xx_debugfs.c drm/msm: Count how many times iova memory is pinned 2018-12-11 13:05:32 -05:00
a5xx_gpu.c drm/msm: Count how many times iova memory is pinned 2018-12-11 13:05:32 -05:00
a5xx_gpu.h drm/msm: add a5xx specific debugfs 2018-02-20 10:41:20 -05:00
a5xx_power.c drm/msm: Add a common function to free kernel buffer objects 2018-12-11 13:05:30 -05:00
a5xx_preempt.c drm/msm: Add a common function to free kernel buffer objects 2018-12-11 13:05:30 -05:00
a5xx.xml.h drm/msm: update generated headers 2018-12-11 13:05:27 -05:00
a6xx_gmu.c drm/msm/a6xx: Add a6xx gpu state 2018-12-11 13:05:30 -05:00
a6xx_gmu.h drm/msm/a6xx: Add a6xx gpu state 2018-12-11 13:05:30 -05:00
a6xx_gmu.xml.h drm/msm: update generated headers 2018-12-11 13:05:27 -05:00
a6xx_gpu_state.c drm/msm: Count how many times iova memory is pinned 2018-12-11 13:05:32 -05:00
a6xx_gpu_state.h drm/msm/a6xx: Add a6xx gpu state 2018-12-11 13:05:30 -05:00
a6xx_gpu.c drm/msm: Count how many times iova memory is pinned 2018-12-11 13:05:32 -05:00
a6xx_gpu.h drm/msm/a6xx: Add a6xx gpu state 2018-12-11 13:05:30 -05:00
a6xx_hfi.c drm: msm: Use DRM_DEV_* instead of dev_* 2018-12-11 13:05:22 -05:00
a6xx_hfi.h drm/msm: Add A6XX device support 2018-08-10 18:49:18 -04:00
a6xx.xml.h drm/msm: update generated headers 2018-12-11 13:05:27 -05:00
adreno_common.xml.h drm/msm: update generated headers 2018-12-11 13:05:27 -05:00
adreno_device.c drm: msm: Use DRM_DEV_* instead of dev_* 2018-12-11 13:05:22 -05:00
adreno_gpu.c drm/msm: Add msm_gem_get_and_pin_iova() 2018-12-11 13:05:32 -05:00
adreno_gpu.h drm/msm/gpu: Move gpu_poll_timeout() to adreno_gpu.h 2018-12-11 13:05:29 -05:00
adreno_pm4.xml.h drm/msm: update generated headers 2018-12-11 13:05:27 -05:00