linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Enric Balletbo i Serra <enric.balletbo@collabora.com>
To: lee.jones@linaro.org
Cc: groeck@chromium.org, andy.shevchenko@gmail.com,
	kernel@collabora.com, gwendal@chromium.org,
	linux-kernel@vger.kernel.org, Joseph Lo <josephl@nvidia.com>
Subject: [PATCH v4 8/8] mfd: cros_ec_i2c: moving the system sleep pm ops to late
Date: Tue, 20 Mar 2018 13:27:51 +0100	[thread overview]
Message-ID: <20180320122751.14019-9-enric.balletbo@collabora.com> (raw)
In-Reply-To: <20180320122751.14019-1-enric.balletbo@collabora.com>

From: Joseph Lo <josephl@nvidia.com>

The cros_ec_i2c driver is still active after it had suspended or before it
resumes. Besides that, it also tried to transfer data even after the I2C
host had been suspended. This will lead the system to crash.

During the test, we also observe that the EC needs to be resumed earlier
due to some status polling from the EC FW (e.g. battery status). So we
move the PM ops to late stage to make it work normally.

Signed-off-by: Joseph Lo <josephl@nvidia.com>
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
---

Changes in v4:
- [8/8] Add Acked-by Lee Jones.

Changes in v3:
- [8/8] Add static to cros_ec_i2c_pm_ops.
- [8/8] Add the Reviewed-by Andy Shevchenko.

Changes in v2:
- [8/8] This patch is new in this series replacing [5/6] of v1.

 drivers/mfd/cros_ec_i2c.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/mfd/cros_ec_i2c.c b/drivers/mfd/cros_ec_i2c.c
index 02a7bacdc056..ef9b4763356f 100644
--- a/drivers/mfd/cros_ec_i2c.c
+++ b/drivers/mfd/cros_ec_i2c.c
@@ -342,8 +342,9 @@ static int cros_ec_i2c_resume(struct device *dev)
 }
 #endif
 
-static SIMPLE_DEV_PM_OPS(cros_ec_i2c_pm_ops, cros_ec_i2c_suspend,
-			  cros_ec_i2c_resume);
+static const struct dev_pm_ops cros_ec_i2c_pm_ops = {
+	SET_LATE_SYSTEM_SLEEP_PM_OPS(cros_ec_i2c_suspend, cros_ec_i2c_resume)
+};
 
 #ifdef CONFIG_OF
 static const struct of_device_id cros_ec_i2c_of_match[] = {
-- 
2.16.2

      parent reply	other threads:[~2018-03-20 12:28 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-20 12:27 [PATCH v4 0/8] mfd: cros_ec: add subdevices and fixes Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 1/8] mfd: cros_ec: fail early if we cannot identify the EC Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 2/8] mfd: cros_ec: free IRQ automatically Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 3/8] mfd: cros_ec: Don't try to grab log when suspended Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 4/8] mfd: cros_ec_dev: Register cros-ec-rtc driver as a subdevice Enric Balletbo i Serra
2018-03-28 10:54   ` Lee Jones
2018-03-28 10:58     ` Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 5/8] mfd: cros_ec_dev: Register cros_ec_accel_legacy " Enric Balletbo i Serra
2018-03-28 11:03   ` Lee Jones
2018-04-04  8:03     ` Enric Balletbo Serra
2018-04-04  9:06       ` Enric Balletbo Serra
2018-04-16 13:20         ` Lee Jones
2019-02-28  1:03           ` Gwendal Grignou
2019-02-28  1:35             ` [PATCH v5] " Gwendal Grignou
2019-04-02  3:46               ` Lee Jones
2019-05-28 21:53                 ` Gwendal Grignou
2019-05-29 11:44                   ` Lee Jones
2019-05-29 18:38                     ` Gwendal Grignou
2019-05-30  7:48                       ` Lee Jones
2019-05-31  4:46                         ` Gwendal Grignou
2019-05-31  8:13                           ` Lee Jones
2019-05-31 21:02                             ` Gwendal Grignou
2019-06-03  6:22                               ` Lee Jones
2019-06-03 17:01                                 ` Gwendal Grignou
2018-03-20 12:27 ` [PATCH v4 6/8] mfd: cros_ec_dev: register shutdown function for debugfs Enric Balletbo i Serra
2018-03-20 12:27 ` [PATCH v4 7/8] mfd: cros_ec_i2c: add ACPI module device table Enric Balletbo i Serra
2018-03-20 12:27 ` Enric Balletbo i Serra [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180320122751.14019-9-enric.balletbo@collabora.com \
    --to=enric.balletbo@collabora.com \
    --cc=andy.shevchenko@gmail.com \
    --cc=groeck@chromium.org \
    --cc=gwendal@chromium.org \
    --cc=josephl@nvidia.com \
    --cc=kernel@collabora.com \
    --cc=lee.jones@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).