scsi: ufs: host: mediatek: Remove duplicate function
Remove the duplicate ufs_mtk_us_to_ahit() function in the UFS Mediatek driver and export the existing ufshcd_us_to_ahit() function for shared use. This change reduces redundancy and maintains consistency across the codebase. Signed-off-by: Peter Wang <peter.wang@mediatek.com> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Acked-by: Chun-Hung Wu <chun-hung.wu@mediatek.com> Link: https://patch.msgid.link/20250924094527.2992256-7-peter.wang@mediatek.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
committed by
Martin K. Petersen
parent
014de20bb3
commit
9b2b03b361
@@ -235,7 +235,7 @@ static int ufshcd_ahit_to_us(u32 ahit)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Convert microseconds to Auto-Hibernate Idle Timer register value */
|
/* Convert microseconds to Auto-Hibernate Idle Timer register value */
|
||||||
static u32 ufshcd_us_to_ahit(unsigned int timer)
|
u32 ufshcd_us_to_ahit(unsigned int timer)
|
||||||
{
|
{
|
||||||
unsigned int scale;
|
unsigned int scale;
|
||||||
|
|
||||||
@@ -245,6 +245,7 @@ static u32 ufshcd_us_to_ahit(unsigned int timer)
|
|||||||
return FIELD_PREP(UFSHCI_AHIBERN8_TIMER_MASK, timer) |
|
return FIELD_PREP(UFSHCI_AHIBERN8_TIMER_MASK, timer) |
|
||||||
FIELD_PREP(UFSHCI_AHIBERN8_SCALE_MASK, scale);
|
FIELD_PREP(UFSHCI_AHIBERN8_SCALE_MASK, scale);
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(ufshcd_us_to_ahit);
|
||||||
|
|
||||||
static int ufshcd_read_hci_reg(struct ufs_hba *hba, u32 *val, unsigned int reg)
|
static int ufshcd_read_hci_reg(struct ufs_hba *hba, u32 *val, unsigned int reg)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1109,18 +1109,6 @@ static void ufs_mtk_setup_clk_gating(struct ufs_hba *hba)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Convert microseconds to Auto-Hibernate Idle Timer register value */
|
|
||||||
static u32 ufs_mtk_us_to_ahit(unsigned int timer)
|
|
||||||
{
|
|
||||||
unsigned int scale;
|
|
||||||
|
|
||||||
for (scale = 0; timer > UFSHCI_AHIBERN8_TIMER_MASK; ++scale)
|
|
||||||
timer /= UFSHCI_AHIBERN8_SCALE_FACTOR;
|
|
||||||
|
|
||||||
return FIELD_PREP(UFSHCI_AHIBERN8_TIMER_MASK, timer) |
|
|
||||||
FIELD_PREP(UFSHCI_AHIBERN8_SCALE_MASK, scale);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void ufs_mtk_fix_ahit(struct ufs_hba *hba)
|
static void ufs_mtk_fix_ahit(struct ufs_hba *hba)
|
||||||
{
|
{
|
||||||
unsigned int us;
|
unsigned int us;
|
||||||
@@ -1143,7 +1131,7 @@ static void ufs_mtk_fix_ahit(struct ufs_hba *hba)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
hba->ahit = ufs_mtk_us_to_ahit(us);
|
hba->ahit = ufshcd_us_to_ahit(us);
|
||||||
}
|
}
|
||||||
|
|
||||||
ufs_mtk_setup_clk_gating(hba);
|
ufs_mtk_setup_clk_gating(hba);
|
||||||
|
|||||||
@@ -1488,5 +1488,6 @@ int ufshcd_update_ee_control(struct ufs_hba *hba, u16 *mask,
|
|||||||
const u16 *other_mask, u16 set, u16 clr);
|
const u16 *other_mask, u16 set, u16 clr);
|
||||||
void ufshcd_force_error_recovery(struct ufs_hba *hba);
|
void ufshcd_force_error_recovery(struct ufs_hba *hba);
|
||||||
void ufshcd_pm_qos_update(struct ufs_hba *hba, bool on);
|
void ufshcd_pm_qos_update(struct ufs_hba *hba, bool on);
|
||||||
|
u32 ufshcd_us_to_ahit(unsigned int timer);
|
||||||
|
|
||||||
#endif /* End of Header */
|
#endif /* End of Header */
|
||||||
|
|||||||
Reference in New Issue
Block a user