mirror of
https://github.com/torvalds/linux.git
synced 2026-05-31 18:43:33 +02:00
scsi: ufs: host: mediatek: Handle broken RTC based on DTS setting
Introduce a mechanism to handle broken RTC by checking the DTS setting. The configuration is specifically required for legacy platform. Signed-off-by: Peter Wang <peter.wang@mediatek.com> Link: https://lore.kernel.org/r/20250722030841.1998783-5-peter.wang@mediatek.com Reviewed-by: Chun-Hung Wu <chun-hung.wu@mediatek.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
16b30c7a4c
commit
a44ff97f89
|
|
@ -679,6 +679,9 @@ static void ufs_mtk_init_host_caps(struct ufs_hba *hba)
|
|||
if (of_property_read_bool(np, "mediatek,ufs-rtff-mtcmos"))
|
||||
host->caps |= UFS_MTK_CAP_RTFF_MTCMOS;
|
||||
|
||||
if (of_property_read_bool(np, "mediatek,ufs-broken-rtc"))
|
||||
host->caps |= UFS_MTK_CAP_MCQ_BROKEN_RTC;
|
||||
|
||||
dev_info(hba->dev, "caps: 0x%x", host->caps);
|
||||
}
|
||||
|
||||
|
|
@ -1035,8 +1038,11 @@ static int ufs_mtk_init(struct ufs_hba *hba)
|
|||
shost->rpm_autosuspend_delay = MTK_RPM_AUTOSUSPEND_DELAY_MS;
|
||||
|
||||
hba->quirks |= UFSHCI_QUIRK_SKIP_MANUAL_WB_FLUSH_CTRL;
|
||||
|
||||
hba->quirks |= UFSHCD_QUIRK_MCQ_BROKEN_INTR;
|
||||
hba->quirks |= UFSHCD_QUIRK_MCQ_BROKEN_RTC;
|
||||
if (host->caps & UFS_MTK_CAP_MCQ_BROKEN_RTC)
|
||||
hba->quirks |= UFSHCD_QUIRK_MCQ_BROKEN_RTC;
|
||||
|
||||
hba->vps->wb_flush_threshold = UFS_WB_BUF_REMAIN_PERCENT(80);
|
||||
|
||||
if (host->caps & UFS_MTK_CAP_DISABLE_AH8)
|
||||
|
|
|
|||
|
|
@ -133,6 +133,8 @@ enum ufs_mtk_host_caps {
|
|||
UFS_MTK_CAP_DISABLE_MCQ = 1 << 8,
|
||||
/* Control MTCMOS with RTFF */
|
||||
UFS_MTK_CAP_RTFF_MTCMOS = 1 << 9,
|
||||
|
||||
UFS_MTK_CAP_MCQ_BROKEN_RTC = 1 << 10,
|
||||
};
|
||||
|
||||
struct ufs_mtk_crypt_cfg {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user