[alsa-devel] [PATCH] ASoC: wm8804: Use common error handling code in wm8804_probe()
From: Markus Elfring elfring@users.sourceforge.net Date: Sun, 19 Nov 2017 07:55:49 +0100
* Add a jump target so that a specific error message is stored only once at the end of this function implementation.
* Replace two calls of the function "dev_err" by goto statements.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring elfring@users.sourceforge.net --- sound/soc/codecs/wm8804.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-)
diff --git a/sound/soc/codecs/wm8804.c b/sound/soc/codecs/wm8804.c index fc69b87443d8..a45812417909 100644 --- a/sound/soc/codecs/wm8804.c +++ b/sound/soc/codecs/wm8804.c @@ -626,16 +626,12 @@ int wm8804_probe(struct device *dev, struct regmap *regmap) gpiod_set_value_cansleep(wm8804->reset, 1);
ret = regmap_read(regmap, WM8804_RST_DEVID1, &id1); - if (ret < 0) { - dev_err(dev, "Failed to read device ID: %d\n", ret); - goto err_reg_enable; - } + if (ret < 0) + goto report_read_failure;
ret = regmap_read(regmap, WM8804_DEVID2, &id2); - if (ret < 0) { - dev_err(dev, "Failed to read device ID: %d\n", ret); - goto err_reg_enable; - } + if (ret < 0) + goto report_read_failure;
id2 = (id2 << 8) | id1;
@@ -674,6 +670,8 @@ int wm8804_probe(struct device *dev, struct regmap *regmap)
return 0;
+report_read_failure: + dev_err(dev, "Failed to read device ID: %d\n", ret); err_reg_enable: regulator_bulk_disable(ARRAY_SIZE(wm8804->supplies), wm8804->supplies); return ret;
On Sun, Nov 19, 2017 at 08:04:28AM +0100, SF Markus Elfring wrote:
From: Markus Elfring elfring@users.sourceforge.net Date: Sun, 19 Nov 2017 07:55:49 +0100
Add a jump target so that a specific error message is stored only once at the end of this function implementation.
Replace two calls of the function "dev_err" by goto statements.
This issue was detected by using the Coccinelle software.
Signed-off-by: Markus Elfring elfring@users.sourceforge.net
Acked-by: Charles Keepax ckeepax@opensource.cirrus.com
Thanks, Charles
participants (2)
-
Charles Keepax
-
SF Markus Elfring