drm/amdgpu: Add sriov vf ras support in amdgpu_ras_asic_supported
authorYiPeng Chai <YiPeng.Chai@amd.com>
Wed, 28 Sep 2022 07:52:02 +0000 (15:52 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 19 Oct 2022 02:11:48 +0000 (22:11 -0400)
V2:
Add sriov vf ras support in amdgpu_ras_asic_supported.

Signed-off-by: YiPeng Chai <YiPeng.Chai@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c

index 4a8f73c..a4b47e1 100644 (file)
@@ -2267,6 +2267,15 @@ static int amdgpu_ras_recovery_fini(struct amdgpu_device *adev)
 
 static bool amdgpu_ras_asic_supported(struct amdgpu_device *adev)
 {
+       if (amdgpu_sriov_vf(adev)) {
+               switch (adev->ip_versions[MP0_HWIP][0]) {
+               case IP_VERSION(13, 0, 2):
+                       return true;
+               default:
+                       return false;
+               }
+       }
+
        if (adev->asic_type == CHIP_IP_DISCOVERY) {
                switch (adev->ip_versions[MP0_HWIP][0]) {
                case IP_VERSION(13, 0, 0):
@@ -2320,11 +2329,6 @@ static void amdgpu_ras_check_supported(struct amdgpu_device *adev)
            !amdgpu_ras_asic_supported(adev))
                return;
 
-       /* If driver run on sriov guest side, only enable ras for aldebaran */
-       if (amdgpu_sriov_vf(adev) &&
-               adev->ip_versions[MP1_HWIP][0] != IP_VERSION(13, 0, 2))
-               return;
-
        if (!adev->gmc.xgmi.connected_to_cpu) {
                if (amdgpu_atomfirmware_mem_ecc_supported(adev)) {
                        dev_info(adev->dev, "MEM ECC is active.\n");