struct amdgpu_device *adev = smu->adev;
        uint32_t mp1_fw_flags;
 
-       mp1_fw_flags = RREG32_PCIE(MP1_Public |
-                                  (smnMP1_FIRMWARE_FLAGS & 0xffffffff));
+       switch (adev->ip_versions[MP1_HWIP][0]) {
+       case IP_VERSION(13, 0, 4):
+               mp1_fw_flags = RREG32_PCIE(MP1_Public |
+                                          (smnMP1_V13_0_4_FIRMWARE_FLAGS & 0xffffffff));
+               break;
+       default:
+               mp1_fw_flags = RREG32_PCIE(MP1_Public |
+                                          (smnMP1_FIRMWARE_FLAGS & 0xffffffff));
+               break;
+       }
 
        if ((mp1_fw_flags & MP1_FIRMWARE_FLAGS__INTERRUPTS_ENABLED_MASK) >>
            MP1_FIRMWARE_FLAGS__INTERRUPTS_ENABLED__SHIFT)