summaryrefslogtreecommitdiffstats
path: root/drivers/mfd/wm8994-core.c
diff options
context:
space:
mode:
authorViresh Kumar <viresh.kumar@linaro.org>2016-09-16 05:26:59 +0200
committerLee Jones <lee.jones@linaro.org>2016-11-25 12:09:05 +0100
commit3cfc43df7af0533b39b97bb03980e02e9716fc52 (patch)
tree7f37bdce59cf7094aeea88a4fa67302f16ce0187 /drivers/mfd/wm8994-core.c
parentmfd: syscon: Support native-endian regmaps (diff)
downloadlinux-3cfc43df7af0533b39b97bb03980e02e9716fc52.tar.xz
linux-3cfc43df7af0533b39b97bb03980e02e9716fc52.zip
mfd: wm8994-core: Disable regulators before removing them
The order in which resources were freed in wm8994_device_exit() isn't correct. The regulators are removed before they are disabled. Fix it by reordering code a bit, which makes it exact opposite of wm8994_device_init() as well. Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to '')
-rw-r--r--drivers/mfd/wm8994-core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mfd/wm8994-core.c b/drivers/mfd/wm8994-core.c
index 7eec619a6023..1e644aa53a2d 100644
--- a/drivers/mfd/wm8994-core.c
+++ b/drivers/mfd/wm8994-core.c
@@ -604,10 +604,10 @@ err:
static void wm8994_device_exit(struct wm8994 *wm8994)
{
pm_runtime_disable(wm8994->dev);
- mfd_remove_devices(wm8994->dev);
wm8994_irq_exit(wm8994);
regulator_bulk_disable(wm8994->num_supplies,
wm8994->supplies);
+ mfd_remove_devices(wm8994->dev);
}
static const struct of_device_id wm8994_of_match[] = {