From: Le Ma <[email protected]>

On multi-node configurations without XGMI interconnect (e.g. A+A),
num_physical_nodes can be greater than 1 even though XGMI is not supported.

Signed-off-by: Le Ma <[email protected]>
Reviewed-by: Hawking Zhang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c 
b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 1503bbf473c49..36cc11ff3dd4c 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -2500,7 +2500,8 @@ static int amdgpu_device_ip_init(struct amdgpu_device 
*adev)
        /**
         * In case of XGMI grab extra reference for reset domain for this device
         */
-       if (adev->gmc.xgmi.num_physical_nodes > 1) {
+       if (adev->gmc.xgmi.num_physical_nodes > 1 &&
+           adev->gmc.xgmi.supported) {
                if (amdgpu_xgmi_add_device(adev) == 0) {
                        if (!amdgpu_sriov_vf(adev)) {
                                struct amdgpu_hive_info *hive = 
amdgpu_get_xgmi_hive(adev);
@@ -2783,7 +2784,7 @@ static int amdgpu_device_ip_late_init(struct 
amdgpu_device *adev)
             adev->asic_type == CHIP_ALDEBARAN))
                amdgpu_dpm_handle_passthrough_sbr(adev, true);
 
-       if (adev->gmc.xgmi.num_physical_nodes > 1) {
+       if (adev->gmc.xgmi.num_physical_nodes > 1 && adev->gmc.xgmi.supported) {
                mutex_lock(&mgpu_info.mutex);
 
                /*
@@ -2946,7 +2947,7 @@ static int amdgpu_device_ip_fini(struct amdgpu_device 
*adev)
        if (amdgpu_sriov_vf(adev) && adev->virt.ras_init_done)
                amdgpu_virt_release_ras_err_handler_data(adev);
 
-       if (adev->gmc.xgmi.num_physical_nodes > 1)
+       if (adev->gmc.xgmi.num_physical_nodes > 1 && adev->gmc.xgmi.supported)
                amdgpu_xgmi_remove_device(adev);
 
        amdgpu_amdkfd_device_fini_sw(adev);
-- 
2.55.0

Reply via email to