Commit b804020a authored by Charles Keepax's avatar Charles Keepax Committed by Lee Jones

mfd: arizona: Disable PM runtime at start of driver removal

We don't want to trigger any PM runtime operations whilst we are tearing
down the driver, as things the suspend and resume callbacks rely on
might already have been destroyed. So disable PM runtime for the device
as the first step arizona_dev_exit.
Signed-off-by: default avatarCharles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: default avatarLee Jones <lee.jones@linaro.org>
parent 627918ed
...@@ -1023,11 +1023,12 @@ EXPORT_SYMBOL_GPL(arizona_dev_init); ...@@ -1023,11 +1023,12 @@ EXPORT_SYMBOL_GPL(arizona_dev_init);
int arizona_dev_exit(struct arizona *arizona) int arizona_dev_exit(struct arizona *arizona)
{ {
pm_runtime_disable(arizona->dev);
mfd_remove_devices(arizona->dev); mfd_remove_devices(arizona->dev);
arizona_free_irq(arizona, ARIZONA_IRQ_UNDERCLOCKED, arizona); arizona_free_irq(arizona, ARIZONA_IRQ_UNDERCLOCKED, arizona);
arizona_free_irq(arizona, ARIZONA_IRQ_OVERCLOCKED, arizona); arizona_free_irq(arizona, ARIZONA_IRQ_OVERCLOCKED, arizona);
arizona_free_irq(arizona, ARIZONA_IRQ_CLKGEN_ERR, arizona); arizona_free_irq(arizona, ARIZONA_IRQ_CLKGEN_ERR, arizona);
pm_runtime_disable(arizona->dev);
arizona_irq_exit(arizona); arizona_irq_exit(arizona);
if (arizona->pdata.reset) if (arizona->pdata.reset)
gpio_set_value_cansleep(arizona->pdata.reset, 0); gpio_set_value_cansleep(arizona->pdata.reset, 0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment