summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuanyuan Liu <yuanliu@codeaurora.org>2016-09-22 16:34:43 -0700
committerYuanyuan Liu <yuanliu@codeaurora.org>2016-09-29 13:51:08 -0700
commite11d240bc7976f9484d0000ed0fa93ed61a0415d (patch)
tree0f9334fa2f50357da4019a5bf841c6f5db7f45e3
parent626caf4e54864d90e8d104277f9a1446e487c7e1 (diff)
icnss: Add support for disabling vbatt notification
ICNSS monitors runtime phone power. When phone power crosses either high or low threshold, ICNSS sends vbatt notification to WLAN FW. FW then should vote for different regulator power mode based on the notification. Add support for disabling this feature and disable it for now until WLAN FW support voting for different regulator power mode. CRs-Fixed: 1070294 Change-Id: I63241a198040122fcc4f26b728795e39822dbdc8 Signed-off-by: Yuanyuan Liu <yuanliu@codeaurora.org>
-rw-r--r--drivers/soc/qcom/icnss.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/soc/qcom/icnss.c b/drivers/soc/qcom/icnss.c
index 583856e6b3e1..38445e735b4f 100644
--- a/drivers/soc/qcom/icnss.c
+++ b/drivers/soc/qcom/icnss.c
@@ -244,9 +244,10 @@ enum icnss_debug_quirks {
RECOVERY_DISABLE,
SSR_ONLY,
PDR_ONLY,
+ VBATT_DISABLE,
};
-#define ICNSS_QUIRKS_DEFAULT 0
+#define ICNSS_QUIRKS_DEFAULT BIT(VBATT_DISABLE)
unsigned long quirks = ICNSS_QUIRKS_DEFAULT;
module_param(quirks, ulong, 0600);
@@ -755,6 +756,9 @@ static int icnss_init_vph_monitor(struct icnss_priv *priv)
{
int ret = 0;
+ if (test_bit(VBATT_DISABLE, &quirks))
+ goto out;
+
ret = icnss_get_phone_power(priv, &priv->vph_pwr);
if (ret)
goto out;
@@ -2288,7 +2292,7 @@ static int icnss_driver_event_server_exit(void *data)
icnss_pr_info("QMI Service Disconnected: 0x%lx\n", penv->state);
- if (penv->adc_tm_dev)
+ if (!test_bit(VBATT_DISABLE, &quirks) && penv->adc_tm_dev)
qpnp_adc_tm_disable_chan_meas(penv->adc_tm_dev,
&penv->vph_monitor_params);