On Thu, Jan 16, 2025 at 05:11:45PM +0800, Ziqi Chen wrote: > From: Can Guo <quic_cang@xxxxxxxxxxx> > > Implement the freq_to_gear_speed() vops to map the unipro core clock > frequency to the corresponding maximum supported gear speed. > > Co-developed-by: Ziqi Chen <quic_ziqichen@xxxxxxxxxxx> > Signed-off-by: Ziqi Chen <quic_ziqichen@xxxxxxxxxxx> > Signed-off-by: Can Guo <quic_cang@xxxxxxxxxxx> > --- > drivers/ufs/host/ufs-qcom.c | 32 ++++++++++++++++++++++++++++++++ > 1 file changed, 32 insertions(+) > > diff --git a/drivers/ufs/host/ufs-qcom.c b/drivers/ufs/host/ufs-qcom.c > index 1e8a23eb8c13..64263fa884f5 100644 > --- a/drivers/ufs/host/ufs-qcom.c > +++ b/drivers/ufs/host/ufs-qcom.c > @@ -1803,6 +1803,37 @@ static int ufs_qcom_config_esi(struct ufs_hba *hba) > return ret; > } > > +static int ufs_qcom_freq_to_gear_speed(struct ufs_hba *hba, unsigned long freq, u32 *gear) > +{ > + int ret = 0; Please do not initialize ret with 0. Return the actual value directly. > + > + switch (freq) { > + case 403000000: > + *gear = UFS_HS_G5; > + break; > + case 300000000: > + *gear = UFS_HS_G4; > + break; > + case 201500000: > + *gear = UFS_HS_G3; > + break; > + case 150000000: > + case 100000000: > + *gear = UFS_HS_G2; > + break; > + case 75000000: > + case 37500000: > + *gear = UFS_HS_G1; > + break; > + default: > + ret = -EINVAL; > + dev_err(hba->dev, "Unsupported clock freq\n"); Print the freq. - Mani > + break; > + } > + > + return ret; > +} > + > /* > * struct ufs_hba_qcom_vops - UFS QCOM specific variant operations > * > @@ -1833,6 +1864,7 @@ static const struct ufs_hba_variant_ops ufs_hba_qcom_vops = { > .op_runtime_config = ufs_qcom_op_runtime_config, > .get_outstanding_cqs = ufs_qcom_get_outstanding_cqs, > .config_esi = ufs_qcom_config_esi, > + .freq_to_gear_speed = ufs_qcom_freq_to_gear_speed, > }; > > /** > -- > 2.34.1 > -- மணிவண்ணன் சதாசிவம்