1Qualcomm Switch-Mode Battery Charger and Boost 2 3PROPERTIES 4- compatible: 5 Usage: required 6 Value type: <stringlist> 7 Description: Must be one of: 8 - "qcom,pm8941-charger" 9 10- reg: 11 Usage: required 12 Value type: <prop-encoded-array> 13 Description: Base address of registers for SMBB block 14 15- interrupts: 16 Usage: required 17 Value type: <prop-encoded-array> 18 Description: The format of the specifier is defined by the binding document 19 describing the node's interrupt parent. Must contain one 20 specifier for each of the following interrupts, in order: 21 - charge done 22 - charge fast mode 23 - charge trickle mode 24 - battery temperature ok 25 - battery present 26 - charger disconnected 27 - USB-in valid 28 - DC-in valid 29 30- interrupt-names: 31 Usage: required 32 Value type: <stringlist> 33 Description: Must contain the following list, strictly ordered: 34 "chg-done", 35 "chg-fast", 36 "chg-trkl", 37 "bat-temp-ok", 38 "bat-present", 39 "chg-gone", 40 "usb-valid", 41 "dc-valid" 42 43- qcom,fast-charge-current-limit: 44 Usage: optional (default: 1A, or pre-configured value) 45 Value type: <u32>; uA; range [100mA : 3A] 46 Description: Maximum charge current; May be clamped to safety limits. 47 48- qcom,fast-charge-low-threshold-voltage: 49 Usage: optional (default: 3.2V, or pre-configured value) 50 Value type: <u32>; uV; range [2.1V : 3.6V] 51 Description: Battery voltage limit above which fast charging may operate; 52 Below this value linear or switch-mode auto-trickle-charging 53 will operate. 54 55- qcom,fast-charge-high-threshold-voltage: 56 Usage: optional (default: 4.2V, or pre-configured value) 57 Value type: <u32>; uV; range [3.24V : 5V] 58 Description: Battery voltage limit below which fast charging may operate; 59 The fast charger will attempt to charge the battery to this 60 voltage. May be clamped to safety limits. 61 62- qcom,fast-charge-safe-voltage: 63 Usage: optional (default: 4.2V, or pre-configured value) 64 Value type: <u32>; uV; range [3.24V : 5V] 65 Description: Maximum safe battery voltage; May be pre-set by bootloader, in 66 which case, setting this will harmlessly fail. The property 67 'fast-charge-high-watermark' will be clamped by this value. 68 69- qcom,fast-charge-safe-current: 70 Usage: optional (default: 1A, or pre-configured value) 71 Value type: <u32>; uA; range [100mA : 3A] 72 Description: Maximum safe battery charge current; May pre-set by bootloader, 73 in which case, setting this will harmlessly fail. The property 74 'qcom,fast-charge-current-limit' will be clamped by this value. 75 76- qcom,auto-recharge-threshold-voltage: 77 Usage: optional (default: 4.1V, or pre-configured value) 78 Value type: <u32>; uV; range [3.24V : 5V] 79 Description: Battery voltage limit below which auto-recharge functionality 80 will restart charging after end-of-charge; The high cutoff 81 limit for auto-recharge is 5% above this value. 82 83- qcom,minimum-input-voltage: 84 Usage: optional (default: 4.3V, or pre-configured value) 85 Value type: <u32>; uV; range [4.2V : 9.6V] 86 Description: Input voltage level above which charging may operate 87 88- qcom,dc-current-limit: 89 Usage: optional (default: 100mA, or pre-configured value) 90 Value type: <u32>; uA; range [100mA : 2.5A] 91 Description: Default DC charge current limit 92 93- qcom,disable-dc: 94 Usage: optional (default: false) 95 Value type: boolean: <u32> or <empty> 96 Description: Disable DC charger 97 98- qcom,jeita-extended-temp-range: 99 Usage: optional (default: false) 100 Value type: boolean: <u32> or <empty> 101 Description: Enable JEITA extended temperature range; This does *not* 102 adjust the maximum charge voltage or current in the extended 103 temperature range. It only allows charging when the battery 104 is in the extended temperature range. Voltage/current 105 regulation must be done externally to fully comply with 106 the JEITA safety guidelines if this flag is set. 107 108- usb_otg_in-supply: 109 Usage: optional 110 Value type: <phandle> 111 Description: Reference to the regulator supplying power to the USB_OTG_IN 112 pin. 113 114child nodes: 115- otg-vbus: 116 Usage: optional 117 Description: This node defines a regulator used to control the direction 118 of VBUS voltage - specifically: whether to supply voltage 119 to VBUS for host mode operation of the OTG port, or allow 120 input voltage from external VBUS for charging. In the 121 hardware, the supply for this regulator comes from 122 usb_otg_in-supply. 123 124EXAMPLE 125charger@1000 { 126 compatible = "qcom,pm8941-charger"; 127 reg = <0x1000 0x700>; 128 interrupts = <0x0 0x10 7 IRQ_TYPE_EDGE_BOTH>, 129 <0x0 0x10 5 IRQ_TYPE_EDGE_BOTH>, 130 <0x0 0x10 4 IRQ_TYPE_EDGE_BOTH>, 131 <0x0 0x12 1 IRQ_TYPE_EDGE_BOTH>, 132 <0x0 0x12 0 IRQ_TYPE_EDGE_BOTH>, 133 <0x0 0x13 2 IRQ_TYPE_EDGE_BOTH>, 134 <0x0 0x13 1 IRQ_TYPE_EDGE_BOTH>, 135 <0x0 0x14 1 IRQ_TYPE_EDGE_BOTH>; 136 interrupt-names = "chg-done", 137 "chg-fast", 138 "chg-trkl", 139 "bat-temp-ok", 140 "bat-present", 141 "chg-gone", 142 "usb-valid", 143 "dc-valid"; 144 145 qcom,fast-charge-current-limit = <1000000>; 146 qcom,dc-charge-current-limit = <1000000>; 147 usb_otg_in-supply = <&pm8941_5vs1>; 148 149 otg-vbus {}; 150}; 151