Messages in this thread | | | Date | Fri, 19 Nov 2021 10:11:20 +0200 | Subject | Re: [RFC PATCH v3 6/9] power: supply: Add batinfo functions for OCV to SOC with 0.1% accuracy | From | Matti Vaittinen <> |
| |
On 11/19/21 03:49, Linus Walleij wrote: > On Tue, Nov 16, 2021 at 1:27 PM Matti Vaittinen > <matti.vaittinen@fi.rohmeurope.com> wrote: > >> The battery info functions computing the state-of-charge (SOC) based >> on open-circuit-voltage (OCV) are returning SOC using units of 1%. >> >> Some capacity estimation computations require higher accuracy. Add >> functions that return SOC using units of 0.1% to reduce rounding error. >> >> Signed-off-by: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> > > That sounds useful. > >> +int power_supply_ocv2dcap_simple(struct power_supply_battery_ocv_table *table, >> + int table_len, int ocv) >> +{ >> + int i, cap, tmp; > > Why a whole new function? Just rename the original power_supply_ocv2cap_simple() > to power_supply_ocv2dcap_simple and patch it to return the finegrained value, > then add a wrapper that use that function but drops it down by one order > of magnitude.
/me feels slightly stupid. I wonder ehy you had to explain this to me :) Well, thanks and agreed!
> >> +int power_supply_batinfo_ocv2dcap(struct power_supply_battery_info *info, >> + int ocv, int temp) > > Same with this, saves a lot of code! > > (Also will use my new interpolation routines since you refactor > on top of that.)
yup. I think this will be _much_ cleaner. I need to revise also the IC driver patches because I think I implemented something like your interpolation routines there too. So - thanks.
Best Regards Matti
| |