aboutsummaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd
AgeCommit message (Collapse)AuthorFilesLines
2015-08-17drm/amdgpu: add reference for **fenceChunming Zhou11-3/+15
fix fence is released when pass to **fence sometimes. add reference for it. Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]>
2015-08-17drm/amdgpu: fix waiting for all fences before flippingChristian König2-29/+56
Otherwise we might see corruption. Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: fix UVD return code checkingChristian König1-5/+5
Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]> Tested-and-Reviewed-by: Leo Liu <[email protected]>
2015-08-17drm/amdgpu: remove scheduler fence list v2Christian König3-21/+1
Unused and missing proper locking. v2: add locking comment to commit message. Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]> (v1)
2015-08-17drm/amdgpu: remove amd_sched_wait_emit v2Christian König3-73/+0
Not used any more. v2: remove amd_sched_emit as well. Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: remove unecessary scheduler fence callbacksChristian König1-24/+7
Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: fix scheduler fence implementationChristian König1-1/+1
Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: don't grab dev->struct_mutex in pm functionsDaniel Vetter1-2/+0
Similar to radeon, except that amdgpu doesn't even use struct_mutex to protect anything like the shared z buffer (sane gpu architecture, yay!). And the code already grabs the globa adev->ring_lock, so this code can't race with itself. Which makes struct_mutex completely redundnant. Remove it. Cc: Alex Deucher <[email protected]> Cc: "Christian König" <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: Don't take dev->struct_mutex in bo_force_deleteDaniel Vetter1-3/+1
It really doesn't protect anything which doesn't have other locks already. Also this is run from driver unload code so not much need for locks anyway. Same changes as for radeon really. Cc: Alex Deucher <[email protected]> Cc: "Christian König" <[email protected]> Reviewed-by: Thierry Reding <[email protected]> Signed-off-by: Daniel Vetter <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: remove VI hw bug workaround v3Christian König2-13/+1
The workaround simply doesn't work because VM mappings are controlled by userspace not the kernel. Additional to that this is just a performance problem which happens if you have holes in your VM mapping. v2: adjust virtual addr alignment as well. v3: fix trivial warning Signed-off-by: Christian König <[email protected]> Reviewed-by: Monk Liu <[email protected]> (v1) Reviewed-by: Jammy Zhou <[email protected]> (v2)
2015-08-17drm/amdgpu: cleanup amdgpu_fence_ring_wait_seqChristian König1-69/+15
Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: remove duplicate amdgpu_fence_process implementationChristian König1-58/+1
Looks like that somehow got missed while during porting the radeon changes. Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: remove amdgpu_fence_waitChristian König6-30/+7
It was just a wrapper for fence_wait anyway. Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: use the reservation obj wait for the UVD msgChristian König1-8/+5
Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: remove amdgpu_fence_signaledChristian König3-26/+4
The common kernel function does the same thing. Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amd: add scheduler fence implementation (v2)Chunming Zhou9-38/+202
scheduler fence is based on kernel fence framework. v2: squash in Christian's build fix Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]>
2015-08-17drm/amdgpu: use kernel submit helper in vmChunming Zhou3-144/+33
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]>
2015-08-17drm/amdgpu: use amd_sched_job in its backend opsChunming Zhou3-38/+37
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]>
2015-08-17drm/amdgpu: cleanup and fix scheduler fence handling v2Christian König3-50/+44
v2: rebased Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]> (v1) Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: merge amd_sched_entity and amd_context_entity v2Christian König7-101/+81
Avoiding a couple of casts. v2: rename c_entity to entity as well Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: fix coding style in a couple of placesChristian König2-11/+12
Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: remove unused parent entityChristian König3-6/+1
Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: process sched job exactly triggered by fence signalChunming Zhou4-48/+68
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]>
2015-08-17Revert "drm/amdgpu: return new seq_no for amd_sched_push_job"Chunming Zhou5-15/+38
This reverts commit d1d33da8eb86b8ca41dd9ed95738030df5267b95. Reviewed-by: Christian K?nig <[email protected]> Conflicts: drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
2015-08-17drm/amdgpu: cleanup amdgpu_ctx inti/fini v2Christian König5-104/+89
Cleanup the kernel context handling. v2: rebased Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]> (v1)
2015-08-17drm/amdgpu: stop leaking the ctx id into the scheduler v2Christian König3-20/+7
Id's are for the IOCTL ABI only. v2: remove tgid as well Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: cleanup ctx_mgr init/finiChristian König3-25/+27
Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: fix bo list handling in CSChristian König3-56/+37
We didn't initialized the mutex in the cloned bo list resulting in nice warnings from lockdep. Also fixes error handling in this function. Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: reorder the code to avoid forward declerationsChristian König1-33/+28
Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: move sched job process from isr to fence callbackChunming Zhou3-19/+15
This way can avoid interrupt lost, and can process sched job exactly. Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Jammy Zhou <[email protected]>
2015-08-17drm/amdgpu: add amd_sched_next_queued_seq functionJammy Zhou3-1/+15
This function is used to get the next queued sequence number Signed-off-by: Jammy Zhou <[email protected]> Reviewed-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: make last_handled_seq atomicJammy Zhou2-4/+4
Signed-off-by: Jammy Zhou <[email protected]> Reviewed-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: add amd_sched_commitJammy Zhou3-3/+16
This function is to update last_emitted_v_seq and wake up the waiters. It should be called by driver in the run_job backend function Signed-off-by: Jammy Zhou <[email protected]> Reviewed-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: return new seq_no for amd_sched_push_jobJammy Zhou5-38/+15
It is clean to update last_queued_v_seq in the scheduler module Signed-off-by: Jammy Zhou <[email protected]> Reviewed-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: some code refinement v2Jammy Zhou2-17/+18
Fix the code alignment, etc. v2: rebase the code Signed-off-by: Jammy Zhou <[email protected]> Reviewed-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: fix null pointer by previous cleanupChunming Zhou1-4/+0
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]>
2015-08-17drm/amdgpu: add kernel fence in ib_submit_kernel_helperChunming Zhou9-20/+41
every sbumission should be able to get a fence. Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]> Reviewed-by: Jammy Zhou <[email protected]>
2015-08-17drm/amdgpu: use kernel fence for sdma ib testChunming Zhou3-3/+3
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]> Reviewed-by: Jammy Zhou <[email protected]>
2015-08-17drm/amdgpu: use kernel fence for gfx ib testChunming Zhou2-2/+2
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]> Reviewed-by: Jammy Zhou <[email protected]>
2015-08-17drm/amdgpu: use kernel fence in amdgpu_testChunming Zhou1-24/+22
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]> Reviewed-by: Jammy Zhou <[email protected]>
2015-08-17drm/amdgpu: use kernel fence for vce ib testChunming Zhou3-11/+12
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]> Reviewed-by: Jammy Zhou <[email protected]>
2015-08-17drm/amdgpu: change uvd ib test to use kernel fence directlyChunming Zhou6-19/+21
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]> Reviewed-by: Jammy Zhou <[email protected]>
2015-08-17drm/amdgpu: use kernel fence for last_pt_updateChunming Zhou3-15/+15
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]> Reviewed-by: Jammy Zhou <[email protected]>
2015-08-17drm/amdgpu: use kernel fence diretly in amdgpu_bo_fenceChunming Zhou3-8/+8
Signed-off-by: Chunming Zhou <[email protected]> Reviewed-by: Christian K?nig <[email protected]> Reviewed-by: Jammy Zhou <[email protected]>
2015-08-17drm/amdgpu: clean up amd sched wait_ts and wait_signalChristian König3-51/+7
Remove code not used at the moment. Signed-off-by: Christian König <[email protected]> Reviewed-by: Chunming Zhou <[email protected]>
2015-08-17drm/amdgpu: stop using addr to check for BO move v3Christian König3-34/+59
It is theoretically possible that a swapped out BO gets the same GTT address, but different backing pages while being swapped in. Instead just use another VA state to note updated areas. Ported from not upstream yet radeon commit with the same name. v2: fix some bugs in the original implementation found in the radeon code. v3: squash in VCE/UVD fix Signed-off-by: Christian König <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
2015-08-17drm/amdgpu: move wait_queue_head from adev to ring (v2)monk.liu3-152/+77
thus unnecessary wake up could be avoid between rings v2: move wait_queue_head to fence_drv from ring Signed-off-by: monk.liu <[email protected]> Reviewed-by: Christian König <[email protected]>
2015-08-17drm/amdgpu: re-implement fence_default_waitmonk.liu1-33/+4
use fence_wait_any to implement fence_default_wait Signed-off-by: monk.liu <[email protected]> Reviewed-by: Christian König <[email protected]>
2015-08-17drm/amdgpu: new implement for fence_wait_any (v2)monk.liu3-47/+77
origninal method will sleep/schedule at the granurarity of HZ/2 and based on seq signal method, the new implement is based on kernel fance interface, no unnecessary schedule at all v2: replace logic of original amdgpu_fence_wait_any Signed-off-by: monk.liu <[email protected]> Reviewed-by: Christian König <[email protected]>
2015-08-17drm/amdgpu: use kernel fence interface when possiblemonk.liu1-10/+3
Signed-off-by: monk.liu <[email protected]> Reviewed-by: Christian König <[email protected]>