mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-05 15:49:42 -04:00
drm/amdgpu: Use wafl version for xgmi
XGMI and WAFL share the same versions. Use WAFL version if XGMI version is not present in discovery. Signed-off-by: Lijo Lazar <lijo.lazar@amd.com> Reviewed-by: Asad Kamal <asad.kamal@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
@@ -1290,6 +1290,7 @@ static int amdgpu_discovery_reg_base_init(struct amdgpu_device *adev)
|
||||
uint16_t die_offset;
|
||||
uint16_t ip_offset;
|
||||
uint16_t num_dies;
|
||||
uint32_t wafl_ver;
|
||||
uint16_t num_ips;
|
||||
uint16_t hw_id;
|
||||
uint8_t inst;
|
||||
@@ -1303,6 +1304,7 @@ static int amdgpu_discovery_reg_base_init(struct amdgpu_device *adev)
|
||||
return r;
|
||||
}
|
||||
|
||||
wafl_ver = 0;
|
||||
adev->gfx.xcc_mask = 0;
|
||||
adev->sdma.sdma_mask = 0;
|
||||
adev->vcn.inst_mask = 0;
|
||||
@@ -1403,6 +1405,10 @@ static int amdgpu_discovery_reg_base_init(struct amdgpu_device *adev)
|
||||
adev->gfx.xcc_mask |=
|
||||
(1U << ip->instance_number);
|
||||
|
||||
if (!wafl_ver && le16_to_cpu(ip->hw_id) == WAFLC_HWID)
|
||||
wafl_ver = IP_VERSION_FULL(ip->major, ip->minor,
|
||||
ip->revision, 0, 0);
|
||||
|
||||
for (k = 0; k < num_base_address; k++) {
|
||||
/*
|
||||
* convert the endianness of base addresses in place,
|
||||
@@ -1468,6 +1474,9 @@ static int amdgpu_discovery_reg_base_init(struct amdgpu_device *adev)
|
||||
}
|
||||
}
|
||||
|
||||
if (wafl_ver && !adev->ip_versions[XGMI_HWIP][0])
|
||||
adev->ip_versions[XGMI_HWIP][0] = wafl_ver;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -2772,10 +2781,6 @@ int amdgpu_discovery_set_ip_blocks(struct amdgpu_device *adev)
|
||||
break;
|
||||
}
|
||||
|
||||
if (amdgpu_ip_version(adev, GC_HWIP, 0) == IP_VERSION(9, 4, 3) ||
|
||||
amdgpu_ip_version(adev, GC_HWIP, 0) == IP_VERSION(9, 4, 4))
|
||||
adev->ip_versions[XGMI_HWIP][0] = IP_VERSION(6, 4, 0);
|
||||
|
||||
/* set NBIO version */
|
||||
switch (amdgpu_ip_version(adev, NBIO_HWIP, 0)) {
|
||||
case IP_VERSION(6, 1, 0):
|
||||
|
||||
Reference in New Issue
Block a user