Lines Matching full:ras
125 if (adev->umc.ras && adev->umc.ras->ras_block.hw_ops && in amdgpu_umc_handle_bad_pages()
126 adev->umc.ras->ras_block.hw_ops->query_ras_error_count) in amdgpu_umc_handle_bad_pages()
127 adev->umc.ras->ras_block.hw_ops->query_ras_error_count(adev, in amdgpu_umc_handle_bad_pages()
130 if (adev->umc.ras && adev->umc.ras->ras_block.hw_ops && in amdgpu_umc_handle_bad_pages()
131 adev->umc.ras->ras_block.hw_ops->query_ras_error_address && in amdgpu_umc_handle_bad_pages()
151 adev->umc.ras->ras_block.hw_ops->query_ras_error_address(adev, in amdgpu_umc_handle_bad_pages()
156 if (adev->umc.ras && in amdgpu_umc_handle_bad_pages()
157 adev->umc.ras->ecc_info_query_ras_error_count) in amdgpu_umc_handle_bad_pages()
158 adev->umc.ras->ecc_info_query_ras_error_count(adev, in amdgpu_umc_handle_bad_pages()
161 if (adev->umc.ras && in amdgpu_umc_handle_bad_pages()
162 adev->umc.ras->ecc_info_query_ras_error_address && in amdgpu_umc_handle_bad_pages()
182 adev->umc.ras->ecc_info_query_ras_error_address(adev, in amdgpu_umc_handle_bad_pages()
329 struct amdgpu_umc_ras *ras; in amdgpu_umc_ras_sw_init() local
331 if (!adev->umc.ras) in amdgpu_umc_ras_sw_init()
334 ras = adev->umc.ras; in amdgpu_umc_ras_sw_init()
336 err = amdgpu_ras_register_ras_block(adev, &ras->ras_block); in amdgpu_umc_ras_sw_init()
338 dev_err(adev->dev, "Failed to register umc ras block!\n"); in amdgpu_umc_ras_sw_init()
342 strcpy(adev->umc.ras->ras_block.ras_comm.name, "umc"); in amdgpu_umc_ras_sw_init()
343 ras->ras_block.ras_comm.block = AMDGPU_RAS_BLOCK__UMC; in amdgpu_umc_ras_sw_init()
344 ras->ras_block.ras_comm.type = AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE; in amdgpu_umc_ras_sw_init()
345 adev->umc.ras_if = &ras->ras_block.ras_comm; in amdgpu_umc_ras_sw_init()
347 if (!ras->ras_block.ras_late_init) in amdgpu_umc_ras_sw_init()
348 ras->ras_block.ras_late_init = amdgpu_umc_ras_late_init; in amdgpu_umc_ras_sw_init()
350 if (!ras->ras_block.ras_cb) in amdgpu_umc_ras_sw_init()
351 ras->ras_block.ras_cb = amdgpu_umc_process_ras_data_cb; in amdgpu_umc_ras_sw_init()
373 /* ras init of specific umc version */ in amdgpu_umc_ras_late_init()
374 if (adev->umc.ras && in amdgpu_umc_ras_late_init()
375 adev->umc.ras->err_cnt_init) in amdgpu_umc_ras_late_init()
376 adev->umc.ras->err_cnt_init(adev); in amdgpu_umc_ras_late_init()
519 if (adev->umc.ras->update_ecc_status) in amdgpu_umc_update_ecc_status()
520 return adev->umc.ras->update_ecc_status(adev, in amdgpu_umc_update_ecc_status()
554 if (adev->umc.ras && adev->umc.ras->convert_ras_err_addr) in amdgpu_umc_pages_in_a_row()
555 return adev->umc.ras->convert_ras_err_addr(adev, err_data, NULL, in amdgpu_umc_pages_in_a_row()
607 if (adev->umc.ras && adev->umc.ras->convert_ras_err_addr) { in amdgpu_umc_mca_to_addr()
608 ret = adev->umc.ras->convert_ras_err_addr(adev, NULL, &addr_in, in amdgpu_umc_mca_to_addr()
631 dev_warn(adev->dev, "Failed to query RAS MCA address for 0x%llx", in amdgpu_umc_pa2mca()