Lines Matching refs:ras
937 struct amdgpu_ras *ras = amdgpu_ras_get_context(adev); in amdgpu_ras_get_ecc_info() local
944 ret = amdgpu_dpm_get_ecc_info(adev, (void *)&(ras->umc_ecc)); in amdgpu_ras_get_ecc_info()
946 if (adev->umc.ras && adev->umc.ras->ras_block.hw_ops && in amdgpu_ras_get_ecc_info()
947 adev->umc.ras->ras_block.hw_ops->query_ras_error_count) in amdgpu_ras_get_ecc_info()
948 adev->umc.ras->ras_block.hw_ops->query_ras_error_count(adev, err_data); in amdgpu_ras_get_ecc_info()
953 if (adev->umc.ras && adev->umc.ras->ras_block.hw_ops && in amdgpu_ras_get_ecc_info()
954 adev->umc.ras->ras_block.hw_ops->query_ras_error_address) in amdgpu_ras_get_ecc_info()
955 adev->umc.ras->ras_block.hw_ops->query_ras_error_address(adev, err_data); in amdgpu_ras_get_ecc_info()
957 if (adev->umc.ras && in amdgpu_ras_get_ecc_info()
958 adev->umc.ras->ecc_info_query_ras_error_count) in amdgpu_ras_get_ecc_info()
959 adev->umc.ras->ecc_info_query_ras_error_count(adev, err_data); in amdgpu_ras_get_ecc_info()
961 if (adev->umc.ras && in amdgpu_ras_get_ecc_info()
962 adev->umc.ras->ecc_info_query_ras_error_address) in amdgpu_ras_get_ecc_info()
963 adev->umc.ras->ecc_info_query_ras_error_address(adev, err_data); in amdgpu_ras_get_ecc_info()
1550 if (adev->nbio.ras && in amdgpu_ras_interrupt_fatal_error_handler()
1551 adev->nbio.ras->handle_ras_controller_intr_no_bifring) in amdgpu_ras_interrupt_fatal_error_handler()
1552 adev->nbio.ras->handle_ras_controller_intr_no_bifring(adev); in amdgpu_ras_interrupt_fatal_error_handler()
1554 if (adev->nbio.ras && in amdgpu_ras_interrupt_fatal_error_handler()
1555 adev->nbio.ras->handle_ras_err_event_athub_intr_no_bifring) in amdgpu_ras_interrupt_fatal_error_handler()
1556 adev->nbio.ras->handle_ras_err_event_athub_intr_no_bifring(adev); in amdgpu_ras_interrupt_fatal_error_handler()
1919 struct amdgpu_ras *ras = in amdgpu_ras_do_recovery() local
1922 struct amdgpu_device *adev = ras->adev; in amdgpu_ras_do_recovery()
1925 if (!ras->disable_ras_err_cnt_harvest) { in amdgpu_ras_do_recovery()
1946 if (amdgpu_device_should_recover_gpu(ras->adev)) { in amdgpu_ras_do_recovery()
1954 amdgpu_device_gpu_recover(ras->adev, NULL, &reset_context); in amdgpu_ras_do_recovery()
1956 atomic_set(&ras->in_recovery, 0); in amdgpu_ras_do_recovery()
2066 &adev->psp.ras_context.ras->eeprom_control; in amdgpu_ras_load_bad_pages()
2458 adev->nbio.ras = &nbio_v7_4_ras; in amdgpu_ras_init()
2459 amdgpu_ras_register_ras_block(adev, &adev->nbio.ras->ras_block); in amdgpu_ras_init()
2460 adev->nbio.ras_if = &adev->nbio.ras->ras_block.ras_comm; in amdgpu_ras_init()
2468 if (adev->nbio.ras && in amdgpu_ras_init()
2469 adev->nbio.ras->init_ras_controller_interrupt) { in amdgpu_ras_init()
2470 r = adev->nbio.ras->init_ras_controller_interrupt(adev); in amdgpu_ras_init()
2475 if (adev->nbio.ras && in amdgpu_ras_init()
2476 adev->nbio.ras->init_ras_err_event_athub_interrupt) { in amdgpu_ras_init()
2477 r = adev->nbio.ras->init_ras_err_event_athub_interrupt(adev); in amdgpu_ras_init()
2489 adev->umc.ras && in amdgpu_ras_init()
2490 adev->umc.ras->query_ras_poison_mode) { in amdgpu_ras_init()
2494 adev->umc.ras->query_ras_poison_mode(adev); in amdgpu_ras_init()
2902 if (adev->umc.ras && in amdgpu_bad_page_notifier()
2903 adev->umc.ras->convert_ras_error_address) in amdgpu_bad_page_notifier()
2904 adev->umc.ras->convert_ras_error_address(adev, in amdgpu_bad_page_notifier()
2950 return adev->psp.ras_context.ras; in amdgpu_ras_get_context()
2958 adev->psp.ras_context.ras = ras_con; in amdgpu_ras_set_context()
2966 struct amdgpu_ras *ras = amdgpu_ras_get_context(adev); in amdgpu_ras_is_supported() local
2970 return ras && (adev->ras_enabled & (1 << block)); in amdgpu_ras_is_supported()
2975 struct amdgpu_ras *ras = amdgpu_ras_get_context(adev); in amdgpu_ras_reset_gpu() local
2977 if (atomic_cmpxchg(&ras->in_recovery, 0, 1) == 0) in amdgpu_ras_reset_gpu()
2978 amdgpu_reset_domain_schedule(ras->adev->reset_domain, &ras->recovery_work); in amdgpu_ras_reset_gpu()