Skip to content

Commit 979feee

Browse files
Alice Chaomartinkpetersen
authored andcommitted
scsi: ufs: host: mediatek: Assign power mode userdata before FASTAUTO mode change
Assign power mode userdata settings before transitioning to FASTAUTO power mode. This ensures that default timeout values are set for various parameters, enhancing the reliability and performance of the power mode change process. Signed-off-by: Alice Chao <alice.chao@mediatek.com> Reviewed-by: Peter Wang <peter.wang@mediatek.com> Signed-off-by: Peter Wang <peter.wang@mediatek.com> Link: https://lore.kernel.org/r/20250811131423.3444014-7-peter.wang@mediatek.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
1 parent 7212d62 commit 979feee

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

drivers/ufs/host/ufs-mediatek.c

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1367,6 +1367,28 @@ static int ufs_mtk_pre_pwr_change(struct ufs_hba *hba,
13671367
ufshcd_dme_set(hba, UIC_ARG_MIB(PA_TXHSADAPTTYPE),
13681368
PA_NO_ADAPT);
13691369

1370+
if (!(hba->quirks & UFSHCD_QUIRK_SKIP_DEF_UNIPRO_TIMEOUT_SETTING)) {
1371+
ufshcd_dme_set(hba, UIC_ARG_MIB(PA_PWRMODEUSERDATA0),
1372+
DL_FC0ProtectionTimeOutVal_Default);
1373+
ufshcd_dme_set(hba, UIC_ARG_MIB(PA_PWRMODEUSERDATA1),
1374+
DL_TC0ReplayTimeOutVal_Default);
1375+
ufshcd_dme_set(hba, UIC_ARG_MIB(PA_PWRMODEUSERDATA2),
1376+
DL_AFC0ReqTimeOutVal_Default);
1377+
ufshcd_dme_set(hba, UIC_ARG_MIB(PA_PWRMODEUSERDATA3),
1378+
DL_FC1ProtectionTimeOutVal_Default);
1379+
ufshcd_dme_set(hba, UIC_ARG_MIB(PA_PWRMODEUSERDATA4),
1380+
DL_TC1ReplayTimeOutVal_Default);
1381+
ufshcd_dme_set(hba, UIC_ARG_MIB(PA_PWRMODEUSERDATA5),
1382+
DL_AFC1ReqTimeOutVal_Default);
1383+
1384+
ufshcd_dme_set(hba, UIC_ARG_MIB(DME_LocalFC0ProtectionTimeOutVal),
1385+
DL_FC0ProtectionTimeOutVal_Default);
1386+
ufshcd_dme_set(hba, UIC_ARG_MIB(DME_LocalTC0ReplayTimeOutVal),
1387+
DL_TC0ReplayTimeOutVal_Default);
1388+
ufshcd_dme_set(hba, UIC_ARG_MIB(DME_LocalAFC0ReqTimeOutVal),
1389+
DL_AFC0ReqTimeOutVal_Default);
1390+
}
1391+
13701392
ret = ufshcd_uic_change_pwr_mode(hba,
13711393
FASTAUTO_MODE << 4 | FASTAUTO_MODE);
13721394

0 commit comments

Comments
 (0)