Re: [PATCH] regulator: rt6160: Convert to use regulator_set_ramp_delay_regmap

From: cy_huang(黃啟原)
Date: Thu Jun 03 2021 - 11:18:54 EST


Hi,> >
> > cy_huang(黃啟原) <cy_huang@xxxxxxxxxxx> 於 2021年6月3日 週四 下午6:20寫道:
> > >
> > >
> > >
> > > Hi, Axel:> Use regulator_set_ramp_delay_regmap instead of open-coded.
> > > >
> > > >
> > > >
> > > There's some reason.
> > > You can refer to https://lkml.org/lkml/2021/6/1/1145.
> > >
> > > It's because our ramp value order is from small to large, not large to
> > > small.
> > > It conflicts with find_closest_bigger value chosen logic.
> > I have verified the rt6160_set_ramp_delay() behavior exactly the same as
> > regulator_set_ramp_delay_regmap. (both functions get the same selector
> > for a given delay)
> >
> > Could you check if this patch works?
> Sure.
After my test sample code, below's the result.
ascending [1000 2500 5000 10000]
target = 1000 =>sel = 0
target = 2500 =>sel = 1
target = 5000 =>sel = 2
target = 10000 =>sel = 3
target = 1700 =>sel = 1
target = 2750 =>sel = 2
target = 7500 =>sel = 3
target = 15000 =>failed to find best select, sel = 3
target = 0 =>sel = 0
descending [10000 5000 2500 1000]
target = 1000 =>sel = 3
target = 2500 =>sel = 2
target = 5000 =>sel = 1
target = 10000 =>sel = 0
target = 1700 =>sel = 2
target = 2750 =>sel = 1
target = 7500 =>sel = 0
target = 15000 =>failed to find best select, sel = 0
target = 0 =>sel = 3


It means when target is in range or even over, the result are all correct.
But like as the ramp target is equal to 0, the selection will only choose the minimum one.
When the ramp target is equal to 0, it means the user want to disable the rammpping function.

As I know, if target is equal to 0, it must find the fastest rampping value as the best selection.
> >
> >
> > Thanks,
> > Axel
************* Email Confidentiality Notice ********************

The information contained in this e-mail message (including any attachments) may be confidential, proprietary, privileged, or otherwise exempt from disclosure under applicable laws. It is intended to be conveyed only to the designated recipient(s). Any use, dissemination, distribution, printing, retaining or copying of this e-mail (including its attachments) by unintended recipient(s) is strictly prohibited and may be unlawful. If you are not an intended recipient of this e-mail, or believe that you have received this e-mail in error, please notify the sender immediately (by replying to this e-mail), delete any and all copies of this e-mail (including any attachments) from your system, and do not disclose the content of this e-mail to any other person. Thank you!