drm/amd/pm: Send message when resp status is 0xFC
authorLijo Lazar <lijo.lazar@amd.com>
Fri, 25 Feb 2022 04:13:49 +0000 (09:43 +0530)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 15 Mar 2022 18:25:16 +0000 (14:25 -0400)
When PMFW is really busy, it will respond with 0xFC. However, it doesn't
change the response register state when it becomes free. Driver should
retry and proceed to send message if the response status is 0xFC.

Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
Reviewed-by: Evan Quan <evan.quan@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/pm/swsmu/smu_cmn.c

index 89b22b2..ae64d19 100644 (file)
@@ -303,7 +303,6 @@ int smu_cmn_send_msg_without_waiting(struct smu_context *smu,
        reg = __smu_cmn_poll_stat(smu);
        res = __smu_cmn_reg2errno(smu, reg);
        if (reg == SMU_RESP_NONE ||
-           reg == SMU_RESP_BUSY_OTHER ||
            res == -EREMOTEIO)
                goto Out;
        __smu_cmn_send_msg(smu, msg_index, param);
@@ -397,7 +396,6 @@ int smu_cmn_send_smc_msg_with_param(struct smu_context *smu,
        reg = __smu_cmn_poll_stat(smu);
        res = __smu_cmn_reg2errno(smu, reg);
        if (reg == SMU_RESP_NONE ||
-           reg == SMU_RESP_BUSY_OTHER ||
            res == -EREMOTEIO) {
                __smu_cmn_reg_print_error(smu, reg, index, param, msg);
                goto Out;