summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Documentation/devicetree/bindings/power/supply/qcom/qpnp-smb2.txt6
-rw-r--r--drivers/power/supply/qcom/qpnp-smb2.c2
-rw-r--r--drivers/power/supply/qcom/smb-lib.c3
-rw-r--r--drivers/power/supply/qcom/smb-lib.h1
4 files changed, 12 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/power/supply/qcom/qpnp-smb2.txt b/Documentation/devicetree/bindings/power/supply/qcom/qpnp-smb2.txt
index eabdc6a75fbe..5a2c3ecd3d1e 100644
--- a/Documentation/devicetree/bindings/power/supply/qcom/qpnp-smb2.txt
+++ b/Documentation/devicetree/bindings/power/supply/qcom/qpnp-smb2.txt
@@ -163,6 +163,12 @@ Charger specific properties:
Definition: Boolean flag which indicates that the platform only support
micro usb port.
+- qcom,suspend-input-on-debug-batt
+ Usage: optional
+ Value type: <empty>
+ Definition: Boolean flag which when present enables intput suspend for
+ debug battery.
+
=============================================
Second Level Nodes - SMB2 Charger Peripherals
=============================================
diff --git a/drivers/power/supply/qcom/qpnp-smb2.c b/drivers/power/supply/qcom/qpnp-smb2.c
index f8bca0645340..e8f7b4743152 100644
--- a/drivers/power/supply/qcom/qpnp-smb2.c
+++ b/drivers/power/supply/qcom/qpnp-smb2.c
@@ -387,6 +387,8 @@ static int smb2_parse_dt(struct smb2 *chip)
chg->dcp_icl_ua = chip->dt.usb_icl_ua;
+ chg->suspend_input_on_debug_batt = of_property_read_bool(node,
+ "qcom,suspend-input-on-debug-batt");
return 0;
}
diff --git a/drivers/power/supply/qcom/smb-lib.c b/drivers/power/supply/qcom/smb-lib.c
index f56c70beb5f0..1875c9d22a84 100644
--- a/drivers/power/supply/qcom/smb-lib.c
+++ b/drivers/power/supply/qcom/smb-lib.c
@@ -689,6 +689,9 @@ void smblib_suspend_on_debug_battery(struct smb_charger *chg)
int rc;
union power_supply_propval val;
+ if (!chg->suspend_input_on_debug_batt)
+ return;
+
rc = power_supply_get_property(chg->bms_psy,
POWER_SUPPLY_PROP_DEBUG_BATTERY, &val);
if (rc < 0) {
diff --git a/drivers/power/supply/qcom/smb-lib.h b/drivers/power/supply/qcom/smb-lib.h
index 864e7d691a43..b778d43dbec2 100644
--- a/drivers/power/supply/qcom/smb-lib.h
+++ b/drivers/power/supply/qcom/smb-lib.h
@@ -245,6 +245,7 @@ struct smb_charger {
bool micro_usb_mode;
bool otg_en;
bool vconn_en;
+ bool suspend_input_on_debug_batt;
int otg_attempts;
int vconn_attempts;
int default_icl_ua;