18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: "http://devicetree.org/schemas/power/supply/summit,smb347-charger.yaml#" 58c2ecf20Sopenharmony_ci$schema: "http://devicetree.org/meta-schemas/core.yaml#" 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: Battery charger driver for SMB345, SMB347 and SMB358 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cimaintainers: 108c2ecf20Sopenharmony_ci - David Heidelberg <david@ixit.cz> 118c2ecf20Sopenharmony_ci - Dmitry Osipenko <digetx@gmail.com> 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciproperties: 148c2ecf20Sopenharmony_ci compatible: 158c2ecf20Sopenharmony_ci enum: 168c2ecf20Sopenharmony_ci - summit,smb345 178c2ecf20Sopenharmony_ci - summit,smb347 188c2ecf20Sopenharmony_ci - summit,smb358 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci reg: 218c2ecf20Sopenharmony_ci maxItems: 1 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci interrupts: 248c2ecf20Sopenharmony_ci maxItems: 1 258c2ecf20Sopenharmony_ci 268c2ecf20Sopenharmony_ci monitored-battery: 278c2ecf20Sopenharmony_ci description: phandle to the battery node 288c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/phandle 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ci summit,enable-usb-charging: 318c2ecf20Sopenharmony_ci type: boolean 328c2ecf20Sopenharmony_ci description: Enable charging through USB. 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ci summit,enable-otg-charging: 358c2ecf20Sopenharmony_ci type: boolean 368c2ecf20Sopenharmony_ci description: Provide power for USB OTG 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci summit,enable-mains-charging: 398c2ecf20Sopenharmony_ci type: boolean 408c2ecf20Sopenharmony_ci description: Enable charging through mains 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci summit,enable-charge-control: 438c2ecf20Sopenharmony_ci description: Enable charging control 448c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 458c2ecf20Sopenharmony_ci enum: 468c2ecf20Sopenharmony_ci - 0 # SMB3XX_CHG_ENABLE_SW SW (I2C interface) 478c2ecf20Sopenharmony_ci - 1 # SMB3XX_CHG_ENABLE_PIN_ACTIVE_LOW Pin control (Active Low) 488c2ecf20Sopenharmony_ci - 2 # SMB3XX_CHG_ENABLE_PIN_ACTIVE_HIGH Pin control (Active High) 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci summit,fast-voltage-threshold-microvolt: 518c2ecf20Sopenharmony_ci description: Voltage threshold to transit to fast charge mode (in uV) 528c2ecf20Sopenharmony_ci minimum: 2400000 538c2ecf20Sopenharmony_ci maximum: 3000000 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci summit,mains-current-limit-microamp: 568c2ecf20Sopenharmony_ci description: Maximum input current from AC/DC input (in uA) 578c2ecf20Sopenharmony_ci 588c2ecf20Sopenharmony_ci summit,usb-current-limit-microamp: 598c2ecf20Sopenharmony_ci description: Maximum input current from USB input (in uA) 608c2ecf20Sopenharmony_ci 618c2ecf20Sopenharmony_ci summit,charge-current-compensation-microamp: 628c2ecf20Sopenharmony_ci description: Charge current compensation (in uA) 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ci summit,chip-temperature-threshold-celsius: 658c2ecf20Sopenharmony_ci description: Chip temperature for thermal regulation in °C. 668c2ecf20Sopenharmony_ci enum: [100, 110, 120, 130] 678c2ecf20Sopenharmony_ci 688c2ecf20Sopenharmony_ci summit,soft-compensation-method: 698c2ecf20Sopenharmony_ci description: Soft temperature limit compensation method 708c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#/definitions/uint32 718c2ecf20Sopenharmony_ci enum: 728c2ecf20Sopenharmony_ci - 0 # SMB3XX_SOFT_TEMP_COMPENSATE_NONE Compensation none 738c2ecf20Sopenharmony_ci - 1 # SMB3XX_SOFT_TEMP_COMPENSATE_CURRENT Current compensation 748c2ecf20Sopenharmony_ci - 2 # SMB3XX_SOFT_TEMP_COMPENSATE_VOLTAGE Voltage compensation 758c2ecf20Sopenharmony_ci 768c2ecf20Sopenharmony_ciallOf: 778c2ecf20Sopenharmony_ci - if: 788c2ecf20Sopenharmony_ci properties: 798c2ecf20Sopenharmony_ci compatible: 808c2ecf20Sopenharmony_ci enum: 818c2ecf20Sopenharmony_ci - summit,smb345 828c2ecf20Sopenharmony_ci - summit,smb358 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ci then: 858c2ecf20Sopenharmony_ci properties: 868c2ecf20Sopenharmony_ci summit,mains-current-limit-microamp: 878c2ecf20Sopenharmony_ci enum: [ 300000, 500000, 700000, 1000000, 888c2ecf20Sopenharmony_ci 1500000, 1800000, 2000000] 898c2ecf20Sopenharmony_ci 908c2ecf20Sopenharmony_ci summit,usb-current-limit-microamp: 918c2ecf20Sopenharmony_ci enum: [ 300000, 500000, 700000, 1000000, 928c2ecf20Sopenharmony_ci 1500000, 1800000, 2000000] 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_ci summit,charge-current-compensation-microamp: 958c2ecf20Sopenharmony_ci enum: [200000, 450000, 600000, 900000] 968c2ecf20Sopenharmony_ci 978c2ecf20Sopenharmony_ci else: 988c2ecf20Sopenharmony_ci properties: 998c2ecf20Sopenharmony_ci summit,mains-current-limit-microamp: 1008c2ecf20Sopenharmony_ci enum: [ 300000, 500000, 700000, 900000, 1200000, 1018c2ecf20Sopenharmony_ci 1500000, 1800000, 2000000, 2200000, 2500000] 1028c2ecf20Sopenharmony_ci 1038c2ecf20Sopenharmony_ci summit,usb-current-limit-microamp: 1048c2ecf20Sopenharmony_ci enum: [ 300000, 500000, 700000, 900000, 1200000, 1058c2ecf20Sopenharmony_ci 1500000, 1800000, 2000000, 2200000, 2500000] 1068c2ecf20Sopenharmony_ci 1078c2ecf20Sopenharmony_ci summit,charge-current-compensation-microamp: 1088c2ecf20Sopenharmony_ci enum: [250000, 700000, 900000, 1200000] 1098c2ecf20Sopenharmony_ci 1108c2ecf20Sopenharmony_cirequired: 1118c2ecf20Sopenharmony_ci - compatible 1128c2ecf20Sopenharmony_ci - reg 1138c2ecf20Sopenharmony_ci 1148c2ecf20Sopenharmony_cianyOf: 1158c2ecf20Sopenharmony_ci - required: 1168c2ecf20Sopenharmony_ci - summit,enable-usb-charging 1178c2ecf20Sopenharmony_ci - required: 1188c2ecf20Sopenharmony_ci - summit,enable-otg-charging 1198c2ecf20Sopenharmony_ci - required: 1208c2ecf20Sopenharmony_ci - summit,enable-mains-charging 1218c2ecf20Sopenharmony_ci 1228c2ecf20Sopenharmony_ciadditionalProperties: false 1238c2ecf20Sopenharmony_ci 1248c2ecf20Sopenharmony_ciexamples: 1258c2ecf20Sopenharmony_ci - | 1268c2ecf20Sopenharmony_ci #include <dt-bindings/power/summit,smb347-charger.h> 1278c2ecf20Sopenharmony_ci 1288c2ecf20Sopenharmony_ci i2c { 1298c2ecf20Sopenharmony_ci #address-cells = <1>; 1308c2ecf20Sopenharmony_ci #size-cells = <0>; 1318c2ecf20Sopenharmony_ci 1328c2ecf20Sopenharmony_ci charger@7f { 1338c2ecf20Sopenharmony_ci compatible = "summit,smb347"; 1348c2ecf20Sopenharmony_ci reg = <0x7f>; 1358c2ecf20Sopenharmony_ci 1368c2ecf20Sopenharmony_ci summit,enable-charge-control = <SMB3XX_CHG_ENABLE_PIN_ACTIVE_HIGH>; 1378c2ecf20Sopenharmony_ci summit,chip-temperature-threshold-celsius = <110>; 1388c2ecf20Sopenharmony_ci summit,mains-current-limit-microamp = <2000000>; 1398c2ecf20Sopenharmony_ci summit,usb-current-limit-microamp = <500000>; 1408c2ecf20Sopenharmony_ci summit,enable-usb-charging; 1418c2ecf20Sopenharmony_ci summit,enable-mains-charging; 1428c2ecf20Sopenharmony_ci 1438c2ecf20Sopenharmony_ci monitored-battery = <&battery>; 1448c2ecf20Sopenharmony_ci }; 1458c2ecf20Sopenharmony_ci }; 1468c2ecf20Sopenharmony_ci 1478c2ecf20Sopenharmony_ci battery: battery-cell { 1488c2ecf20Sopenharmony_ci compatible = "simple-battery"; 1498c2ecf20Sopenharmony_ci constant-charge-current-max-microamp = <1800000>; 1508c2ecf20Sopenharmony_ci operating-range-celsius = <0 45>; 1518c2ecf20Sopenharmony_ci alert-celsius = <3 42>; 1528c2ecf20Sopenharmony_ci }; 153