mirror of https://gitee.com/openkylin/linux.git
drm/radeon: remove vm_unbind
It actually isn't very useful. Signed-off-by: Christian König <deathsimple@vodafone.de> Reviewed-by: Jerome Glisse <jglisse@redhat.com>
This commit is contained in:
parent
05b0714768
commit
d66a76269a
|
@ -1509,17 +1509,6 @@ int cayman_vm_bind(struct radeon_device *rdev, struct radeon_vm *vm, int id)
|
|||
return 0;
|
||||
}
|
||||
|
||||
void cayman_vm_unbind(struct radeon_device *rdev, struct radeon_vm *vm)
|
||||
{
|
||||
WREG32(VM_CONTEXT0_PAGE_TABLE_START_ADDR + (vm->id << 2), 0);
|
||||
WREG32(VM_CONTEXT0_PAGE_TABLE_END_ADDR + (vm->id << 2), 0);
|
||||
WREG32(VM_CONTEXT0_PAGE_TABLE_BASE_ADDR + (vm->id << 2), 0);
|
||||
/* flush hdp cache */
|
||||
WREG32(HDP_MEM_COHERENCY_FLUSH_CNTL, 0x1);
|
||||
/* bits 0-7 are the VM contexts0-7 */
|
||||
WREG32(VM_INVALIDATE_REQUEST, 1 << vm->id);
|
||||
}
|
||||
|
||||
void cayman_vm_tlb_flush(struct radeon_device *rdev, struct radeon_vm *vm)
|
||||
{
|
||||
if (vm->id == -1)
|
||||
|
|
|
@ -1116,7 +1116,6 @@ struct radeon_asic {
|
|||
int (*init)(struct radeon_device *rdev);
|
||||
void (*fini)(struct radeon_device *rdev);
|
||||
int (*bind)(struct radeon_device *rdev, struct radeon_vm *vm, int id);
|
||||
void (*unbind)(struct radeon_device *rdev, struct radeon_vm *vm);
|
||||
void (*tlb_flush)(struct radeon_device *rdev, struct radeon_vm *vm);
|
||||
uint32_t (*page_flags)(struct radeon_device *rdev,
|
||||
struct radeon_vm *vm,
|
||||
|
@ -1734,7 +1733,6 @@ void radeon_ring_write(struct radeon_ring *ring, uint32_t v);
|
|||
#define radeon_asic_vm_init(rdev) (rdev)->asic->vm.init((rdev))
|
||||
#define radeon_asic_vm_fini(rdev) (rdev)->asic->vm.fini((rdev))
|
||||
#define radeon_asic_vm_bind(rdev, v, id) (rdev)->asic->vm.bind((rdev), (v), (id))
|
||||
#define radeon_asic_vm_unbind(rdev, v) (rdev)->asic->vm.unbind((rdev), (v))
|
||||
#define radeon_asic_vm_tlb_flush(rdev, v) (rdev)->asic->vm.tlb_flush((rdev), (v))
|
||||
#define radeon_asic_vm_page_flags(rdev, v, flags) (rdev)->asic->vm.page_flags((rdev), (v), (flags))
|
||||
#define radeon_asic_vm_set_page(rdev, v, pfn, addr, flags) (rdev)->asic->vm.set_page((rdev), (v), (pfn), (addr), (flags))
|
||||
|
|
|
@ -1376,7 +1376,6 @@ static struct radeon_asic cayman_asic = {
|
|||
.init = &cayman_vm_init,
|
||||
.fini = &cayman_vm_fini,
|
||||
.bind = &cayman_vm_bind,
|
||||
.unbind = &cayman_vm_unbind,
|
||||
.tlb_flush = &cayman_vm_tlb_flush,
|
||||
.page_flags = &cayman_vm_page_flags,
|
||||
.set_page = &cayman_vm_set_page,
|
||||
|
@ -1480,7 +1479,6 @@ static struct radeon_asic trinity_asic = {
|
|||
.init = &cayman_vm_init,
|
||||
.fini = &cayman_vm_fini,
|
||||
.bind = &cayman_vm_bind,
|
||||
.unbind = &cayman_vm_unbind,
|
||||
.tlb_flush = &cayman_vm_tlb_flush,
|
||||
.page_flags = &cayman_vm_page_flags,
|
||||
.set_page = &cayman_vm_set_page,
|
||||
|
@ -1584,7 +1582,6 @@ static struct radeon_asic si_asic = {
|
|||
.init = &si_vm_init,
|
||||
.fini = &si_vm_fini,
|
||||
.bind = &si_vm_bind,
|
||||
.unbind = &si_vm_unbind,
|
||||
.tlb_flush = &si_vm_tlb_flush,
|
||||
.page_flags = &cayman_vm_page_flags,
|
||||
.set_page = &cayman_vm_set_page,
|
||||
|
|
|
@ -522,7 +522,6 @@ static void radeon_vm_unbind_locked(struct radeon_device *rdev,
|
|||
radeon_fence_unref(&vm->fence);
|
||||
|
||||
/* hw unbind */
|
||||
radeon_asic_vm_unbind(rdev, vm);
|
||||
rdev->vm_manager.use_bitmap &= ~(1 << vm->id);
|
||||
list_del_init(&vm->list);
|
||||
vm->id = -1;
|
||||
|
|
|
@ -2803,18 +2803,6 @@ int si_vm_bind(struct radeon_device *rdev, struct radeon_vm *vm, int id)
|
|||
return 0;
|
||||
}
|
||||
|
||||
void si_vm_unbind(struct radeon_device *rdev, struct radeon_vm *vm)
|
||||
{
|
||||
if (vm->id < 8)
|
||||
WREG32(VM_CONTEXT0_PAGE_TABLE_BASE_ADDR + (vm->id << 2), 0);
|
||||
else
|
||||
WREG32(VM_CONTEXT8_PAGE_TABLE_BASE_ADDR + ((vm->id - 8) << 2), 0);
|
||||
/* flush hdp cache */
|
||||
WREG32(HDP_MEM_COHERENCY_FLUSH_CNTL, 0x1);
|
||||
/* bits 0-15 are the VM contexts0-15 */
|
||||
WREG32(VM_INVALIDATE_REQUEST, 1 << vm->id);
|
||||
}
|
||||
|
||||
void si_vm_tlb_flush(struct radeon_device *rdev, struct radeon_vm *vm)
|
||||
{
|
||||
if (vm->id == -1)
|
||||
|
|
Loading…
Reference in New Issue