Thread (31 messages) 31 messages, 4 authors, 2021-12-05

Re: [RFC PATCH v3 6/9] power: supply: Add batinfo functions for OCV to SOC with 0.1% accuracy

From: Linus Walleij <hidden>
Date: 2021-11-19 01:49:30
Also in: linux-pm, lkml

On Tue, Nov 16, 2021 at 1:27 PM Matti Vaittinen
[off-list ref] 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 <redacted>
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.
+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.)

Yours,
Linus Walleij
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help