lkml.org 
[lkml]   [2017]   [Nov]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH] ASoC: wm8804: Use common error handling code in wm8804_probe()
Date
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;
--
2.15.0
\
 
 \ /
  Last update: 2017-11-19 08:06    [W:0.036 / U:0.664 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site