Commit be2e8aca authored by Yang Wang's avatar Yang Wang Committed by Alex Deucher

drm/amdgpu: enable FRU device for SMU v13.0.6

v1:
enable GFX v9.4.3 FRU device to query board information.

v2:
use MP1 version to identify different asic
Signed-off-by: default avatarYang Wang <kevinyang.wang@amd.com>
Reviewed-by: default avatarLijo Lazar <lijo.lazar@amd.com>
Acked-by: default avatarAlex Deucher <alexander.deucher@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 6cb8e3ee
...@@ -57,6 +57,8 @@ static bool is_fru_eeprom_supported(struct amdgpu_device *adev, u32 *fru_addr) ...@@ -57,6 +57,8 @@ static bool is_fru_eeprom_supported(struct amdgpu_device *adev, u32 *fru_addr)
* for ease/speed/readability. For now, 2 string comparisons are * for ease/speed/readability. For now, 2 string comparisons are
* reasonable and not too expensive * reasonable and not too expensive
*/ */
switch (amdgpu_ip_version(adev, MP1_HWIP, 0)) {
case IP_VERSION(11, 0, 2):
switch (adev->asic_type) { switch (adev->asic_type) {
case CHIP_VEGA20: case CHIP_VEGA20:
/* D161 and D163 are the VG20 server SKUs */ /* D161 and D163 are the VG20 server SKUs */
...@@ -70,14 +72,11 @@ static bool is_fru_eeprom_supported(struct amdgpu_device *adev, u32 *fru_addr) ...@@ -70,14 +72,11 @@ static bool is_fru_eeprom_supported(struct amdgpu_device *adev, u32 *fru_addr)
} else { } else {
return false; return false;
} }
case CHIP_ALDEBARAN: case CHIP_ARCTURUS:
/* All Aldebaran SKUs have an FRU */ default:
if (!strnstr(atom_ctx->vbios_pn, "D673", return false;
sizeof(atom_ctx->vbios_pn))) }
if (fru_addr) case IP_VERSION(11, 0, 7):
*fru_addr = FRU_EEPROM_MADDR_6;
return true;
case CHIP_SIENNA_CICHLID:
if (strnstr(atom_ctx->vbios_pn, "D603", if (strnstr(atom_ctx->vbios_pn, "D603",
sizeof(atom_ctx->vbios_pn))) { sizeof(atom_ctx->vbios_pn))) {
if (strnstr(atom_ctx->vbios_pn, "D603GLXE", if (strnstr(atom_ctx->vbios_pn, "D603GLXE",
...@@ -92,6 +91,17 @@ static bool is_fru_eeprom_supported(struct amdgpu_device *adev, u32 *fru_addr) ...@@ -92,6 +91,17 @@ static bool is_fru_eeprom_supported(struct amdgpu_device *adev, u32 *fru_addr)
} else { } else {
return false; return false;
} }
case IP_VERSION(13, 0, 2):
/* All Aldebaran SKUs have an FRU */
if (!strnstr(atom_ctx->vbios_pn, "D673",
sizeof(atom_ctx->vbios_pn)))
if (fru_addr)
*fru_addr = FRU_EEPROM_MADDR_6;
return true;
case IP_VERSION(13, 0, 6):
if (fru_addr)
*fru_addr = FRU_EEPROM_MADDR_8;
return true;
default: default:
return false; return false;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment