diff options
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/codecs/wm8804.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/sound/soc/codecs/wm8804.c b/sound/soc/codecs/wm8804.c index 7804ddf53a04..f44da83f50dc 100644 --- a/sound/soc/codecs/wm8804.c +++ b/sound/soc/codecs/wm8804.c | |||
@@ -609,6 +609,7 @@ int wm8804_probe(struct device *dev, struct regmap *regmap) | |||
609 | dev_err(dev, | 609 | dev_err(dev, |
610 | "Failed to register regulator notifier: %d\n", | 610 | "Failed to register regulator notifier: %d\n", |
611 | ret); | 611 | ret); |
612 | return ret; | ||
612 | } | 613 | } |
613 | } | 614 | } |
614 | 615 | ||
@@ -616,7 +617,7 @@ int wm8804_probe(struct device *dev, struct regmap *regmap) | |||
616 | wm8804->supplies); | 617 | wm8804->supplies); |
617 | if (ret) { | 618 | if (ret) { |
618 | dev_err(dev, "Failed to enable supplies: %d\n", ret); | 619 | dev_err(dev, "Failed to enable supplies: %d\n", ret); |
619 | goto err_reg_enable; | 620 | return ret; |
620 | } | 621 | } |
621 | 622 | ||
622 | ret = regmap_read(regmap, WM8804_RST_DEVID1, &id1); | 623 | ret = regmap_read(regmap, WM8804_RST_DEVID1, &id1); |
@@ -653,8 +654,14 @@ int wm8804_probe(struct device *dev, struct regmap *regmap) | |||
653 | goto err_reg_enable; | 654 | goto err_reg_enable; |
654 | } | 655 | } |
655 | 656 | ||
656 | return snd_soc_register_codec(dev, &soc_codec_dev_wm8804, | 657 | ret = snd_soc_register_codec(dev, &soc_codec_dev_wm8804, |
657 | &wm8804_dai, 1); | 658 | &wm8804_dai, 1); |
659 | if (ret < 0) { | ||
660 | dev_err(dev, "Failed to register CODEC: %d\n", ret); | ||
661 | goto err_reg_enable; | ||
662 | } | ||
663 | |||
664 | return 0; | ||
658 | 665 | ||
659 | err_reg_enable: | 666 | err_reg_enable: |
660 | regulator_bulk_disable(ARRAY_SIZE(wm8804->supplies), wm8804->supplies); | 667 | regulator_bulk_disable(ARRAY_SIZE(wm8804->supplies), wm8804->supplies); |