132 lines
5.1 KiB
Plaintext
132 lines
5.1 KiB
Plaintext
Qualcomm Switch-Mode Battery Charger and Boost
|
|
|
|
PROPERTIES
|
|
- compatible:
|
|
Usage: required
|
|
Value type: <stringlist>
|
|
Description: Must be one of:
|
|
- "qcom,pm8941-charger"
|
|
|
|
- reg:
|
|
Usage: required
|
|
Value type: <prop-encoded-array>
|
|
Description: Base address of registers for SMBB block
|
|
|
|
- interrupts:
|
|
Usage: required
|
|
Value type: <prop-encoded-array>
|
|
Description: The format of the specifier is defined by the binding document
|
|
describing the node's interrupt parent. Must contain one
|
|
specifier for each of the following interrupts, in order:
|
|
- charge done
|
|
- charge fast mode
|
|
- charge trickle mode
|
|
- battery temperature ok
|
|
- battery present
|
|
- charger disconnected
|
|
- USB-in valid
|
|
- DC-in valid
|
|
|
|
- interrupt-names:
|
|
Usage: required
|
|
Value type: <stringlist>
|
|
Description: Must contain the following list, strictly ordered:
|
|
"chg-done",
|
|
"chg-fast",
|
|
"chg-trkl",
|
|
"bat-temp-ok",
|
|
"bat-present",
|
|
"chg-gone",
|
|
"usb-valid",
|
|
"dc-valid"
|
|
|
|
- qcom,fast-charge-current-limit:
|
|
Usage: optional (default: 1A, or pre-configured value)
|
|
Value type: <u32>; uA; range [100mA : 3A]
|
|
Description: Maximum charge current; May be clamped to safety limits.
|
|
|
|
- qcom,fast-charge-low-threshold-voltage:
|
|
Usage: optional (default: 3.2V, or pre-configured value)
|
|
Value type: <u32>; uV; range [2.1V : 3.6V]
|
|
Description: Battery voltage limit above which fast charging may operate;
|
|
Below this value linear or switch-mode auto-trickle-charging
|
|
will operate.
|
|
|
|
- qcom,fast-charge-high-threshold-voltage:
|
|
Usage: optional (default: 4.2V, or pre-configured value)
|
|
Value type: <u32>; uV; range [3.24V : 5V]
|
|
Description: Battery voltage limit below which fast charging may operate;
|
|
The fast charger will attempt to charge the battery to this
|
|
voltage. May be clamped to safety limits.
|
|
|
|
- qcom,fast-charge-safe-voltage:
|
|
Usage: optional (default: 4.2V, or pre-configured value)
|
|
Value type: <u32>; uV; range [3.24V : 5V]
|
|
Description: Maximum safe battery voltage; May be pre-set by bootloader, in
|
|
which case, setting this will harmlessly fail. The property
|
|
'fast-charge-high-watermark' will be clamped by this value.
|
|
|
|
- qcom,fast-charge-safe-current:
|
|
Usage: optional (default: 1A, or pre-configured value)
|
|
Value type: <u32>; uA; range [100mA : 3A]
|
|
Description: Maximum safe battery charge current; May pre-set by bootloader,
|
|
in which case, setting this will harmlessly fail. The property
|
|
'qcom,fast-charge-current-limit' will be clamped by this value.
|
|
|
|
- qcom,auto-recharge-threshold-voltage:
|
|
Usage: optional (default: 4.1V, or pre-configured value)
|
|
Value type: <u32>; uV; range [3.24V : 5V]
|
|
Description: Battery voltage limit below which auto-recharge functionality
|
|
will restart charging after end-of-charge; The high cutoff
|
|
limit for auto-recharge is 5% above this value.
|
|
|
|
- qcom,minimum-input-voltage:
|
|
Usage: optional (default: 4.3V, or pre-configured value)
|
|
Value type: <u32>; uV; range [4.2V : 9.6V]
|
|
Description: Input voltage level above which charging may operate
|
|
|
|
- qcom,dc-current-limit:
|
|
Usage: optional (default: 100mA, or pre-configured value)
|
|
Value type: <u32>; uA; range [100mA : 2.5A]
|
|
Description: Default DC charge current limit
|
|
|
|
- qcom,disable-dc:
|
|
Usage: optional (default: false)
|
|
Value type: boolean: <u32> or <empty>
|
|
Description: Disable DC charger
|
|
|
|
- qcom,jeita-extended-temp-range:
|
|
Usage: optional (default: false)
|
|
Value type: boolean: <u32> or <empty>
|
|
Description: Enable JEITA extended temperature range; This does *not*
|
|
adjust the maximum charge voltage or current in the extended
|
|
temperature range. It only allows charging when the battery
|
|
is in the extended temperature range. Voltage/current
|
|
regulation must be done externally to fully comply with
|
|
the JEITA safety guidelines if this flag is set.
|
|
|
|
EXAMPLE
|
|
charger@1000 {
|
|
compatible = "qcom,pm8941-charger";
|
|
reg = <0x1000 0x700>;
|
|
interrupts = <0x0 0x10 7 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x10 5 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x10 4 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x12 1 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x12 0 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x13 2 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x13 1 IRQ_TYPE_EDGE_BOTH>,
|
|
<0x0 0x14 1 IRQ_TYPE_EDGE_BOTH>;
|
|
interrupt-names = "chg-done",
|
|
"chg-fast",
|
|
"chg-trkl",
|
|
"bat-temp-ok",
|
|
"bat-present",
|
|
"chg-gone",
|
|
"usb-valid",
|
|
"dc-valid";
|
|
|
|
qcom,fast-charge-current-limit = <1000000>;
|
|
qcom,dc-charge-current-limit = <1000000>;
|
|
};
|