| /drivers/gpu/drm/amd/amdgpu/ |
| A D | amdgpu_umc.c | 109 if (adev->umc.ras && adev->umc.ras->ras_block.hw_ops && in amdgpu_umc_handle_bad_pages() 113 if (adev->umc.ras && adev->umc.ras->ras_block.hw_ops && in amdgpu_umc_handle_bad_pages() 136 if (adev->umc.ras && in amdgpu_umc_handle_bad_pages() 140 if (adev->umc.ras && in amdgpu_umc_handle_bad_pages() 289 if (!adev->umc.ras) in amdgpu_umc_ras_sw_init() 292 ras = adev->umc.ras; in amdgpu_umc_ras_sw_init() 332 if (adev->umc.ras && in amdgpu_umc_ras_late_init() 407 adev->umc.active_mask, adev->umc.umc_inst_num); in amdgpu_umc_loop_all_aid() 409 adev->umc.node_inst_num * adev->umc.umc_inst_num) { in amdgpu_umc_loop_all_aid() 501 if (adev->umc.ras && adev->umc.ras->convert_ras_err_addr) in amdgpu_umc_pages_in_a_row() [all …]
|
| A D | umc_v8_10.c | 216 adev->umc.channel_idx_tbl[node_inst * adev->umc.umc_inst_num * in umc_v8_10_convert_error_address() 217 adev->umc.channel_inst_num + in umc_v8_10_convert_error_address() 218 umc_inst * adev->umc.channel_inst_num + in umc_v8_10_convert_error_address() 343 eccinfo_table_idx = node_inst * adev->umc.umc_inst_num * in umc_v8_10_ecc_info_query_correctable_error_count() 344 adev->umc.channel_inst_num + in umc_v8_10_ecc_info_query_correctable_error_count() 345 umc_inst * adev->umc.channel_inst_num + in umc_v8_10_ecc_info_query_correctable_error_count() 362 eccinfo_table_idx = node_inst * adev->umc.umc_inst_num * in umc_v8_10_ecc_info_query_uncorrectable_error_count() 363 adev->umc.channel_inst_num + in umc_v8_10_ecc_info_query_uncorrectable_error_count() 364 umc_inst * adev->umc.channel_inst_num + in umc_v8_10_ecc_info_query_uncorrectable_error_count() 411 adev->umc.channel_inst_num + in umc_v8_10_ecc_info_query_error_address() [all …]
|
| A D | gmc_v9_0.c | 1413 adev->umc.funcs = &umc_v6_0_funcs; in gmc_v9_0_set_umc_funcs() 1420 adev->umc.retire_unit = 1; in gmc_v9_0_set_umc_funcs() 1422 adev->umc.ras = &umc_v6_1_ras; in gmc_v9_0_set_umc_funcs() 1429 adev->umc.retire_unit = 1; in gmc_v9_0_set_umc_funcs() 1431 adev->umc.ras = &umc_v6_1_ras; in gmc_v9_0_set_umc_funcs() 1434 adev->umc.max_ras_err_cnt_per_query = in gmc_v9_0_set_umc_funcs() 1441 adev->umc.ras = &umc_v6_7_ras; in gmc_v9_0_set_umc_funcs() 1449 adev->umc.max_ras_err_cnt_per_query = in gmc_v9_0_set_umc_funcs() 1456 adev->umc.ras = &umc_v12_0_ras; in gmc_v9_0_set_umc_funcs() 2216 if (adev->umc.funcs && adev->umc.funcs->init_registers) in gmc_v9_0_hw_init() [all …]
|
| A D | umc_v6_7.c | 50 uint32_t index = umc_inst * adev->umc.channel_inst_num + ch_inst; in get_umc_v6_7_reg_offset() 57 return adev->umc.channel_offs * ch_inst + UMC_V6_7_INST_DIST * umc_inst; in get_umc_v6_7_reg_offset() 106 eccinfo_table_idx = umc_inst * adev->umc.channel_inst_num + ch_inst; in umc_v6_7_ecc_info_query_correctable_error_count() 119 adev->umc.channel_idx_tbl[umc_inst * adev->umc.channel_inst_num + ch_inst]; in umc_v6_7_ecc_info_query_correctable_error_count() 148 eccinfo_table_idx = umc_inst * adev->umc.channel_inst_num + ch_inst; in umc_v6_7_ecc_info_querry_uncorrectable_error_count() 195 adev->umc.channel_idx_tbl[umc_inst * adev->umc.channel_inst_num + ch_inst]; in umc_v6_7_convert_error_address() 231 eccinfo_table_idx = umc_inst * adev->umc.channel_inst_num + ch_inst; in umc_v6_7_ecc_info_query_error_address() 319 adev->umc.channel_idx_tbl[umc_inst * adev->umc.channel_inst_num + ch_inst]; in umc_v6_7_query_correctable_error_count()
|
| A D | umc_v12_0.c | 39 uint32_t index = umc_inst * adev->umc.channel_inst_num + ch_inst; in get_umc_v12_0_reg_offset() 181 struct amdgpu_umc_flip_bits *flip_bits = &(adev->umc.flip_bits); in umc_v12_0_get_retire_flip_bits() 232 adev->umc.retire_unit = 0x1 << flip_bits->bit_num; in umc_v12_0_get_retire_flip_bits() 271 flip_bits = adev->umc.flip_bits.flip_bits_in_pa; in umc_v12_0_convert_error_address() 272 bit_num = adev->umc.flip_bits.bit_num; in umc_v12_0_convert_error_address() 273 retire_unit = adev->umc.retire_unit; in umc_v12_0_convert_error_address() 286 row_lower &= ~BIT_ULL(adev->umc.flip_bits.flip_row_bit); in umc_v12_0_convert_error_address() 289 row_high = (soc_pa >> adev->umc.flip_bits.r13_in_pa) & 0x3ULL; in umc_v12_0_convert_error_address() 309 row = ((column >> 3) << adev->umc.flip_bits.flip_row_bit) | in umc_v12_0_convert_error_address() 490 adev->umc.err_addr_cnt / adev->umc.retire_unit : 1ULL; in umc_v12_0_aca_bank_parser() [all …]
|
| A D | amdgpu_umc.h | 45 #define LOOP_UMC_INST(umc_inst) for ((umc_inst) = 0; (umc_inst) < adev->umc.umc_inst_num; (umc_inst… 46 #define LOOP_UMC_CH_INST(ch_inst) for ((ch_inst) = 0; (ch_inst) < adev->umc.channel_inst_num; (ch_i… 50 for_each_set_bit((node_inst), &(adev->umc.active_mask), adev->umc.node_inst_num) 189 uint64_t err_addr, uint32_t ch, uint32_t umc,
|
| A D | gmc_v11_0.c | 545 adev->umc.channel_inst_num = UMC_V8_10_CHANNEL_INSTANCE_NUM; in gmc_v11_0_set_umc_funcs() 546 adev->umc.umc_inst_num = UMC_V8_10_UMC_INSTANCE_NUM; in gmc_v11_0_set_umc_funcs() 547 adev->umc.max_ras_err_cnt_per_query = UMC_V8_10_TOTAL_CHANNEL_NUM(adev); in gmc_v11_0_set_umc_funcs() 548 adev->umc.channel_offs = UMC_V8_10_PER_CHANNEL_OFFSET; in gmc_v11_0_set_umc_funcs() 549 adev->umc.retire_unit = UMC_V8_10_NA_COL_2BITS_POWER_OF_2_NUM; in gmc_v11_0_set_umc_funcs() 550 if (adev->umc.node_inst_num == 4) in gmc_v11_0_set_umc_funcs() 551 adev->umc.channel_idx_tbl = &umc_v8_10_channel_idx_tbl_ext0[0][0][0]; in gmc_v11_0_set_umc_funcs() 553 adev->umc.channel_idx_tbl = &umc_v8_10_channel_idx_tbl[0][0][0]; in gmc_v11_0_set_umc_funcs() 554 adev->umc.ras = &umc_v8_10_ras; in gmc_v11_0_set_umc_funcs() 936 if (adev->umc.funcs && adev->umc.funcs->init_registers) in gmc_v11_0_hw_init() [all …]
|
| A D | amdgpu_ras.c | 1030 if (adev->umc.ras && adev->umc.ras->ras_block.hw_ops && in amdgpu_ras_get_ecc_info() 1037 if (adev->umc.ras && adev->umc.ras->ras_block.hw_ops && in amdgpu_ras_get_ecc_info() 1041 if (adev->umc.ras && in amdgpu_ras_get_ecc_info() 1045 if (adev->umc.ras && in amdgpu_ras_get_ecc_info() 2764 if (adev->umc.ras && adev->umc.ras->convert_ras_err_addr) in amdgpu_ras_mca2pa_by_idx() 2784 if (adev->umc.ras && adev->umc.ras->get_die_id_from_pa) in amdgpu_ras_mca2pa() 2801 if (adev->umc.ras && adev->umc.ras->convert_ras_err_addr) in amdgpu_ras_mca2pa() 3093 if (adev->umc.ras && adev->umc.ras->convert_ras_err_addr) { in amdgpu_ras_load_bad_pages() 3511 if (!adev->umc.ras || !adev->umc.ras->convert_ras_err_addr) in amdgpu_ras_init_badpage_info() 3514 if (adev->umc.ras && in amdgpu_ras_init_badpage_info() [all …]
|
| A D | umc_v8_7.c | 47 return adev->umc.channel_offs*ch_inst + UMC_8_INST_DIST*umc_inst; in get_umc_v8_7_reg_offset() 58 eccinfo_table_idx = umc_inst * adev->umc.channel_inst_num + ch_inst; in umc_v8_7_ecc_info_query_correctable_error_count() 77 eccinfo_table_idx = umc_inst * adev->umc.channel_inst_num + ch_inst; in umc_v8_7_ecc_info_querry_uncorrectable_error_count() 119 adev->umc.channel_idx_tbl[umc_inst * adev->umc.channel_inst_num + ch_inst]; in umc_v8_7_convert_error_address() 139 eccinfo_table_idx = umc_inst * adev->umc.channel_inst_num + ch_inst; in umc_v8_7_ecc_info_query_error_address()
|
| A D | gmc_v10_0.c | 582 adev->umc.max_ras_err_cnt_per_query = UMC_V8_7_TOTAL_CHANNEL_NUM; in gmc_v10_0_set_umc_funcs() 583 adev->umc.channel_inst_num = UMC_V8_7_CHANNEL_INSTANCE_NUM; in gmc_v10_0_set_umc_funcs() 584 adev->umc.umc_inst_num = UMC_V8_7_UMC_INSTANCE_NUM; in gmc_v10_0_set_umc_funcs() 585 adev->umc.channel_offs = UMC_V8_7_PER_CHANNEL_OFFSET_SIENNA; in gmc_v10_0_set_umc_funcs() 586 adev->umc.retire_unit = 1; in gmc_v10_0_set_umc_funcs() 587 adev->umc.channel_idx_tbl = &umc_v8_7_channel_idx_tbl[0][0]; in gmc_v10_0_set_umc_funcs() 588 adev->umc.ras = &umc_v8_7_ras; in gmc_v10_0_set_umc_funcs() 1011 if (adev->umc.funcs && adev->umc.funcs->init_registers) in gmc_v10_0_hw_init() 1012 adev->umc.funcs->init_registers(adev); in gmc_v10_0_hw_init()
|
| A D | gmc_v12_0.c | 562 adev->umc.channel_inst_num = UMC_V8_14_CHANNEL_INSTANCE_NUM; in gmc_v12_0_set_umc_funcs() 563 adev->umc.umc_inst_num = UMC_V8_14_UMC_INSTANCE_NUM(adev); in gmc_v12_0_set_umc_funcs() 564 adev->umc.node_inst_num = 0; in gmc_v12_0_set_umc_funcs() 565 adev->umc.max_ras_err_cnt_per_query = UMC_V8_14_TOTAL_CHANNEL_NUM(adev); in gmc_v12_0_set_umc_funcs() 566 adev->umc.channel_offs = UMC_V8_14_PER_CHANNEL_OFFSET; in gmc_v12_0_set_umc_funcs() 567 adev->umc.ras = &umc_v8_14_ras; in gmc_v12_0_set_umc_funcs() 904 if (adev->umc.funcs && adev->umc.funcs->init_registers) in gmc_v12_0_hw_init() 905 adev->umc.funcs->init_registers(adev); in gmc_v12_0_hw_init()
|
| A D | umc_v6_1.c | 91 return adev->umc.channel_offs*ch_inst + UMC_6_INST_DIST*umc_inst; in get_umc_6_reg_offset() 303 …uint32_t channel_index = adev->umc.channel_idx_tbl[umc_inst * adev->umc.channel_inst_num + ch_inst… in umc_v6_1_query_error_address()
|
| A D | umc_v8_14.h | 32 #define UMC_V8_14_UMC_INSTANCE_NUM(adev) ((adev)->umc.node_inst_num)
|
| A D | umc_v8_14.c | 34 return adev->umc.channel_offs * ch_inst + UMC_V8_14_INST_DIST * umc_inst; in get_umc_v8_14_reg_offset()
|
| A D | amdgpu_mca.c | 33 if (adev->umc.ras->check_ecc_err_status) in amdgpu_mca_is_deferred_error() 34 return adev->umc.ras->check_ecc_err_status(adev, in amdgpu_mca_is_deferred_error()
|
| A D | amdgpu_ras_eeprom.c | 747 control->ras_num_mca_recs * adev->umc.retire_unit; in amdgpu_ras_eeprom_append_table() 1461 control->ras_num_mca_recs * adev->umc.retire_unit; in amdgpu_ras_eeprom_check()
|
| A D | amdgpu_discovery.c | 774 adev->umc.active_mask = ((1 << adev->umc.node_inst_num) - 1) & in amdgpu_discovery_read_from_harvest_table() 1436 adev->umc.node_inst_num++; in amdgpu_discovery_reg_base_init()
|
| A D | amdgpu.h | 1145 struct amdgpu_umc umc; member
|
| A D | amdgpu_psp.c | 1986 ras_cmd->ras_in_message.init_flags.active_umc_mask = adev->umc.active_mask; in psp_ras_initialize()
|
| /drivers/edac/ |
| A D | amd64_edac.c | 1361 umc = &pvt->umc[i]; in umc_dump_misc_regs() 1439 int umc; in umc_prep_chip_selects() local 1559 umc = &pvt->umc[i]; in umc_determine_memory_type() 2927 umc = &pvt->umc[i]; in umc_read_mc_regs() 3115 dimm->mtype = pvt->umc[umc].dram_type; in umc_init_csrows() 3382 umc = &pvt->umc[i]; in umc_ecc_enabled() 3555 umc = &pvt->umc[i]; in gpu_dump_misc_regs() 3644 umc *= 2; in gpu_get_umc_base() 3647 umc++; in gpu_get_umc_base() 3661 umc = &pvt->umc[i]; in gpu_read_mc_regs() [all …]
|
| A D | amd64_edac.h | 382 struct amd64_umc *umc; /* UMC registers */ member
|
| /drivers/ras/amd/atl/ |
| A D | Makefile | 16 amd_atl-y += umc.o
|
| /drivers/scsi/ |
| A D | megaraid.c | 3500 megacmd_t __user *umc; in mega_n_to_m() local 3520 umc = MBOX_P(uiocp); in mega_n_to_m() 3522 if (get_user(upthru, (mega_passthru __user * __user *)&umc->xferaddr)) in mega_n_to_m() 3537 umc = (megacmd_t __user *)uioc_mimd->mbox; in mega_n_to_m() 3539 if (get_user(upthru, (mega_passthru __user * __user *)&umc->xferaddr)) in mega_n_to_m()
|