| Summit smb358 battery charger |
| |
| SMB358 is a single-cell battery charger. It can charge |
| the battery and power the system via the USB/AC adapter input. |
| |
| The smb358 interface is via I2C bus. |
| |
| Required Properties: |
| - compatible Must be "qcom,smb358-charger". |
| - reg The device 7-bit I2C address. |
| - interrupt-parent parent of interrupt. |
| - interrupts This indicates the IRQ number of the GPIO |
| connected to the STAT pin. |
| - qcom,irq-gpio GPIO which receives interrupts from STAT output. |
| - qcom,bms-psy-name This is a string and it points to the bms |
| power supply name. |
| - qcom,float-voltage-mv Float Voltage in mV - the maximum voltage up to which |
| the battery is charged. Supported range 3500mV to 4500mV |
| - qcom,chg-vadc Corresponding VADC device's phandle. |
| |
| Optional Properties: |
| |
| - qcom,fastchg-current-max-ma Fast Charging current in mA. Supported range is |
| from 200mA to 2000mA. |
| - qcom,chg-valid-gpio GPIO which indicates the charger presence. |
| This GPIO is connected to the SYSOK pin. |
| - qcom,chg-autonomous-mode This is a bool property and it indicates that the |
| charger is configured for autonomous operation and |
| does not require any software configuration. |
| - qcom,disable-apsd This is a bool property which disables automatic |
| power source detection (APSD). If this is set |
| charger detection is done by DCIN UV irq. |
| - qcom,charger-disabled This is a bool property which disables charging. |
| - qcom,using-pmic-therm This property indicates thermal pin connected to pmic or smb. |
| - qcom,vcc-i2c-supply Power source required to power up i2c bus. |
| - qcom,bms-controlled-charging This property indicates integrating with VMBMS, charger |
| driver and BMS communicates with each other via power_supply |
| framework. Property "qcom,iterm-disabled" also needs defined |
| if using this feature to make sure that the charger doesn't |
| terminate charging on its own. |
| - qcom,iterm-ma Specifies the termination current to indicate end-of-charge. |
| Possible values in mA - 30, 40, 60, 80, 100, 125, 150, 200. |
| - qcom,iterm-disabled Disables the termination current feature. This is a bool |
| property. |
| - qcom,recharge-mv Recharge threshold in mV - the offset from the float-volatge |
| as which the charger restarts charging. Possible |
| values are 50mV to 300mV. |
| - qcom,recharge-disabled Boolean value which disables the auto-recharge. |
| - qcom,chg-inhibit-disabled This is a bool property which disables charger inhibit. |
| Charger inhibit option prevents battery charging upon insertion |
| of the charger when battery voltage is above the programmed inhibit |
| threshold. |
| - qcom,chg-adc_tm phandle to the corresponding VADC device to read the ADC channels. |
| - qcom,cold-bat-decidegc Cold battery temperature in decidegC. |
| - qcom,hot-bat-decidegc Hot battery temperature in decidegC. |
| - qcom,bat-present-decidegc This is a property indicating battery present temperature, if |
| higher than it, battery should exist. Default value is negative, |
| if this property is 200, it stands for -200 decidegC. |
| - qcom,warm-bat-decidegc: Warm battery temperature in decidegC. After hitting this threshold, |
| "qcom,warm-bat-ma" defines maximum charging current and |
| "qcom,warm-bat-mv" defines maximum target voltage. |
| - qcom,cool-bat-decidegc: Cool battery temperature in decidegC. After hitting this threshold, |
| "qcom,cool-bat-ma" defines maximum charging current and |
| "qcom,cool-bat-mv" defines maximum target voltage. |
| - qcom,warm-bat-ma: Maximum warm battery charge current in milli-amps. |
| - qcom,cool-bat-ma: Maximum cool battery charge current in milli-amps. |
| - qcom,warm-bat-mv: Maximum warm battery target voltage in milli-volts. |
| - qcom,cool-bat-mv: Maximum cool battery target voltage in milli-volts. |
| |
| Example: |
| i2c@f9967000 { |
| smb358-charger@1b { |
| compatible = "qcom,smb358-charger"; |
| reg = <0x1b>; |
| interrupt-parent = <&msmgpio>; |
| interrupts = <17 0x0>; |
| qcom,irq-gpio = <&msmgpio 17 0x00>; |
| qcom,vcc-i2c-supply = <&pm8226_lvs1>; |
| qcom,float-voltage-mv = <4350>; |
| qcom,disable-apsd; |
| qcom,chg-inhibit-disabled; |
| qcom,bms-controlled-charging; |
| qcom,fastchg-current-max-ma = <1500>; |
| qcom,bms-psy-name = "bms"; |
| qcom,chg-vadc = <&pm8226_vadc>; |
| qcom,chg-adc_tm = <&pm8226_adc_tm>; |
| qcom,hot-bat-decidegc = <500>; |
| qcom,cold-bat-decidegc = <0>; |
| qcom,bat-present-decidegc = <200>; |
| qcom,warm-bat-decidegc = <450>; |
| qcom,cool-bat-decidegc = <100>; |
| qcom,warm-bat-ma = <350>; |
| qcom,cool-bat-ma = <350>; |
| qcom,warm-bat-mv = <4200>; |
| qcom,cool-bat-mv = <4200>; |
| }; |
| }; |
| |