diff options
-rw-r--r-- | sound/soc/codecs/wm8804.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/sound/soc/codecs/wm8804.c b/sound/soc/codecs/wm8804.c index 1bd4ace29594..7804ddf53a04 100644 --- a/sound/soc/codecs/wm8804.c +++ b/sound/soc/codecs/wm8804.c | |||
@@ -601,8 +601,10 @@ int wm8804_probe(struct device *dev, struct regmap *regmap) | |||
601 | 601 | ||
602 | /* This should really be moved into the regulator core */ | 602 | /* This should really be moved into the regulator core */ |
603 | for (i = 0; i < ARRAY_SIZE(wm8804->supplies); i++) { | 603 | for (i = 0; i < ARRAY_SIZE(wm8804->supplies); i++) { |
604 | ret = regulator_register_notifier(wm8804->supplies[i].consumer, | 604 | struct regulator *regulator = wm8804->supplies[i].consumer; |
605 | &wm8804->disable_nb[i]); | 605 | |
606 | ret = devm_regulator_register_notifier(regulator, | ||
607 | &wm8804->disable_nb[i]); | ||
606 | if (ret != 0) { | 608 | if (ret != 0) { |
607 | dev_err(dev, | 609 | dev_err(dev, |
608 | "Failed to register regulator notifier: %d\n", | 610 | "Failed to register regulator notifier: %d\n", |
@@ -662,15 +664,6 @@ EXPORT_SYMBOL_GPL(wm8804_probe); | |||
662 | 664 | ||
663 | void wm8804_remove(struct device *dev) | 665 | void wm8804_remove(struct device *dev) |
664 | { | 666 | { |
665 | struct wm8804_priv *wm8804; | ||
666 | int i; | ||
667 | |||
668 | wm8804 = dev_get_drvdata(dev); | ||
669 | |||
670 | for (i = 0; i < ARRAY_SIZE(wm8804->supplies); ++i) | ||
671 | regulator_unregister_notifier(wm8804->supplies[i].consumer, | ||
672 | &wm8804->disable_nb[i]); | ||
673 | |||
674 | snd_soc_unregister_codec(dev); | 667 | snd_soc_unregister_codec(dev); |
675 | } | 668 | } |
676 | EXPORT_SYMBOL_GPL(wm8804_remove); | 669 | EXPORT_SYMBOL_GPL(wm8804_remove); |