Message ID | 1654013693-21484-1-git-send-email-quic_kriskura@quicinc.com |
---|---|
Headers | show |
Series | Add QCOM SNPS PHY overriding params support | expand |
On Tue, May 31, 2022 at 09:44:52PM +0530, Krishna Kurapati wrote: > Add support for overriding electrical signal tuning parameters for > SNPS HS Phy. > > Signed-off-by: Krishna Kurapati <quic_kriskura@quicinc.com> > --- > drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c | 268 +++++++++++++++++++++++++- > 1 file changed, 266 insertions(+), 2 deletions(-) > > diff --git a/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c b/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c > index 5d20378..3a17216 100644 > --- a/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c > +++ b/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c > @@ -52,6 +52,12 @@ > #define USB2_SUSPEND_N BIT(2) > #define USB2_SUSPEND_N_SEL BIT(3) > <snip> > +static void qcom_snps_hsphy_override_param_update_val( > + const struct override_param_map map, > + s32 dt_val, struct phy_override_seq *seq_entry) > +{ > + int i; > + > + /* > + * Param table for each param is in increasing order > + * of dt values. We need to iterate over the list to > + * select the entry that has equal or the next highest value. > + */ > + for (i = 0; i < map.table_size - 1; i++) { > + if (map.param_table[i].value >= dt_val) > + break; > + } > + > + seq_entry->need_update = true; > + seq_entry->offset = map.reg_offset; > + seq_entry->mask = map.param_mask; > + seq_entry->value = map.param_table[i].reg << __ffs(map.param_mask); > +} > + > +static void qcom_snps_hsphy_read_override_param_seq(struct device *dev) > +{ > + struct device_node *node = dev->of_node; > + s32 val; > + int ret, i; > + struct qcom_snps_hsphy *hsphy; > + const struct override_param_map *cfg = > + (struct override_param_map *) of_device_get_match_data(dev); As mentioned in the previous patch-set, the explicit typecast is not needed. overall, looks good to me. After fixing the above, feel free to use Reviewed-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com> Thanks, Pavan
On 6/1/2022 7:38 AM, Pavan Kondeti wrote: > On Tue, May 31, 2022 at 09:44:52PM +0530, Krishna Kurapati wrote: >> Add support for overriding electrical signal tuning parameters for >> SNPS HS Phy. >> >> Signed-off-by: Krishna Kurapati <quic_kriskura@quicinc.com> >> --- >> drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c | 268 +++++++++++++++++++++++++- >> 1 file changed, 266 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c b/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c >> index 5d20378..3a17216 100644 >> --- a/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c >> +++ b/drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c >> @@ -52,6 +52,12 @@ >> #define USB2_SUSPEND_N BIT(2) >> #define USB2_SUSPEND_N_SEL BIT(3) >> > <snip> > >> +static void qcom_snps_hsphy_override_param_update_val( >> + const struct override_param_map map, >> + s32 dt_val, struct phy_override_seq *seq_entry) >> +{ >> + int i; >> + >> + /* >> + * Param table for each param is in increasing order >> + * of dt values. We need to iterate over the list to >> + * select the entry that has equal or the next highest value. >> + */ >> + for (i = 0; i < map.table_size - 1; i++) { >> + if (map.param_table[i].value >= dt_val) >> + break; >> + } >> + >> + seq_entry->need_update = true; >> + seq_entry->offset = map.reg_offset; >> + seq_entry->mask = map.param_mask; >> + seq_entry->value = map.param_table[i].reg << __ffs(map.param_mask); >> +} >> + >> +static void qcom_snps_hsphy_read_override_param_seq(struct device *dev) >> +{ >> + struct device_node *node = dev->of_node; >> + s32 val; >> + int ret, i; >> + struct qcom_snps_hsphy *hsphy; >> + const struct override_param_map *cfg = >> + (struct override_param_map *) of_device_get_match_data(dev); > As mentioned in the previous patch-set, the explicit typecast is not needed. > > overall, looks good to me. After fixing the above, feel free to use > > Reviewed-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com> > > Thanks, > Pavan My bad, Thanks for the review Pavan. Will fix it in the next patch.