Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ASoC: wm2000: Convert to devm_regmap_init_i2c()

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>

+4 -9
+4 -9
sound/soc/codecs/wm2000.c
··· 760 760 761 761 dev_set_drvdata(&i2c->dev, wm2000); 762 762 763 - wm2000->regmap = regmap_init_i2c(i2c, &wm2000_regmap); 763 + wm2000->regmap = devm_regmap_init_i2c(i2c, &wm2000_regmap); 764 764 if (IS_ERR(wm2000->regmap)) { 765 765 ret = PTR_ERR(wm2000->regmap); 766 766 dev_err(&i2c->dev, "Failed to allocate register map: %d\n", ··· 777 777 if (id != 0x2000) { 778 778 dev_err(&i2c->dev, "Device is not a WM2000 - ID %x\n", id); 779 779 ret = -ENODEV; 780 - goto out_regmap_exit; 780 + goto out; 781 781 } 782 782 783 783 reg = wm2000_read(i2c, WM2000_REG_REVISON); ··· 796 796 ret = request_firmware(&fw, filename, &i2c->dev); 797 797 if (ret != 0) { 798 798 dev_err(&i2c->dev, "Failed to acquire ANC data: %d\n", ret); 799 - goto out_regmap_exit; 799 + goto out; 800 800 } 801 801 802 802 /* Pre-cook the concatenation of the register address onto the image */ ··· 807 807 if (wm2000->anc_download == NULL) { 808 808 dev_err(&i2c->dev, "Out of memory\n"); 809 809 ret = -ENOMEM; 810 - goto out_regmap_exit; 810 + goto out; 811 811 } 812 812 813 813 wm2000->anc_download[0] = 0x80; ··· 825 825 if (!ret) 826 826 goto out; 827 827 828 - out_regmap_exit: 829 - regmap_exit(wm2000->regmap); 830 828 out: 831 829 release_firmware(fw); 832 830 return ret; ··· 832 834 833 835 static __devexit int wm2000_i2c_remove(struct i2c_client *i2c) 834 836 { 835 - struct wm2000_priv *wm2000 = dev_get_drvdata(&i2c->dev); 836 - 837 837 snd_soc_unregister_codec(&i2c->dev); 838 - regmap_exit(wm2000->regmap); 839 838 840 839 return 0; 841 840 }