ASoC: codecs: wcd938x: Simplify with dev_err_probe
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Tue, 18 Apr 2023 07:46:30 +0000 (09:46 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Nov 2023 08:35:22 +0000 (09:35 +0100)
[ Upstream commit 60ba2fda5280528e70fa26b44e36d1530f6d1d7e ]

Replace dev_err() in probe() path with dev_err_probe() to:
1. Make code a bit simpler and easier to read,
2. Do not print messages on deferred probe.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20230418074630.8681-4-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Stable-dep-of: 69a026a2357e ("ASoC: codecs: wcd938x: fix regulator leaks on probe errors")
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/codecs/wcd938x.c

index 73d7c92..f0aa441 100644 (file)
@@ -3302,18 +3302,15 @@ static int wcd938x_populate_dt_data(struct wcd938x_priv *wcd938x, struct device
        int ret;
 
        wcd938x->reset_gpio = of_get_named_gpio(dev->of_node, "reset-gpios", 0);
-       if (wcd938x->reset_gpio < 0) {
-               dev_err(dev, "Failed to get reset gpio: err = %d\n",
-                       wcd938x->reset_gpio);
-               return wcd938x->reset_gpio;
-       }
+       if (wcd938x->reset_gpio < 0)
+               return dev_err_probe(dev, wcd938x->reset_gpio,
+                                    "Failed to get reset gpio\n");
 
        wcd938x->us_euro_gpio = devm_gpiod_get_optional(dev, "us-euro",
                                                GPIOD_OUT_LOW);
-       if (IS_ERR(wcd938x->us_euro_gpio)) {
-               dev_err(dev, "us-euro swap Control GPIO not found\n");
-               return PTR_ERR(wcd938x->us_euro_gpio);
-       }
+       if (IS_ERR(wcd938x->us_euro_gpio))
+               return dev_err_probe(dev, PTR_ERR(wcd938x->us_euro_gpio),
+                                    "us-euro swap Control GPIO not found\n");
 
        cfg->swap_gnd_mic = wcd938x_swap_gnd_mic;
 
@@ -3323,16 +3320,12 @@ static int wcd938x_populate_dt_data(struct wcd938x_priv *wcd938x, struct device
        wcd938x->supplies[3].supply = "vdd-mic-bias";
 
        ret = regulator_bulk_get(dev, WCD938X_MAX_SUPPLY, wcd938x->supplies);
-       if (ret) {
-               dev_err(dev, "Failed to get supplies: err = %d\n", ret);
-               return ret;
-       }
+       if (ret)
+               return dev_err_probe(dev, ret, "Failed to get supplies\n");
 
        ret = regulator_bulk_enable(WCD938X_MAX_SUPPLY, wcd938x->supplies);
-       if (ret) {
-               dev_err(dev, "Failed to enable supplies: err = %d\n", ret);
-               return ret;
-       }
+       if (ret)
+               return dev_err_probe(dev, ret, "Failed to enable supplies\n");
 
        wcd938x_dt_parse_micbias_info(dev, wcd938x);