On 19 October 2018 at 00:51, Rob Herring <robh@xxxxxxxxxx> wrote: > On Mon, Oct 15, 2018 at 04:09:22PM +0800, Baolin Wang wrote: >> Some battery driver will use the open circuit voltage (OCV) value to look >> up the corresponding battery capacity percent in one certain degree Celsius. >> Thus this patch provides some battery properties to present the OCV table >> temperatures and OCV capacity table values. >> >> Suggested-by: Sebastian Reichel <sre@xxxxxxxxxx> >> Signed-off-by: Baolin Wang <baolin.wang@xxxxxxxxxx> >> Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx> >> --- >> Changes from v3: >> - Split binding into one separate patch. >> - Rename ocv-capacity-table-temperatures to ocv-capacity-celsius. >> - Add some words to specify the OCV's unit. >> >> Changes from v2: >> - Use type __be32 to calculate the table length. >> - Update error messages. >> - Add some helper functions. >> >> Changes from v1: >> - New patch in v2. >> --- >> .../devicetree/bindings/power/supply/battery.txt | 15 +++++++++++++++ >> 1 file changed, 15 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/power/supply/battery.txt b/Documentation/devicetree/bindings/power/supply/battery.txt >> index 938d027..1f70e5d 100644 >> --- a/Documentation/devicetree/bindings/power/supply/battery.txt >> +++ b/Documentation/devicetree/bindings/power/supply/battery.txt >> @@ -23,6 +23,17 @@ Optional Properties: >> - constant-charge-current-max-microamp: maximum constant input current >> - constant-charge-voltage-max-microvolt: maximum constant input voltage >> - factory-internal-resistance-micro-ohms: battery factory internal resistance >> + - ocv-capacity-table-0: An array providing the battery capacity percent >> + with corresponding open circuit voltage (OCV) of the battery, which >> + is used to look up battery capacity according to current OCV value. >> + And the open circuit voltage unit is microvolt. > > The order percent and voltage is still not clear. I'd guess one way > based on the text here, but the example is the opposite. The description > here must stand on its own. Yes, you are right. I will correct the order of ocv-capacity-table-n. Thanks. >> + - ocv-capacity-table-1: Same as ocv-capacity-table-0 >> + ...... >> + - ocv-capacity-table-n: Same as ocv-capacity-table-0 >> + - ocv-capacity-celsius: An array containing the temperature in degree Celsius, >> + for each of the battery capacity lookup table. The first temperature value >> + specifies the OCV table 0, and the second temperature value specifies the >> + OCV table 1, and so on. >> >> Battery properties are named, where possible, for the corresponding >> elements in enum power_supply_property, defined in >> @@ -44,6 +55,10 @@ Example: >> constant-charge-current-max-microamp = <900000>; >> constant-charge-voltage-max-microvolt = <4200000>; >> factory-internal-resistance-micro-ohms = <250000>; >> + ocv-capacity-celsius = <(-10) 0 10>; >> + ocv-capacity-table-0 = <4185000 100>, <4113000 95>, <4066000 90>, ...; >> + ocv-capacity-table-1 = <4200000 100>, <4185000 95>, <4113000 90>, ...; >> + ocv-capacity-table-2 = <4250000 100>, <4200000 95>, <4185000 90>, ...; >> }; >> >> charger: charger@11 { >> -- >> 1.7.9.5 >> -- Baolin Wang Best Regards