/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_xgmi.c | 31 #include "xgmi/xgmi_4_0_0_smn.h" 32 #include "xgmi/xgmi_4_0_0_sh_mask.h" 220 return snprintf(buf, PAGE_SIZE, "%llu\n", adev->gmc.xgmi.node_id); in amdgpu_xgmi_show_device_id() 262 /* Create xgmi device id file */ in amdgpu_xgmi_sysfs_add_dev_info() 269 /* Create xgmi error file */ in amdgpu_xgmi_sysfs_add_dev_info() 330 if (!adev->gmc.xgmi.hive_id) in amdgpu_get_xgmi_hive() 342 if (hive->hive_id == adev->gmc.xgmi.hive_id) in amdgpu_get_xgmi_hive() 360 dev_err(adev->dev, "XGMI: failed initializing kobject for xgmi hive\n"); in amdgpu_get_xgmi_hive() 367 hive->hive_id = adev->gmc.xgmi.hive_id; in amdgpu_get_xgmi_hive() 427 dev_dbg(request_adev->dev, "Set xgmi pstat in amdgpu_xgmi_set_pstate() 681 struct amdgpu_xgmi *xgmi = &adev->gmc.xgmi; amdgpu_xgmi_get_relative_phy_addr() local [all...] |
H A D | gfxhub_v1_1.c | 53 /* PF_MAX_REGION=0 means xgmi is disabled */ in gfxhub_v1_1_get_xgmi_info() 55 adev->gmc.xgmi.num_physical_nodes = max_region + 1; in gfxhub_v1_1_get_xgmi_info() 56 if (adev->gmc.xgmi.num_physical_nodes > max_num_physical_nodes) in gfxhub_v1_1_get_xgmi_info() 59 adev->gmc.xgmi.physical_node_id = in gfxhub_v1_1_get_xgmi_info() 61 if (adev->gmc.xgmi.physical_node_id > max_physical_node_id) in gfxhub_v1_1_get_xgmi_info() 63 adev->gmc.xgmi.node_segment_size = REG_GET_FIELD( in gfxhub_v1_1_get_xgmi_info()
|
H A D | amdgpu_xgmi.h | 73 adev->gmc.xgmi.hive_id && in amdgpu_xgmi_same_hive() 74 adev->gmc.xgmi.hive_id == bo_adev->gmc.xgmi.hive_id); in amdgpu_xgmi_same_hive()
|
H A D | gfxhub_v2_1.c | 516 /* PF_MAX_REGION=0 means xgmi is disabled */ in gfxhub_v2_1_get_xgmi_info() 518 adev->gmc.xgmi.num_physical_nodes = max_region + 1; in gfxhub_v2_1_get_xgmi_info() 519 if (adev->gmc.xgmi.num_physical_nodes > max_num_physical_nodes) in gfxhub_v2_1_get_xgmi_info() 522 adev->gmc.xgmi.physical_node_id = in gfxhub_v2_1_get_xgmi_info() 524 if (adev->gmc.xgmi.physical_node_id > max_physical_node_id) in gfxhub_v2_1_get_xgmi_info() 527 adev->gmc.xgmi.node_segment_size = REG_GET_FIELD( in gfxhub_v2_1_get_xgmi_info()
|
H A D | amdgpu_device.c | 2267 if (adev->gmc.xgmi.num_physical_nodes > 1) in amdgpu_device_ip_init() 2479 if (adev->gmc.xgmi.num_physical_nodes > 1) { in amdgpu_device_ip_late_init() 2495 if (mgpu_info.num_dgpu == adev->gmc.xgmi.num_physical_nodes) { in amdgpu_device_ip_late_init() 2536 if (adev->gmc.xgmi.num_physical_nodes > 1) in amdgpu_device_ip_fini() 3059 * Use task barrier to synchronize all xgmi reset works across the in amdgpu_device_xgmi_reset_func() 3061 * until all the threads running the xgmi reset works reach in amdgpu_device_xgmi_reset_func() 4269 list_for_each_entry(tmp_adev, device_list_handle, gmc.xgmi.head) { in amdgpu_do_asic_reset() 4271 if (tmp_adev->gmc.xgmi.num_physical_nodes > 1) { in amdgpu_do_asic_reset() 4287 gmc.xgmi.head) { in amdgpu_do_asic_reset() 4288 if (tmp_adev->gmc.xgmi in amdgpu_do_asic_reset() [all...] |
H A D | gmc_v9_0.c | 729 if (adev->gmc.xgmi.num_physical_nodes && in gmc_v9_0_flush_gpu_tlb() 856 bool vega20_xgmi_wa = (adev->gmc.xgmi.num_physical_nodes && in gmc_v9_0_flush_gpu_tlb_pasid() 1241 /* add the xgmi offset of the physical node */ in gmc_v9_0_vram_gtt_location() 1242 base += adev->gmc.xgmi.physical_node_id * adev->gmc.xgmi.node_segment_size; in gmc_v9_0_vram_gtt_location() 1249 /* XXX: add the xgmi offset of the physical node? */ in gmc_v9_0_vram_gtt_location() 1251 adev->gmc.xgmi.physical_node_id * adev->gmc.xgmi.node_segment_size; in gmc_v9_0_vram_gtt_location() 1465 if (adev->gmc.xgmi.supported) { in gmc_v9_0_sw_init()
|
H A D | gmc_v10_0.c | 697 /* add the xgmi offset of the physical node */ in gmc_v10_0_vram_gtt_location() 698 base += adev->gmc.xgmi.physical_node_id * adev->gmc.xgmi.node_segment_size; in gmc_v10_0_vram_gtt_location() 706 /* add the xgmi offset of the physical node */ in gmc_v10_0_vram_gtt_location() 708 adev->gmc.xgmi.physical_node_id * adev->gmc.xgmi.node_segment_size; in gmc_v10_0_vram_gtt_location() 858 if (adev->gmc.xgmi.supported) { in gmc_v10_0_sw_init()
|
H A D | amdgpu_amdkfd.c | 544 return adev->gmc.xgmi.hive_id; in amdgpu_amdkfd_get_hive_id() 561 DRM_ERROR("amdgpu: failed to get xgmi hops count between node %d and %d. ret = %d\n", in amdgpu_amdkfd_get_xgmi_hops_count() 562 adev->gmc.xgmi.physical_node_id, in amdgpu_amdkfd_get_xgmi_hops_count() 563 peer_adev->gmc.xgmi.physical_node_id, ret); in amdgpu_amdkfd_get_xgmi_hops_count()
|
H A D | amdgpu_gmc.h | 240 struct amdgpu_xgmi xgmi; member
|
H A D | amdgpu_ib.c | 384 } else if (adev->gmc.xgmi.hive_id) { in amdgpu_ib_ring_tests()
|
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_xgmi.c | 30 #include "xgmi/xgmi_4_0_0_smn.h" 31 #include "xgmi/xgmi_4_0_0_sh_mask.h" 32 #include "xgmi/xgmi_6_1_0_sh_mask.h" 324 return sysfs_emit(buf, "%llu\n", adev->gmc.xgmi.node_id); in amdgpu_xgmi_show_device_id() 403 /* Create xgmi device id file */ in amdgpu_xgmi_sysfs_add_dev_info() 410 /* Create xgmi error file */ in amdgpu_xgmi_sysfs_add_dev_info() 415 /* Create xgmi num hops file */ in amdgpu_xgmi_sysfs_add_dev_info() 420 /* Create xgmi num links file */ in amdgpu_xgmi_sysfs_add_dev_info() 485 if (!adev->gmc.xgmi.hive_id) in amdgpu_get_xgmi_hive() 496 if (hive->hive_id == adev->gmc.xgmi in amdgpu_get_xgmi_hive() 899 struct amdgpu_xgmi *xgmi = &adev->gmc.xgmi; amdgpu_xgmi_get_relative_phy_addr() local [all...] |
H A D | gfxhub_v1_1.c | 87 /* PF_MAX_REGION=0 means xgmi is disabled */ in gfxhub_v1_1_get_xgmi_info() 88 if (max_region || adev->gmc.xgmi.connected_to_cpu) { in gfxhub_v1_1_get_xgmi_info() 89 adev->gmc.xgmi.num_physical_nodes = max_region + 1; in gfxhub_v1_1_get_xgmi_info() 91 if (adev->gmc.xgmi.num_physical_nodes > max_num_physical_nodes) in gfxhub_v1_1_get_xgmi_info() 95 adev->gmc.xgmi.physical_node_id = in gfxhub_v1_1_get_xgmi_info() 99 adev->gmc.xgmi.physical_node_id = in gfxhub_v1_1_get_xgmi_info() 104 if (adev->gmc.xgmi.physical_node_id > max_physical_node_id) in gfxhub_v1_1_get_xgmi_info() 107 adev->gmc.xgmi.node_segment_size = seg_size; in gfxhub_v1_1_get_xgmi_info()
|
H A D | amdgpu_xgmi.h | 73 adev->gmc.xgmi.hive_id && in amdgpu_xgmi_same_hive() 74 adev->gmc.xgmi.hive_id == bo_adev->gmc.xgmi.hive_id); in amdgpu_xgmi_same_hive()
|
H A D | amdgpu_gmc.c | 52 u64 vram_size = adev->gmc.xgmi.node_segment_size * adev->gmc.xgmi.num_physical_nodes; in amdgpu_gmc_pdb0_alloc() 219 if (mc->xgmi.num_physical_nodes == 0) { in amdgpu_gmc_vram_location() 247 u64 hive_vram_end = mc->xgmi.node_segment_size * mc->xgmi.num_physical_nodes - 1; in amdgpu_gmc_sysvm_location() 248 mc->vram_start = mc->xgmi.node_segment_size * mc->xgmi.physical_node_id; in amdgpu_gmc_sysvm_location() 249 mc->vram_end = mc->vram_start + mc->xgmi.node_segment_size - 1; in amdgpu_gmc_sysvm_location() 512 /* xgmi ras block */ in amdgpu_gmc_ras_sw_init() 780 u64 vram_size = adev->gmc.xgmi in amdgpu_gmc_init_pdb0() [all...] |
H A D | gmc_v9_0.c | 738 !adev->gmc.xgmi.connected_to_cpu) { in gmc_v9_0_set_irq_funcs() 824 if (adev->gmc.xgmi.num_physical_nodes && in gmc_v9_0_flush_gpu_tlb() 969 bool vega20_xgmi_wa = (adev->gmc.xgmi.num_physical_nodes && in gmc_v9_0_flush_gpu_tlb_pasid() 1209 adev->gmc.xgmi.connected_to_cpu) in gmc_v9_0_get_coherence_flags() 1486 if (!adev->gmc.xgmi.connected_to_cpu) in gmc_v9_0_set_umc_funcs() 1557 if (!adev->gmc.xgmi.connected_to_cpu) { in gmc_v9_0_set_mca_ras_funcs() 1570 if (!adev->gmc.xgmi.connected_to_cpu) in gmc_v9_0_set_xgmi_ras_funcs() 1571 adev->gmc.xgmi.ras = &xgmi_ras; in gmc_v9_0_set_xgmi_ras_funcs() 1585 adev->gmc.xgmi.supported = true; in gmc_v9_0_early_init() 1588 adev->gmc.xgmi in gmc_v9_0_early_init() [all...] |
H A D | gfxhub_v1_2.c | 258 if (adev->gmc.xgmi.connected_to_cpu || adev->gmc.is_app_apu) { in gfxhub_v1_2_xcc_init_cache_regs() 597 /* PF_MAX_REGION=0 means xgmi is disabled */ in gfxhub_v1_2_get_xgmi_info() 598 if (max_region || adev->gmc.xgmi.connected_to_cpu) { in gfxhub_v1_2_get_xgmi_info() 599 adev->gmc.xgmi.num_physical_nodes = max_region + 1; in gfxhub_v1_2_get_xgmi_info() 601 if (adev->gmc.xgmi.num_physical_nodes > max_num_physical_nodes) in gfxhub_v1_2_get_xgmi_info() 604 adev->gmc.xgmi.physical_node_id = in gfxhub_v1_2_get_xgmi_info() 608 if (adev->gmc.xgmi.physical_node_id > max_physical_node_id) in gfxhub_v1_2_get_xgmi_info() 611 adev->gmc.xgmi.node_segment_size = seg_size; in gfxhub_v1_2_get_xgmi_info()
|
H A D | aldebaran.c | 39 adev->gmc.xgmi.connected_to_cpu)) in aldebaran_is_mode2_default() 176 if (tmp_adev->gmc.xgmi.num_physical_nodes > 1) { in aldebaran_mode2_perform_reset() 193 if (tmp_adev->gmc.xgmi.num_physical_nodes > 1) { in aldebaran_mode2_perform_reset() 390 tmp_adev->gmc.xgmi.num_physical_nodes > 1) in aldebaran_mode2_restore_hwcontext()
|
H A D | amdgpu_amdkfd.c | 556 DRM_ERROR("amdgpu: failed to get xgmi hops count between node %d and %d. ret = %d\n", in amdgpu_amdkfd_get_xgmi_hops_count() 557 adev->gmc.xgmi.physical_node_id, in amdgpu_amdkfd_get_xgmi_hops_count() 558 peer_adev->gmc.xgmi.physical_node_id, ret); in amdgpu_amdkfd_get_xgmi_hops_count() 580 DRM_ERROR("amdgpu: failed to get xgmi num links between node %d and %d. ret = %d\n", in amdgpu_amdkfd_get_xgmi_bandwidth_mbytes() 581 adev->gmc.xgmi.physical_node_id, in amdgpu_amdkfd_get_xgmi_bandwidth_mbytes() 582 peer_adev->gmc.xgmi.physical_node_id, num_links); in amdgpu_amdkfd_get_xgmi_bandwidth_mbytes()
|
H A D | amdgpu_device.c | 1228 if (adev->gmc.xgmi.pending_reset) in amdgpu_device_need_post() 2419 if (adev->gmc.xgmi.num_physical_nodes > 1) { in amdgpu_device_ip_init() 2449 if (!adev->gmc.xgmi.pending_reset) { in amdgpu_device_ip_init() 2678 ((adev->asic_type == CHIP_ARCTURUS && adev->gmc.xgmi.num_physical_nodes > 1) || in amdgpu_device_ip_late_init() 2682 if (adev->gmc.xgmi.num_physical_nodes > 1) { in amdgpu_device_ip_late_init() 2698 if (mgpu_info.num_dgpu == adev->gmc.xgmi.num_physical_nodes) { in amdgpu_device_ip_late_init() 2812 if (adev->gmc.xgmi.num_physical_nodes > 1) in amdgpu_device_ip_fini() 2961 if (adev->gmc.xgmi.pending_reset && in amdgpu_device_ip_suspend_phase2() 3342 * Use task barrier to synchronize all xgmi reset works across the in amdgpu_device_xgmi_reset_func() 3344 * until all the threads running the xgmi rese in amdgpu_device_xgmi_reset_func() [all...] |
H A D | gfxhub_v2_1.c | 522 /* PF_MAX_REGION=0 means xgmi is disabled */ in gfxhub_v2_1_get_xgmi_info() 524 adev->gmc.xgmi.num_physical_nodes = max_region + 1; in gfxhub_v2_1_get_xgmi_info() 525 if (adev->gmc.xgmi.num_physical_nodes > max_num_physical_nodes) in gfxhub_v2_1_get_xgmi_info() 528 adev->gmc.xgmi.physical_node_id = in gfxhub_v2_1_get_xgmi_info() 530 if (adev->gmc.xgmi.physical_node_id > max_physical_node_id) in gfxhub_v2_1_get_xgmi_info() 533 adev->gmc.xgmi.node_segment_size = REG_GET_FIELD( in gfxhub_v2_1_get_xgmi_info()
|
H A D | amdgpu_ras.c | 1156 if (adev->gmc.xgmi.num_physical_nodes > 1 && in amdgpu_ras_error_inject() 1166 else /* Special ras_error_inject is defined (e.g: xgmi) */ in amdgpu_ras_error_inject() 2032 if (hive && adev->gmc.xgmi.num_physical_nodes > 1) { in amdgpu_ras_do_recovery() 2036 list_add_tail(&adev->gmc.xgmi.head, &device_list); in amdgpu_ras_do_recovery() 2041 device_list_handle, gmc.xgmi.head) { in amdgpu_ras_do_recovery() 2333 if (adev->gmc.xgmi.pending_reset) in amdgpu_ras_recovery_init() 2358 (adev->gmc.xgmi.connected_to_cpu)) in amdgpu_ras_recovery_init() 2468 if (!adev->gmc.xgmi.connected_to_cpu && !adev->gmc.is_app_apu) { in amdgpu_ras_check_supported() 2499 * XGMI RAS is not supported if xgmi num physical nodes in amdgpu_ras_check_supported() 2502 if (!adev->gmc.xgmi in amdgpu_ras_check_supported() [all...] |
H A D | gmc_v10_0.c | 776 /* add the xgmi offset of the physical node */ in gmc_v10_0_vram_gtt_location() 777 base += adev->gmc.xgmi.physical_node_id * adev->gmc.xgmi.node_segment_size; in gmc_v10_0_vram_gtt_location() 786 /* add the xgmi offset of the physical node */ in gmc_v10_0_vram_gtt_location() 788 adev->gmc.xgmi.physical_node_id * adev->gmc.xgmi.node_segment_size; in gmc_v10_0_vram_gtt_location()
|
H A D | amdgpu_psp.c | 258 /* free xgmi shared memory */ in psp_free_shared_bufs() 415 !adev->gmc.xgmi.connected_to_cpu && in psp_sw_init() 1220 adev->gmc.xgmi.connected_to_cpu)) in psp_xgmi_terminate() 1284 /* Invoke xgmi ta to get hive id */ in psp_xgmi_get_hive_id() 1304 /* Invoke xgmi ta to get the node id */ in psp_xgmi_get_node_id() 1333 uint64_t src_node_id = psp->adev->gmc.xgmi.node_id; in psp_xgmi_reflect_topology_info() 1339 list_for_each_entry(mirror_adev, &hive->device_list, gmc.xgmi.head) { in psp_xgmi_reflect_topology_info() 1343 if (mirror_adev->gmc.xgmi.node_id != dst_node_id) in psp_xgmi_reflect_topology_info() 1399 /* Invoke xgmi ta to get the topology information */ in psp_xgmi_get_topology_info() 1423 /* Invoke xgmi t in psp_xgmi_get_topology_info() [all...] |
H A D | amdgpu_gmc.h | 292 struct amdgpu_xgmi xgmi; member
|
H A D | amdgpu_umc.c | 172 if (adev->gmc.xgmi.connected_to_cpu || in amdgpu_umc_poison_handler()
|