From 3ab7cf9976a9e7c3f798ffda996cb6f308f40775 Mon Sep 17 00:00:00 2001 From: Haijian Ma Date: Thu, 7 Nov 2019 17:33:28 +0800 Subject: [PATCH] mmi: disable usbin OV irq in factory mode pmi632 trigger usbin OV irq frequent in factory mode, so disable OV irq in factory mode. Change-Id: I7dce3ce91bb57f25ff68b8e3b2c210b4e49ac1cf Signed-off-by: Haijian Ma Reviewed-on: https://gerrit.mot.com/1450689 SLTApproved: Slta Waiver SME-Granted: SME Approvals Granted Tested-by: Jira Key Reviewed-by: Huosheng Liao Submit-Approved: Jira Key --- .../power/qpnp-smbcharger-mmi/qpnp-smbcharger-mmi.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/drivers/power/qpnp-smbcharger-mmi/qpnp-smbcharger-mmi.c b/drivers/power/qpnp-smbcharger-mmi/qpnp-smbcharger-mmi.c index 1892a2396b6e..371c536927c1 100644 --- a/drivers/power/qpnp-smbcharger-mmi/qpnp-smbcharger-mmi.c +++ b/drivers/power/qpnp-smbcharger-mmi/qpnp-smbcharger-mmi.c @@ -117,6 +117,8 @@ static struct smb_mmi_charger *this_chip = NULL; #define SDP_CHARGER_BIT BIT(0) #define USBIN_INT_RT_STS (USBIN_BASE + 0x10) #define USBIN_PLUGIN_RT_STS_BIT BIT(4) +#define USBIN_INT_EN_CLR (USBIN_BASE + 0x16) +#define USBIN_OV_EN_CLR BIT(3) #define CMD_APSD_REG (USBIN_BASE + 0x41) #define APSD_RERUN_BIT BIT(0) #define ICL_OVERRIDE_BIT BIT(1) @@ -4022,6 +4024,15 @@ static int smb_mmi_probe(struct platform_device *pdev) smblib_set_usb_suspend(chip, false); } + if (chip->factory_mode && + (chip->smb_version == PMI632_SUBTYPE)) { + rc = smblib_masked_write_mmi(chip, USBIN_INT_EN_CLR, + 0xFF, USBIN_OV_EN_CLR)) + if (rc) { + mmi_err(chip, "SMBMMI: Could Not disable usbin ov irq\n"); + } + } + rc = device_create_file(chip->dev, &dev_attr_force_demo_mode); if (rc) {