mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
drm/amd/pp: Clear smu response register before send smu message
smu firmware do not update response register immediately under some delay tasks, we may read out the original value. so need to clear the register before send smu message. Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Rex Zhu <Rex.Zhu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
5b79d0482f
commit
8db42a7013
@ -208,9 +208,7 @@ static int ci_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
|
||||
{
|
||||
int ret;
|
||||
|
||||
if (!ci_is_smc_ram_running(hwmgr))
|
||||
return -EINVAL;
|
||||
|
||||
cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0);
|
||||
cgs_write_register(hwmgr->device, mmSMC_MESSAGE_0, msg);
|
||||
|
||||
PHM_WAIT_FIELD_UNEQUAL(hwmgr, SMC_RESP_0, SMC_RESP, 0);
|
||||
|
@ -176,6 +176,7 @@ int smu7_send_msg_to_smc(struct pp_hwmgr *hwmgr, uint16_t msg)
|
||||
else if (ret != 1)
|
||||
pr_info("\n last message was failed ret is %d\n", ret);
|
||||
|
||||
cgs_write_register(hwmgr->device, mmSMC_RESP_0, 0);
|
||||
cgs_write_register(hwmgr->device, mmSMC_MESSAGE_0, msg);
|
||||
|
||||
PHM_WAIT_FIELD_UNEQUAL(hwmgr, SMC_RESP_0, SMC_RESP, 0);
|
||||
|
Loading…
Reference in New Issue
Block a user