Lines Matching refs:tmp_adev

4805 	struct amdgpu_device *tmp_adev = NULL;  in amdgpu_do_asic_reset()  local
4811 tmp_adev = list_first_entry(device_list_handle, struct amdgpu_device, in amdgpu_do_asic_reset()
4813 amdgpu_reset_reg_dumps(tmp_adev); in amdgpu_do_asic_reset()
4816 r = amdgpu_reset_perform_reset(tmp_adev, reset_context); in amdgpu_do_asic_reset()
4837 list_for_each_entry(tmp_adev, device_list_handle, reset_list) { in amdgpu_do_asic_reset()
4839 if (tmp_adev->gmc.xgmi.num_physical_nodes > 1) { in amdgpu_do_asic_reset()
4840 tmp_adev->gmc.xgmi.pending_reset = false; in amdgpu_do_asic_reset()
4841 if (!queue_work(system_unbound_wq, &tmp_adev->xgmi_reset_work)) in amdgpu_do_asic_reset()
4844 r = amdgpu_asic_reset(tmp_adev); in amdgpu_do_asic_reset()
4847 dev_err(tmp_adev->dev, "ASIC reset failed with error, %d for drm dev, %s", in amdgpu_do_asic_reset()
4848 r, adev_to_drm(tmp_adev)->unique); in amdgpu_do_asic_reset()
4855 list_for_each_entry(tmp_adev, device_list_handle, reset_list) { in amdgpu_do_asic_reset()
4856 if (tmp_adev->gmc.xgmi.num_physical_nodes > 1) { in amdgpu_do_asic_reset()
4857 flush_work(&tmp_adev->xgmi_reset_work); in amdgpu_do_asic_reset()
4858 r = tmp_adev->asic_reset_res; in amdgpu_do_asic_reset()
4867 list_for_each_entry(tmp_adev, device_list_handle, reset_list) { in amdgpu_do_asic_reset()
4868 if (tmp_adev->mmhub.ras && tmp_adev->mmhub.ras->ras_block.hw_ops && in amdgpu_do_asic_reset()
4869 tmp_adev->mmhub.ras->ras_block.hw_ops->reset_ras_error_count) in amdgpu_do_asic_reset()
4870 tmp_adev->mmhub.ras->ras_block.hw_ops->reset_ras_error_count(tmp_adev); in amdgpu_do_asic_reset()
4882 list_for_each_entry(tmp_adev, device_list_handle, reset_list) in amdgpu_do_asic_reset()
4883 amdgpu_device_ip_resume_phase1(tmp_adev); in amdgpu_do_asic_reset()
4888 list_for_each_entry(tmp_adev, device_list_handle, reset_list) { in amdgpu_do_asic_reset()
4891 r = amdgpu_device_asic_init(tmp_adev); in amdgpu_do_asic_reset()
4893 dev_warn(tmp_adev->dev, "asic atom init failed!"); in amdgpu_do_asic_reset()
4895 dev_info(tmp_adev->dev, "GPU reset succeeded, trying to resume\n"); in amdgpu_do_asic_reset()
4896 r = amdgpu_amdkfd_resume_iommu(tmp_adev); in amdgpu_do_asic_reset()
4900 r = amdgpu_device_ip_resume_phase1(tmp_adev); in amdgpu_do_asic_reset()
4904 vram_lost = amdgpu_device_check_vram_lost(tmp_adev); in amdgpu_do_asic_reset()
4906 tmp_adev->reset_vram_lost = vram_lost; in amdgpu_do_asic_reset()
4907 memset(&tmp_adev->reset_task_info, 0, in amdgpu_do_asic_reset()
4908 sizeof(tmp_adev->reset_task_info)); in amdgpu_do_asic_reset()
4910 tmp_adev->reset_task_info = in amdgpu_do_asic_reset()
4912 amdgpu_reset_capture_coredumpm(tmp_adev); in amdgpu_do_asic_reset()
4916 amdgpu_inc_vram_lost(tmp_adev); in amdgpu_do_asic_reset()
4919 r = amdgpu_device_fw_loading(tmp_adev); in amdgpu_do_asic_reset()
4923 r = amdgpu_device_ip_resume_phase2(tmp_adev); in amdgpu_do_asic_reset()
4928 amdgpu_device_fill_reset_magic(tmp_adev); in amdgpu_do_asic_reset()
4934 amdgpu_register_gpu_instance(tmp_adev); in amdgpu_do_asic_reset()
4937 tmp_adev->gmc.xgmi.num_physical_nodes > 1) in amdgpu_do_asic_reset()
4938 amdgpu_xgmi_add_device(tmp_adev); in amdgpu_do_asic_reset()
4940 r = amdgpu_device_ip_late_init(tmp_adev); in amdgpu_do_asic_reset()
4944 drm_fb_helper_set_suspend_unlocked(adev_to_drm(tmp_adev)->fb_helper, false); in amdgpu_do_asic_reset()
4956 if (!amdgpu_ras_eeprom_check_err_threshold(tmp_adev)) { in amdgpu_do_asic_reset()
4958 amdgpu_ras_resume(tmp_adev); in amdgpu_do_asic_reset()
4966 tmp_adev->gmc.xgmi.num_physical_nodes > 1) in amdgpu_do_asic_reset()
4968 reset_context->hive, tmp_adev); in amdgpu_do_asic_reset()
4974 amdgpu_irq_gpu_reset_resume_helper(tmp_adev); in amdgpu_do_asic_reset()
4975 r = amdgpu_ib_ring_tests(tmp_adev); in amdgpu_do_asic_reset()
4977 dev_err(tmp_adev->dev, "ib ring test failed (%d).\n", r); in amdgpu_do_asic_reset()
4985 r = amdgpu_device_recover_vram(tmp_adev); in amdgpu_do_asic_reset()
4987 tmp_adev->asic_reset_res = r; in amdgpu_do_asic_reset()
5205 struct amdgpu_device *tmp_adev = NULL; in amdgpu_device_gpu_recover() local
5249 list_for_each_entry(tmp_adev, &hive->device_list, gmc.xgmi.head) { in amdgpu_device_gpu_recover()
5250 list_add_tail(&tmp_adev->reset_list, &device_list); in amdgpu_device_gpu_recover()
5252 tmp_adev->shutdown = true; in amdgpu_device_gpu_recover()
5263 tmp_adev = list_first_entry(device_list_handle, struct amdgpu_device, in amdgpu_device_gpu_recover()
5265 amdgpu_device_lock_reset_domain(tmp_adev->reset_domain); in amdgpu_device_gpu_recover()
5268 list_for_each_entry(tmp_adev, device_list_handle, reset_list) { in amdgpu_device_gpu_recover()
5270 amdgpu_device_set_mp1_state(tmp_adev); in amdgpu_device_gpu_recover()
5282 if (!amdgpu_device_suspend_display_audio(tmp_adev)) in amdgpu_device_gpu_recover()
5285 amdgpu_ras_set_error_query_ready(tmp_adev, false); in amdgpu_device_gpu_recover()
5287 cancel_delayed_work_sync(&tmp_adev->delayed_init_work); in amdgpu_device_gpu_recover()
5289 if (!amdgpu_sriov_vf(tmp_adev)) in amdgpu_device_gpu_recover()
5290 amdgpu_amdkfd_pre_reset(tmp_adev); in amdgpu_device_gpu_recover()
5296 amdgpu_unregister_gpu_instance(tmp_adev); in amdgpu_device_gpu_recover()
5298 drm_fb_helper_set_suspend_unlocked(adev_to_drm(tmp_adev)->fb_helper, true); in amdgpu_device_gpu_recover()
5302 amdgpu_device_ip_need_full_reset(tmp_adev)) in amdgpu_device_gpu_recover()
5303 amdgpu_ras_suspend(tmp_adev); in amdgpu_device_gpu_recover()
5306 struct amdgpu_ring *ring = tmp_adev->rings[i]; in amdgpu_device_gpu_recover()
5316 atomic_inc(&tmp_adev->gpu_reset_counter); in amdgpu_device_gpu_recover()
5335 list_for_each_entry(tmp_adev, device_list_handle, reset_list) { in amdgpu_device_gpu_recover()
5338 amdgpu_device_smu_fini_early(tmp_adev); in amdgpu_device_gpu_recover()
5340 r = amdgpu_device_pre_asic_reset(tmp_adev, reset_context); in amdgpu_device_gpu_recover()
5343 dev_err(tmp_adev->dev, "GPU pre asic reset failed with err, %d for drm dev, %s ", in amdgpu_device_gpu_recover()
5344 r, adev_to_drm(tmp_adev)->unique); in amdgpu_device_gpu_recover()
5345 tmp_adev->asic_reset_res = r; in amdgpu_device_gpu_recover()
5352 amdgpu_device_stop_pending_resets(tmp_adev); in amdgpu_device_gpu_recover()
5378 list_for_each_entry(tmp_adev, device_list_handle, reset_list) { in amdgpu_device_gpu_recover()
5390 tmp_adev, device_list_handle, reset_context); in amdgpu_device_gpu_recover()
5393 struct amdgpu_ring *ring = tmp_adev->rings[i]; in amdgpu_device_gpu_recover()
5399 if (!tmp_adev->asic_reset_res && !job_signaled) in amdgpu_device_gpu_recover()
5402 drm_sched_start(&ring->sched, !tmp_adev->asic_reset_res); in amdgpu_device_gpu_recover()
5406 amdgpu_mes_self_test(tmp_adev); in amdgpu_device_gpu_recover()
5408 if (!drm_drv_uses_atomic_modeset(adev_to_drm(tmp_adev)) && !job_signaled) { in amdgpu_device_gpu_recover()
5409 drm_helper_resume_force_mode(adev_to_drm(tmp_adev)); in amdgpu_device_gpu_recover()
5412 if (tmp_adev->asic_reset_res) in amdgpu_device_gpu_recover()
5413 r = tmp_adev->asic_reset_res; in amdgpu_device_gpu_recover()
5415 tmp_adev->asic_reset_res = 0; in amdgpu_device_gpu_recover()
5419 dev_info(tmp_adev->dev, "GPU reset(%d) failed\n", atomic_read(&tmp_adev->gpu_reset_counter)); in amdgpu_device_gpu_recover()
5420 amdgpu_vf_error_put(tmp_adev, AMDGIM_ERROR_VF_GPU_RESET_FAIL, 0, r); in amdgpu_device_gpu_recover()
5422 dev_info(tmp_adev->dev, "GPU reset(%d) succeeded!\n", atomic_read(&tmp_adev->gpu_reset_counter)); in amdgpu_device_gpu_recover()
5423 if (amdgpu_acpi_smart_shift_update(adev_to_drm(tmp_adev), AMDGPU_SS_DEV_D0)) in amdgpu_device_gpu_recover()
5429 list_for_each_entry(tmp_adev, device_list_handle, reset_list) { in amdgpu_device_gpu_recover()
5431 if (!need_emergency_restart && !amdgpu_sriov_vf(tmp_adev)) in amdgpu_device_gpu_recover()
5432 amdgpu_amdkfd_post_reset(tmp_adev); in amdgpu_device_gpu_recover()
5441 amdgpu_device_resume_display_audio(tmp_adev); in amdgpu_device_gpu_recover()
5443 amdgpu_device_unset_mp1_state(tmp_adev); in amdgpu_device_gpu_recover()
5447 tmp_adev = list_first_entry(device_list_handle, struct amdgpu_device, in amdgpu_device_gpu_recover()
5449 amdgpu_device_unlock_reset_domain(tmp_adev->reset_domain); in amdgpu_device_gpu_recover()