1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/power/supply/battery.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Battery Characteristics
10 - Sebastian Reichel <sre@kernel.org>
13 The devicetree battery node provides static battery characteristics.
14 In smart batteries, these are typically stored in non-volatile memory
15 on a fuel gauge chip. The battery node should be used where there is
16 no appropriate non-volatile memory, or it is unprogrammed/incorrect.
18 Upstream dts files should not include battery nodes, unless the battery
19 represented cannot easily be replaced in the system by one of a
20 different type. This prevents unpredictable, potentially harmful,
21 behavior should a replacement that changes the battery type occur
22 without a corresponding update to the dtb.
24 Battery properties are named, where possible, for the corresponding elements
25 in enum power_supply_property, defined in include/linux/power_supply.h
27 Batteries must be referenced by chargers and/or fuel-gauges using a phandle.
28 The phandle's property should be named "monitored-battery".
34 over-voltage-threshold-microvolt:
35 description: battery over-voltage limit
37 re-charge-voltage-microvolt:
38 description: limit to automatically start charging again
40 voltage-min-design-microvolt:
41 description: drained battery voltage
43 voltage-max-design-microvolt:
44 description: fully charged battery voltage
46 energy-full-design-microwatt-hours:
47 description: battery design energy
49 charge-full-design-microamp-hours:
50 description: battery design capacity
52 trickle-charge-current-microamp:
53 description: current for trickle-charge phase
55 precharge-current-microamp:
56 description: current for pre-charge phase
58 precharge-upper-limit-microvolt:
59 description: limit when to change to constant charging
61 charge-term-current-microamp:
62 description: current for charge termination phase
64 constant-charge-current-max-microamp:
65 description: maximum constant input current
67 constant-charge-voltage-max-microvolt:
68 description: maximum constant input voltage
70 factory-internal-resistance-micro-ohms:
71 description: battery factory internal resistance
73 resistance-temp-table:
75 An array providing the temperature in degree Celsius
76 and corresponding battery internal resistance percent, which is used to
77 look up the resistance percent according to current temperature to get an
78 accurate batterty internal resistance in different temperatures.
82 An array containing the temperature in degree Celsius,
83 for each of the battery capacity lookup table.
85 operating-range-celsius:
86 $ref: /schemas/types.yaml#/definitions/uint32-array
87 description: operating temperature range of a battery
89 - description: minimum temperature at which battery can operate
90 - description: maximum temperature at which battery can operate
93 $ref: /schemas/types.yaml#/definitions/uint32-array
94 description: safe range of ambient temperature
96 - description: alert when ambient temperature is lower than this value
97 - description: alert when ambient temperature is higher than this value
100 $ref: /schemas/types.yaml#/definitions/uint32-array
101 description: safe range of battery temperature
103 - description: alert when battery temperature is lower than this value
104 - description: alert when battery temperature is higher than this value
110 '^ocv-capacity-table-[0-9]+$':
111 $ref: /schemas/types.yaml#/definitions/uint32-matrix
113 An array providing the open circuit voltage (OCV)
114 of the battery and corresponding battery capacity percent, which is used
115 to look up battery capacity according to current OCV value. And the open
116 circuit voltage unit is microvolt.
120 - description: open circuit voltage (OCV) in microvolts
121 - description: battery capacity percent
124 additionalProperties: false
129 #address-cells = <1>;
133 compatible = "simple-battery";
134 over-voltage-threshold-microvolt = <4500000>;
135 re-charge-voltage-microvolt = <250000>;
136 voltage-min-design-microvolt = <3200000>;
137 voltage-max-design-microvolt = <4200000>;
138 energy-full-design-microwatt-hours = <5290000>;
139 charge-full-design-microamp-hours = <1430000>;
140 precharge-current-microamp = <256000>;
141 precharge-upper-limit-microvolt = <2500000>;
142 charge-term-current-microamp = <128000>;
143 constant-charge-current-max-microamp = <900000>;
144 constant-charge-voltage-max-microvolt = <4200000>;
145 factory-internal-resistance-micro-ohms = <250000>;
146 ocv-capacity-celsius = <(-10) 0 10>;
147 /* table for -10 degree Celsius */
148 ocv-capacity-table-0 = <4185000 100>, <4113000 95>, <4066000 90>;
149 /* table for 0 degree Celsius */
150 ocv-capacity-table-1 = <4200000 100>, <4185000 95>, <4113000 90>;
151 /* table for 10 degree Celsius */
152 ocv-capacity-table-2 = <4250000 100>, <4200000 95>, <4185000 90>;
153 resistance-temp-table = <20 100>, <10 90>, <0 80>, <(-10) 60>;
154 operating-range-celsius = <(-30) 50>;
155 ambient-celsius = <(-5) 50>;
156 alert-celsius = <0 40>;
161 monitored-battery = <&battery>;
166 monitored-battery = <&battery>;