Lines Matching refs:fpriv
861 struct amdgpu_fpriv *fpriv; in amdgpu_driver_open_kms() local
870 fpriv = kzalloc(sizeof(*fpriv), GFP_KERNEL); in amdgpu_driver_open_kms()
871 if (unlikely(!fpriv)) { in amdgpu_driver_open_kms()
881 r = amdgpu_vm_init(adev, &fpriv->vm, AMDGPU_VM_CONTEXT_GFX, pasid); in amdgpu_driver_open_kms()
885 fpriv->prt_va = amdgpu_vm_bo_add(adev, &fpriv->vm, NULL); in amdgpu_driver_open_kms()
886 if (!fpriv->prt_va) { in amdgpu_driver_open_kms()
892 r = amdgpu_map_static_csa(adev, &fpriv->vm, &fpriv->csa_va); in amdgpu_driver_open_kms()
897 mutex_init(&fpriv->bo_list_lock); in amdgpu_driver_open_kms()
898 idr_init(&fpriv->bo_list_handles); in amdgpu_driver_open_kms()
900 amdgpu_ctx_mgr_init(&fpriv->ctx_mgr); in amdgpu_driver_open_kms()
902 file_priv->driver_priv = fpriv; in amdgpu_driver_open_kms()
906 amdgpu_vm_fini(adev, &fpriv->vm); in amdgpu_driver_open_kms()
912 kfree(fpriv); in amdgpu_driver_open_kms()
933 struct amdgpu_fpriv *fpriv = file_priv->driver_priv; in amdgpu_driver_postclose_kms() local
939 if (!fpriv) in amdgpu_driver_postclose_kms()
949 amdgpu_vm_bo_rmv(adev, fpriv->prt_va); in amdgpu_driver_postclose_kms()
954 amdgpu_vm_bo_rmv(adev, fpriv->csa_va); in amdgpu_driver_postclose_kms()
955 fpriv->csa_va = NULL; in amdgpu_driver_postclose_kms()
959 pasid = fpriv->vm.pasid; in amdgpu_driver_postclose_kms()
960 pd = amdgpu_bo_ref(fpriv->vm.root.base.bo); in amdgpu_driver_postclose_kms()
962 amdgpu_vm_fini(adev, &fpriv->vm); in amdgpu_driver_postclose_kms()
963 amdgpu_ctx_mgr_fini(&fpriv->ctx_mgr); in amdgpu_driver_postclose_kms()
969 idr_for_each_entry(&fpriv->bo_list_handles, list, handle) in amdgpu_driver_postclose_kms()
972 idr_destroy(&fpriv->bo_list_handles); in amdgpu_driver_postclose_kms()
973 mutex_destroy(&fpriv->bo_list_lock); in amdgpu_driver_postclose_kms()
975 kfree(fpriv); in amdgpu_driver_postclose_kms()