~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/power/supply/charger-manager.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: GPL-2.0
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/power/supply/charger-manager.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Charger Manager
  8 
  9 maintainers:
 10   - Sebastian Reichel <sre@kernel.org>
 11 
 12 description: |
 13   Binding for the legacy charger manager driver.
 14   Please do not use for new products.
 15 
 16 properties:
 17   compatible:
 18     const: charger-manager
 19 
 20   cm-chargers:
 21     description: name of chargers
 22     $ref: /schemas/types.yaml#/definitions/string-array
 23 
 24   cm-num-chargers:
 25     $ref: /schemas/types.yaml#/definitions/uint32
 26     deprecated: true
 27 
 28   cm-fuel-gauge:
 29     description: name of battery fuel gauge
 30     $ref: /schemas/types.yaml#/definitions/string
 31 
 32   cm-name:
 33     description: name of the charger manager
 34     default: battery
 35     $ref: /schemas/types.yaml#/definitions/string
 36 
 37   cm-poll-mode:
 38     description: polling mode
 39     $ref: /schemas/types.yaml#/definitions/uint32
 40     default: 0
 41     enum:
 42       - 0 # disabled
 43       - 1 # always
 44       - 2 # when external power is connected
 45       - 3 # when charging
 46 
 47   cm-poll-interval:
 48     description: polling interval (in ms)
 49     $ref: /schemas/types.yaml#/definitions/uint32
 50 
 51   cm-battery-stat:
 52     description: battery status
 53     $ref: /schemas/types.yaml#/definitions/uint32
 54     enum:
 55       - 0 # battery always present
 56       - 1 # no battery
 57       - 2 # check presence via fuel gauge
 58       - 3 # check presence via charger
 59 
 60   cm-fullbatt-vchkdrop-volt:
 61     description: voltage drop before restarting charging in uV
 62     $ref: /schemas/types.yaml#/definitions/uint32
 63 
 64   cm-fullbatt-vchkdrop-ms:
 65     deprecated: true
 66 
 67   cm-fullbatt-voltage:
 68     description: voltage of full battery in uV
 69     $ref: /schemas/types.yaml#/definitions/uint32
 70 
 71   cm-fullbatt-soc:
 72     description: state of charge to consider as full battery in %
 73     $ref: /schemas/types.yaml#/definitions/uint32
 74 
 75   cm-fullbatt-capacity:
 76     description: capcity to consider as full battery in uAh
 77     $ref: /schemas/types.yaml#/definitions/uint32
 78 
 79   cm-thermal-zone:
 80     description: name of external thermometer's thermal zone
 81     $ref: /schemas/types.yaml#/definitions/string
 82 
 83   cm-discharging-max:
 84     description: limits of discharging duration in ms
 85     $ref: /schemas/types.yaml#/definitions/uint32
 86 
 87   cm-charging-max:
 88     description: limits of charging duration in ms
 89     $ref: /schemas/types.yaml#/definitions/uint32
 90 
 91   cm-battery-cold:
 92     description: critical cold temperature of battery for charging in deci-degree celsius
 93     $ref: /schemas/types.yaml#/definitions/uint32
 94 
 95   cm-battery-cold-in-minus:
 96     description: if set cm-battery-cold temperature is in minus degrees
 97     type: boolean
 98 
 99   cm-battery-hot:
100     description: critical hot temperature of battery for charging in deci-degree celsius
101     $ref: /schemas/types.yaml#/definitions/uint32
102 
103   cm-battery-temp-diff:
104     description: temperature difference to allow recharging in deci-degree celsius
105     $ref: /schemas/types.yaml#/definitions/uint32
106 
107 patternProperties:
108   "-supply$":
109     description: regulator consumer, named according to cm-regulator-name
110     $ref: /schemas/types.yaml#/definitions/phandle
111 
112   "^regulator[@-][0-9]$":
113     type: object
114     properties:
115       cm-regulator-name:
116         description: name of charger regulator
117         $ref: /schemas/types.yaml#/definitions/string
118 
119     required:
120       - cm-regulator-name
121 
122     additionalProperties: false
123 
124     patternProperties:
125       "^cable[@-][0-9]$":
126         type: object
127         properties:
128           cm-cable-name:
129             description: name of charger cable
130             enum:
131               - USB
132               - USB-HOST
133               - SDP
134               - DCP
135               - CDP
136               - ACA
137               - FAST-CHARGER
138               - SLOW-CHARGER
139               - WPT
140               - PD
141               - DOCK
142               - JIG
143               - MECHANICAL
144 
145           cm-cable-extcon:
146             description: name of extcon dev
147             $ref: /schemas/types.yaml#/definitions/string
148 
149           cm-cable-min:
150             description: minimum current of cable in uA
151             $ref: /schemas/types.yaml#/definitions/uint32
152 
153           cm-cable-max:
154             description: maximum current of cable in uA
155             $ref: /schemas/types.yaml#/definitions/uint32
156 
157         required:
158           - cm-cable-name
159           - cm-cable-extcon
160 
161         additionalProperties: false
162 
163 required:
164   - compatible
165   - cm-chargers
166   - cm-fuel-gauge
167 
168 additionalProperties: false
169 
170 examples:
171   - |
172     charger-manager {
173         compatible = "charger-manager";
174         chg-reg-supply = <&charger_regulator>;
175 
176         cm-name = "battery";
177         /* Always polling ON : 30s */
178         cm-poll-mode = <1>;
179         cm-poll-interval = <30000>;
180 
181         cm-fullbatt-vchkdrop-volt = <150000>;
182         cm-fullbatt-soc = <100>;
183 
184         cm-battery-stat = <3>;
185 
186         cm-chargers = "charger0", "charger1", "charger2";
187 
188         cm-fuel-gauge = "fuelgauge0";
189 
190         cm-thermal-zone = "thermal_zone.1";
191         /* in deci centigrade */
192         cm-battery-cold = <50>;
193         cm-battery-cold-in-minus;
194         cm-battery-hot = <800>;
195         cm-battery-temp-diff = <100>;
196 
197         /* Allow charging for 5hr */
198         cm-charging-max = <18000000>;
199         /* Allow discharging for 2hr */
200         cm-discharging-max = <7200000>;
201 
202         regulator-0 {
203             cm-regulator-name = "chg-reg";
204             cable-0 {
205                 cm-cable-name = "USB";
206                 cm-cable-extcon = "extcon-dev.0";
207                 cm-cable-min = <475000>;
208                 cm-cable-max = <500000>;
209             };
210             cable-1 {
211                 cm-cable-name = "SDP";
212                 cm-cable-extcon = "extcon-dev.0";
213                 cm-cable-min = <650000>;
214                 cm-cable-max = <675000>;
215             };
216         };
217     };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php