Symbol: ras_umc
drivers/gpu/drm/amd/ras/rascore/ras.h
154
struct ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras.h
327
struct ras_umc ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_cmd.c
113
mutex_unlock(&ras_core->ras_umc.umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_cmd.c
82
mutex_lock(&ras_core->ras_umc.umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_eeprom_fw.c
275
if (!ras_core->ras_umc.ip_func ||
drivers/gpu/drm/amd/ras/rascore/ras_eeprom_fw.c
276
!ras_core->ras_umc.ip_func->mca_ipid_parse)
drivers/gpu/drm/amd/ras/rascore/ras_eeprom_fw.c
302
ras_core->ras_umc.ip_func->mca_ipid_parse(ras_core, ipid,
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
127
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
130
mutex_lock(&ras_umc->tree_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
131
ret = radix_tree_insert(&ras_umc->root, idx, data);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
133
radix_tree_tag_set(&ras_umc->root, idx, UMC_ECC_NEW_DETECTED_TAG);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
134
mutex_unlock(&ras_umc->tree_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
141
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
147
mutex_lock(&ras_umc->tree_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
148
radix_tree_for_each_slot(slot, &ras_umc->root, iter, 0) {
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
149
data = ras_radix_tree_delete_iter(&ras_umc->root, iter);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
152
mutex_unlock(&ras_umc->tree_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
162
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
167
if (ras_umc->ip_func && ras_umc->ip_func->eeprom_record_to_nps_pages)
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
168
count = ras_umc->ip_func->eeprom_record_to_nps_pages(ras_core,
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
205
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
208
mutex_lock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
209
if (ras_umc->pending_ecc_count >= RAS_UMC_PENDING_ECC_MAX) {
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
210
ras_umc->pending_ecc_dropped++;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
211
mutex_unlock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
214
RAS_UMC_PENDING_ECC_MAX, ras_umc->pending_ecc_dropped);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
217
mutex_unlock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
225
mutex_lock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
227
if (ras_umc->pending_ecc_count >= RAS_UMC_PENDING_ECC_MAX) {
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
228
ras_umc->pending_ecc_dropped++;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
229
mutex_unlock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
233
list_add_tail(&ecc_node->node, &ras_umc->pending_ecc_list);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
234
ras_umc->pending_ecc_count++;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
235
mutex_unlock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
244
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
247
mutex_lock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
249
tmp, &ras_umc->pending_ecc_list, node){
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
253
if (ras_umc->pending_ecc_count)
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
254
ras_umc->pending_ecc_count--;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
257
if (ras_umc->pending_ecc_dropped) {
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
260
ras_umc->pending_ecc_dropped);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
261
ras_umc->pending_ecc_dropped = 0;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
263
mutex_unlock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
270
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
277
mutex_lock(&ras_umc->bank_log_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
278
ret = ras_umc->ip_func->bank_to_eeprom_record(ras_core, bank, &umc_rec);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
306
mutex_unlock(&ras_umc->bank_log_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
313
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
319
mutex_lock(&ras_umc->tree_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
320
new_detected = radix_tree_gang_lookup_tag(&ras_umc->root, (void **)entries,
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
328
radix_tree_tag_clear(&ras_umc->root,
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
331
mutex_unlock(&ras_umc->tree_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
339
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
340
struct eeprom_store_record *data = &ras_umc->umc_err_data.rom_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
345
nps = ras_umc->umc_err_data.umc_nps_mode;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
346
if (ras_umc->ip_func && ras_umc->ip_func->eeprom_record_to_nps_record) {
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
347
ret = ras_umc->ip_func->eeprom_record_to_nps_record(ras_core, record, nps);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
390
struct eeprom_store_record *data = &ras_core->ras_umc.umc_err_data.rom_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
406
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
407
struct eeprom_store_record *data = &ras_umc->umc_err_data.ram_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
439
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
440
struct ras_umc_err_data *data = &ras_umc->umc_err_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
446
mutex_lock(&ras_umc->umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
468
mutex_unlock(&ras_umc->umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
507
ras_core->ras_umc.umc_err_data.last_retired_pfn = UMC_INV_MEM_PFN;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
522
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
523
struct eeprom_store_record *data = &ras_umc->umc_err_data.rom_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
535
mutex_lock(&ras_umc->umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
555
mutex_unlock(&ras_umc->umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
598
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
600
memset(ras_umc, 0, sizeof(*ras_umc));
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
602
INIT_LIST_HEAD(&ras_umc->pending_ecc_list);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
604
INIT_RADIX_TREE(&ras_umc->root, GFP_KERNEL);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
606
mutex_init(&ras_umc->tree_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
607
mutex_init(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
608
mutex_init(&ras_umc->umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
609
mutex_init(&ras_umc->bank_log_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
616
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
617
struct ras_umc_err_data *umc_err_data = &ras_umc->umc_err_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
620
mutex_destroy(&ras_umc->umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
621
mutex_destroy(&ras_umc->bank_log_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
639
mutex_lock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
641
tmp, &ras_umc->pending_ecc_list, node){
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
645
ras_umc->pending_ecc_count = 0;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
646
ras_umc->pending_ecc_dropped = 0;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
647
mutex_unlock(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
649
mutex_destroy(&ras_umc->tree_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
650
mutex_destroy(&ras_umc->pending_ecc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
657
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
667
ras_umc->umc_err_data.umc_nps_mode = nps;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
669
ras_umc->umc_vram_type = ras_core->config->umc_cfg.umc_vram_type;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
670
if (!ras_umc->umc_vram_type) {
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
672
ras_umc->umc_vram_type);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
676
ras_umc->umc_ip_version = ras_core->config->umc_ip_version;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
677
ras_umc->ip_func = ras_umc_get_ip_func(ras_core, ras_umc->umc_ip_version);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
678
if (!ras_umc->ip_func)
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
691
struct ras_umc_err_data *data = &ras_core->ras_umc.umc_err_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
693
mutex_lock(&ras_core->ras_umc.umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
699
mutex_unlock(&ras_core->ras_umc.umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
728
struct ras_umc_err_data *err_data = &ras_core->ras_umc.umc_err_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
735
struct eeprom_store_record *data = &ras_core->ras_umc.umc_err_data.ram_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
742
struct eeprom_store_record *data = &ras_core->ras_umc.umc_err_data.ram_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
753
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
754
struct eeprom_store_record *data = &ras_umc->umc_err_data.ram_data;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
758
mutex_lock(&ras_umc->umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
765
mutex_unlock(&ras_umc->umc_lock);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
773
struct ras_umc *ras_umc = &ras_core->ras_umc;
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
777
ret = ras_umc->ip_func->bank_to_soc_pa(ras_core, *bank_addr, soc_pa);
drivers/gpu/drm/amd/ras/rascore/ras_umc.c
779
ret = ras_umc->ip_func->soc_pa_to_bank(ras_core, *soc_pa, bank_addr);
drivers/gpu/drm/amd/ras/rascore/ras_umc_v12_0.c
66
uint32_t vram_type = ras_core->ras_umc.umc_vram_type;