From 687d73d12dd6085a799b24b7bb8aba5103ce33f3 Mon Sep 17 00:00:00 2001 From: xuwt2 Date: Tue, 13 Jun 2023 16:44:11 +0800 Subject: [PATCH] sc760x: Enter Low power mode when system suspend Entering Low power mode when system suspend Exiting Low power mode when system resume Change-Id: If809ab448e6b294c1dcd0b6186aaaeeeadb4aca7 Signed-off-by: xuwt2 Reviewed-on: https://gerrit.mot.com/2642143 Reviewed-by: litong SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Guobin Zhang Submit-Approved: Jira Key --- .../power/sc760x_charger_mmi/sc760x_charger_mmi.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/drivers/power/sc760x_charger_mmi/sc760x_charger_mmi.c b/drivers/power/sc760x_charger_mmi/sc760x_charger_mmi.c index 3ca689524744..29b24092786b 100644 --- a/drivers/power/sc760x_charger_mmi/sc760x_charger_mmi.c +++ b/drivers/power/sc760x_charger_mmi/sc760x_charger_mmi.c @@ -2090,7 +2090,12 @@ static int sc760x_suspend(struct device *dev) disable_irq(sc->irq); ret = sc760x_set_adc_enable(sc, false); if (ret < 0) { - dev_err(sc->dev, "%s Failed to enable adc(%d)\n", __func__, ret); + dev_err(sc->dev, "%s Failed to disable adc(%d)\n", __func__, ret); + } + + ret = sc760x_set_lowpower_mode(sc, true); + if (ret < 0) { + dev_err(sc->dev, "%s Failed to enter lowpower(%d)\n", __func__, ret); } return 0; @@ -2103,6 +2108,12 @@ static int sc760x_resume(struct device *dev) if (device_may_wakeup(dev)) disable_irq_wake(sc->irq); enable_irq(sc->irq); + + ret = sc760x_set_lowpower_mode(sc, false); + if (ret < 0) { + dev_err(sc->dev, "%s Failed to exit lowpower(%d)\n", __func__, ret); + } + ret = sc760x_set_adc_enable(sc, true); if (ret < 0) { dev_err(sc->dev, "%s Failed to enable adc(%d)\n", __func__, ret);