aboutsummaryrefslogtreecommitdiffstats
path: root/patches/1168-i2c-busses-remove-superfluous-ignoring-of-children-f.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/1168-i2c-busses-remove-superfluous-ignoring-of-children-f.patch')
-rw-r--r--patches/1168-i2c-busses-remove-superfluous-ignoring-of-children-f.patch74
1 files changed, 74 insertions, 0 deletions
diff --git a/patches/1168-i2c-busses-remove-superfluous-ignoring-of-children-f.patch b/patches/1168-i2c-busses-remove-superfluous-ignoring-of-children-f.patch
new file mode 100644
index 00000000000000..4e64e4c52be340
--- /dev/null
+++ b/patches/1168-i2c-busses-remove-superfluous-ignoring-of-children-f.patch
@@ -0,0 +1,74 @@
+From 4fd69d7c2f4e7e7bbe311decfd2cf03775e0ad33 Mon Sep 17 00:00:00 2001
+From: Wolfram Sang <wsa+renesas@sang-engineering.com>
+Date: Sun, 29 Apr 2018 20:41:04 +0200
+Subject: [PATCH 1168/1795] i2c: busses: remove superfluous ignoring of
+ children for RPM
+
+These days, the I2C core ensures that the embedded adapter device
+ignores the PM states of its children already. Because the adapter
+device is an opaque logical device, there is no need for drivers to
+repeat that again.
+
+Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
+Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
+Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
+Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
+(cherry picked from commit 77bade677c3c5616dfadfd21f0220fcddbfa4cbe)
+Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
+Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
+---
+ drivers/i2c/busses/i2c-hix5hd2.c | 1 -
+ drivers/i2c/busses/i2c-nomadik.c | 2 --
+ drivers/i2c/busses/i2c-sh_mobile.c | 11 -----------
+ 3 files changed, 14 deletions(-)
+
+diff --git a/drivers/i2c/busses/i2c-hix5hd2.c b/drivers/i2c/busses/i2c-hix5hd2.c
+index bb68957d3da5..1504c3c1a1c0 100644
+--- a/drivers/i2c/busses/i2c-hix5hd2.c
++++ b/drivers/i2c/busses/i2c-hix5hd2.c
+@@ -471,7 +471,6 @@ static int hix5hd2_i2c_probe(struct platform_device *pdev)
+ goto err_clk;
+ }
+
+- pm_suspend_ignore_children(&pdev->dev, true);
+ pm_runtime_set_autosuspend_delay(priv->dev, MSEC_PER_SEC);
+ pm_runtime_use_autosuspend(priv->dev);
+ pm_runtime_set_active(priv->dev);
+diff --git a/drivers/i2c/busses/i2c-nomadik.c b/drivers/i2c/busses/i2c-nomadik.c
+index 49c7c0c91486..0ed5a41804dc 100644
+--- a/drivers/i2c/busses/i2c-nomadik.c
++++ b/drivers/i2c/busses/i2c-nomadik.c
+@@ -1012,8 +1012,6 @@ static int nmk_i2c_probe(struct amba_device *adev, const struct amba_id *id)
+ goto err_no_mem;
+ }
+
+- pm_suspend_ignore_children(&adev->dev, true);
+-
+ dev->clk = devm_clk_get(&adev->dev, NULL);
+ if (IS_ERR(dev->clk)) {
+ dev_err(&adev->dev, "could not get i2c clock\n");
+diff --git a/drivers/i2c/busses/i2c-sh_mobile.c b/drivers/i2c/busses/i2c-sh_mobile.c
+index d856bc211715..5fda4188a9e5 100644
+--- a/drivers/i2c/busses/i2c-sh_mobile.c
++++ b/drivers/i2c/busses/i2c-sh_mobile.c
+@@ -899,17 +899,6 @@ static int sh_mobile_i2c_probe(struct platform_device *dev)
+ if (resource_size(res) > 0x17)
+ pd->flags |= IIC_FLAG_HAS_ICIC67;
+
+- /* Enable Runtime PM for this device.
+- *
+- * Also tell the Runtime PM core to ignore children
+- * for this device since it is valid for us to suspend
+- * this I2C master driver even though the slave devices
+- * on the I2C bus may not be suspended.
+- *
+- * The state of the I2C hardware bus is unaffected by
+- * the Runtime PM state.
+- */
+- pm_suspend_ignore_children(&dev->dev, true);
+ pm_runtime_enable(&dev->dev);
+ pm_runtime_get_sync(&dev->dev);
+
+--
+2.19.0
+