xref: /freebsd/sys/contrib/device-tree/Bindings/power/supply/qcom_smbb.txt (revision e6bfd18d21b225af6a0ed67ceeaf1293b7b9eba5)
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