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

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/power/supply/summit,smb347-charger.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-only OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/power/supply/summit,smb347-charger.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Battery charger driver for SMB345, SMB347 and SMB358
  8 
  9 maintainers:
 10   - David Heidelberg <david@ixit.cz>
 11   - Dmitry Osipenko <digetx@gmail.com>
 12 
 13 properties:
 14   compatible:
 15     enum:
 16       - summit,smb345
 17       - summit,smb347
 18       - summit,smb358
 19 
 20   reg:
 21     maxItems: 1
 22 
 23   interrupts:
 24     maxItems: 1
 25 
 26   monitored-battery:
 27     description: phandle to the battery node
 28     $ref: /schemas/types.yaml#/definitions/phandle
 29 
 30   summit,enable-usb-charging:
 31     type: boolean
 32     description: Enable charging through USB.
 33 
 34   summit,enable-otg-charging:
 35     type: boolean
 36     description: Provide power for USB OTG
 37 
 38   summit,enable-mains-charging:
 39     type: boolean
 40     description: Enable charging through mains
 41 
 42   summit,enable-charge-control:
 43     description: Enable charging control
 44     $ref: /schemas/types.yaml#/definitions/uint32
 45     enum:
 46       - 0 # SMB3XX_CHG_ENABLE_SW SW (I2C interface)
 47       - 1 # SMB3XX_CHG_ENABLE_PIN_ACTIVE_LOW Pin control (Active Low)
 48       - 2 # SMB3XX_CHG_ENABLE_PIN_ACTIVE_HIGH Pin control (Active High)
 49 
 50   summit,fast-voltage-threshold-microvolt:
 51     description: Voltage threshold to transit to fast charge mode (in uV)
 52     minimum: 2400000
 53     maximum: 3000000
 54 
 55   summit,mains-current-limit-microamp:
 56     description: Maximum input current from AC/DC input (in uA)
 57 
 58   summit,usb-current-limit-microamp:
 59     description: Maximum input current from USB input (in uA)
 60 
 61   summit,charge-current-compensation-microamp:
 62     description: Charge current compensation (in uA)
 63 
 64   summit,chip-temperature-threshold-celsius:
 65     description: Chip temperature for thermal regulation in °C.
 66     enum: [100, 110, 120, 130]
 67 
 68   summit,soft-compensation-method:
 69     description: Soft temperature limit compensation method
 70     $ref: /schemas/types.yaml#/definitions/uint32
 71     enum:
 72       - 0 # SMB3XX_SOFT_TEMP_COMPENSATE_NONE Compensation none
 73       - 1 # SMB3XX_SOFT_TEMP_COMPENSATE_CURRENT Current compensation
 74       - 2 # SMB3XX_SOFT_TEMP_COMPENSATE_VOLTAGE Voltage compensation
 75 
 76   summit,inok-polarity:
 77     description: |
 78       Polarity of INOK signal indicating presence of external power supply.
 79     $ref: /schemas/types.yaml#/definitions/uint32
 80     enum:
 81       - 0 # SMB3XX_SYSOK_INOK_ACTIVE_LOW
 82       - 1 # SMB3XX_SYSOK_INOK_ACTIVE_HIGH
 83 
 84   usb-vbus:
 85     $ref: /schemas/regulator/regulator.yaml#
 86     type: object
 87 
 88     properties:
 89       summit,needs-inok-toggle:
 90         type: boolean
 91         description: INOK signal is fixed and polarity needs to be toggled
 92                      in order to enable/disable output mode.
 93 
 94     unevaluatedProperties: false
 95 
 96 allOf:
 97   - if:
 98       properties:
 99         compatible:
100           enum:
101             - summit,smb345
102             - summit,smb358
103 
104     then:
105       properties:
106         summit,mains-current-limit-microamp:
107           enum: [ 300000, 500000, 700000, 1000000,
108                   1500000, 1800000, 2000000]
109 
110         summit,usb-current-limit-microamp:
111           enum: [ 300000, 500000, 700000, 1000000,
112                   1500000, 1800000, 2000000]
113 
114         summit,charge-current-compensation-microamp:
115           enum: [200000, 450000, 600000, 900000]
116 
117     else:
118       properties:
119         summit,mains-current-limit-microamp:
120           enum: [ 300000, 500000, 700000, 900000, 1200000,
121                   1500000, 1800000, 2000000, 2200000, 2500000]
122 
123         summit,usb-current-limit-microamp:
124           enum: [ 300000, 500000, 700000, 900000, 1200000,
125                   1500000, 1800000, 2000000, 2200000, 2500000]
126 
127         summit,charge-current-compensation-microamp:
128           enum: [250000, 700000, 900000, 1200000]
129 
130 required:
131   - compatible
132   - reg
133 
134 anyOf:
135   - required:
136       - summit,enable-usb-charging
137   - required:
138       - summit,enable-otg-charging
139   - required:
140       - summit,enable-mains-charging
141 
142 additionalProperties: false
143 
144 examples:
145   - |
146     #include <dt-bindings/power/summit,smb347-charger.h>
147 
148     i2c {
149         #address-cells = <1>;
150         #size-cells = <0>;
151 
152         charger@7f {
153             compatible = "summit,smb347";
154             reg = <0x7f>;
155 
156             summit,enable-charge-control = <SMB3XX_CHG_ENABLE_PIN_ACTIVE_HIGH>;
157             summit,inok-polarity = <SMB3XX_SYSOK_INOK_ACTIVE_LOW>;
158             summit,chip-temperature-threshold-celsius = <110>;
159             summit,mains-current-limit-microamp = <2000000>;
160             summit,usb-current-limit-microamp = <500000>;
161             summit,enable-usb-charging;
162             summit,enable-mains-charging;
163 
164             monitored-battery = <&battery>;
165 
166             usb-vbus {
167                 regulator-name = "usb_vbus";
168                 regulator-min-microvolt = <5000000>;
169                 regulator-max-microvolt = <5000000>;
170                 regulator-min-microamp = <750000>;
171                 regulator-max-microamp = <750000>;
172                 summit,needs-inok-toggle;
173             };
174         };
175     };
176 
177     battery: battery-cell {
178         compatible = "simple-battery";
179         constant-charge-current-max-microamp = <1800000>;
180         operating-range-celsius = <0 45>;
181         alert-celsius = <3 42>;
182     };

~ [ 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