diff options
author | Hawking Zhang <Hawking.Zhang@amd.com> | 2018-09-29 09:52:50 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2018-11-06 14:02:45 -0500 |
commit | 593caa07ad6ad43bcd9edb36d828000053af7e2d (patch) | |
tree | 1af4bb13746c9b38885af014762e2c1a830572ca /drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | |
parent | 4b93151f57d873b271bb25cf1fb8f230792ba75a (diff) |
drm/amdgpu/psp: update topology info structures
topology info structure needs to match with the one defined
in xgmi ta
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Reviewed-by: Shaoyun Liu <Shaoyun.Liu@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c index 32896ba12c67..e92b4548db49 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.c | |||
@@ -63,7 +63,7 @@ static struct amdgpu_hive_info *amdgpu_get_xgmi_hive(struct amdgpu_device *adev) | |||
63 | 63 | ||
64 | int amdgpu_xgmi_add_device(struct amdgpu_device *adev) | 64 | int amdgpu_xgmi_add_device(struct amdgpu_device *adev) |
65 | { | 65 | { |
66 | struct psp_xgmi_topology_info tmp_topology[AMDGPU_MAX_XGMI_DEVICE_PER_HIVE]; | 66 | struct psp_xgmi_topology_info tmp_topology; |
67 | struct amdgpu_hive_info *hive; | 67 | struct amdgpu_hive_info *hive; |
68 | struct amdgpu_xgmi *entry; | 68 | struct amdgpu_xgmi *entry; |
69 | struct amdgpu_device *tmp_adev; | 69 | struct amdgpu_device *tmp_adev; |
@@ -76,7 +76,7 @@ int amdgpu_xgmi_add_device(struct amdgpu_device *adev) | |||
76 | adev->gmc.xgmi.node_id = psp_xgmi_get_node_id(&adev->psp); | 76 | adev->gmc.xgmi.node_id = psp_xgmi_get_node_id(&adev->psp); |
77 | adev->gmc.xgmi.hive_id = psp_xgmi_get_hive_id(&adev->psp); | 77 | adev->gmc.xgmi.hive_id = psp_xgmi_get_hive_id(&adev->psp); |
78 | 78 | ||
79 | memset(&tmp_topology[0], 0, sizeof(tmp_topology)); | 79 | memset(&tmp_topology, 0, sizeof(tmp_topology)); |
80 | mutex_lock(&xgmi_mutex); | 80 | mutex_lock(&xgmi_mutex); |
81 | hive = amdgpu_get_xgmi_hive(adev); | 81 | hive = amdgpu_get_xgmi_hive(adev); |
82 | if (!hive) | 82 | if (!hive) |
@@ -84,9 +84,9 @@ int amdgpu_xgmi_add_device(struct amdgpu_device *adev) | |||
84 | 84 | ||
85 | list_add_tail(&adev->gmc.xgmi.head, &hive->device_list); | 85 | list_add_tail(&adev->gmc.xgmi.head, &hive->device_list); |
86 | list_for_each_entry(entry, &hive->device_list, head) | 86 | list_for_each_entry(entry, &hive->device_list, head) |
87 | tmp_topology[count++].node_id = entry->node_id; | 87 | tmp_topology.nodes[count++].node_id = entry->node_id; |
88 | 88 | ||
89 | ret = psp_xgmi_get_topology_info(&adev->psp, count, tmp_topology); | 89 | ret = psp_xgmi_get_topology_info(&adev->psp, count, &tmp_topology); |
90 | if (ret) { | 90 | if (ret) { |
91 | dev_err(adev->dev, | 91 | dev_err(adev->dev, |
92 | "XGMI: Get topology failure on device %llx, hive %llx, ret %d", | 92 | "XGMI: Get topology failure on device %llx, hive %llx, ret %d", |
@@ -96,7 +96,7 @@ int amdgpu_xgmi_add_device(struct amdgpu_device *adev) | |||
96 | } | 96 | } |
97 | /* Each psp need to set the latest topology */ | 97 | /* Each psp need to set the latest topology */ |
98 | list_for_each_entry(tmp_adev, &hive->device_list, gmc.xgmi.head) { | 98 | list_for_each_entry(tmp_adev, &hive->device_list, gmc.xgmi.head) { |
99 | ret = psp_xgmi_set_topology_info(&tmp_adev->psp, count, tmp_topology); | 99 | ret = psp_xgmi_set_topology_info(&tmp_adev->psp, count, &tmp_topology); |
100 | if (ret) { | 100 | if (ret) { |
101 | dev_err(tmp_adev->dev, | 101 | dev_err(tmp_adev->dev, |
102 | "XGMI: Set topology failure on device %llx, hive %llx, ret %d", | 102 | "XGMI: Set topology failure on device %llx, hive %llx, ret %d", |
@@ -115,5 +115,3 @@ exit: | |||
115 | mutex_unlock(&xgmi_mutex); | 115 | mutex_unlock(&xgmi_mutex); |
116 | return ret; | 116 | return ret; |
117 | } | 117 | } |
118 | |||
119 | |||