From: Andy Shevchenko <andy.shevchenko@gmail.com>
To: Krzysztof Kozlowski <krzk@kernel.org>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Hans de Goede <hdegoede@redhat.com>,
Linus Walleij <linus.walleij@linaro.org>,
Bastien Nocera <hadess@hadess.net>,
Sangwon Jee <jeesw@melfas.com>,
Eugen Hristev <eugen.hristev@microchip.com>,
"Gustavo A. R. Silva" <gustavoars@kernel.org>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
linux-input <linux-input@vger.kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Platform Driver <platform-driver-x86@vger.kernel.org>
Subject: Re: [PATCH 16/24] Input: goodix - Simplify with dev_err_probe()
Date: Thu, 27 Aug 2020 12:13:43 +0300 [thread overview]
Message-ID: <CAHp75VcijLOjjjhX+um8dnLoq3=g0BwHK7zMoKuV6DO26qVDXg@mail.gmail.com> (raw)
In-Reply-To: <20200826181706.11098-16-krzk@kernel.org>
On Wed, Aug 26, 2020 at 9:19 PM Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> Common pattern of handling deferred probe can be simplified with
> dev_err_probe(). Less code and also it prints the error value.
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
> drivers/input/touchscreen/goodix.c | 40 ++++++++----------------------
> 1 file changed, 11 insertions(+), 29 deletions(-)
>
> diff --git a/drivers/input/touchscreen/goodix.c b/drivers/input/touchscreen/goodix.c
> index 02c75ea385e0..48c4c3d297fe 100644
> --- a/drivers/input/touchscreen/goodix.c
> +++ b/drivers/input/touchscreen/goodix.c
> @@ -864,7 +864,6 @@ static int goodix_add_acpi_gpio_mappings(struct goodix_ts_data *ts)
> */
> static int goodix_get_gpio_config(struct goodix_ts_data *ts)
> {
> - int error;
> struct device *dev;
> struct gpio_desc *gpiod;
> bool added_acpi_mappings = false;
> @@ -874,33 +873,20 @@ static int goodix_get_gpio_config(struct goodix_ts_data *ts)
> dev = &ts->client->dev;
>
> ts->avdd28 = devm_regulator_get(dev, "AVDD28");
> - if (IS_ERR(ts->avdd28)) {
> - error = PTR_ERR(ts->avdd28);
> - if (error != -EPROBE_DEFER)
> - dev_err(dev,
> - "Failed to get AVDD28 regulator: %d\n", error);
> - return error;
> - }
> + if (IS_ERR(ts->avdd28))
> + return dev_err_probe(dev, PTR_ERR(ts->avdd28), "Failed to get AVDD28 regulator\n");
>
> ts->vddio = devm_regulator_get(dev, "VDDIO");
> - if (IS_ERR(ts->vddio)) {
> - error = PTR_ERR(ts->vddio);
> - if (error != -EPROBE_DEFER)
> - dev_err(dev,
> - "Failed to get VDDIO regulator: %d\n", error);
> - return error;
> - }
> + if (IS_ERR(ts->vddio))
> + return dev_err_probe(dev, PTR_ERR(ts->vddio), "Failed to get VDDIO regulator\n");
>
> retry_get_irq_gpio:
> /* Get the interrupt GPIO pin number */
> gpiod = devm_gpiod_get_optional(dev, GOODIX_GPIO_INT_NAME, GPIOD_IN);
> - if (IS_ERR(gpiod)) {
> - error = PTR_ERR(gpiod);
> - if (error != -EPROBE_DEFER)
> - dev_dbg(dev, "Failed to get %s GPIO: %d\n",
> - GOODIX_GPIO_INT_NAME, error);
> - return error;
> - }
> + if (IS_ERR(gpiod))
> + return dev_err_probe(dev, PTR_ERR(gpiod), "Failed to get %s GPIO\n",
> + GOODIX_GPIO_INT_NAME);
> +
> if (!gpiod && has_acpi_companion(dev) && !added_acpi_mappings) {
> added_acpi_mappings = true;
> if (goodix_add_acpi_gpio_mappings(ts) == 0)
> @@ -911,13 +897,9 @@ static int goodix_get_gpio_config(struct goodix_ts_data *ts)
>
> /* Get the reset line GPIO pin number */
> gpiod = devm_gpiod_get_optional(dev, GOODIX_GPIO_RST_NAME, GPIOD_IN);
> - if (IS_ERR(gpiod)) {
> - error = PTR_ERR(gpiod);
> - if (error != -EPROBE_DEFER)
> - dev_dbg(dev, "Failed to get %s GPIO: %d\n",
> - GOODIX_GPIO_RST_NAME, error);
> - return error;
> - }
> + if (IS_ERR(gpiod))
> + return dev_err_probe(dev, PTR_ERR(gpiod), "Failed to get %s GPIO\n",
> + GOODIX_GPIO_RST_NAME);
>
> ts->gpiod_rst = gpiod;
>
> --
> 2.17.1
>
--
With Best Regards,
Andy Shevchenko
next prev parent reply other threads:[~2020-08-27 9:14 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-26 18:16 [PATCH 01/24] Input: bcm-keypad - Simplify with dev_err_probe() Krzysztof Kozlowski
2020-08-26 18:16 ` [PATCH 02/24] Input: gpio_keys " Krzysztof Kozlowski
2020-08-26 19:13 ` Andy Shevchenko
2020-08-26 19:22 ` Krzysztof Kozlowski
2020-08-26 19:39 ` Andy Shevchenko
2020-08-26 19:58 ` Krzysztof Kozlowski
2020-08-26 18:16 ` [PATCH 03/24] Input: gpio_keys_polled " Krzysztof Kozlowski
2020-08-27 9:05 ` Andy Shevchenko
2020-08-26 18:16 ` [PATCH 04/24] Input: gpio-vibra " Krzysztof Kozlowski
2020-08-27 9:03 ` Andy Shevchenko
2020-08-27 18:40 ` Krzysztof Kozlowski
2020-08-26 18:16 ` [PATCH 05/24] Input: pwm-beeper " Krzysztof Kozlowski
2020-08-27 9:07 ` Andy Shevchenko
2020-08-26 18:16 ` [PATCH 06/24] Input: pwm-vibra " Krzysztof Kozlowski
2020-08-27 9:06 ` Andy Shevchenko
2020-08-27 18:40 ` Krzysztof Kozlowski
2020-08-26 18:16 ` [PATCH 07/24] Input: rotary_encoder " Krzysztof Kozlowski
2020-08-27 9:08 ` Andy Shevchenko
2020-08-26 18:16 ` [PATCH 08/24] Input: elan_i2c " Krzysztof Kozlowski
2020-08-27 9:09 ` Andy Shevchenko
2020-08-26 18:16 ` [PATCH 09/24] Input: bu21013_ts " Krzysztof Kozlowski
2020-08-27 9:10 ` Andy Shevchenko
2020-08-27 18:41 ` Krzysztof Kozlowski
2020-08-26 18:16 ` [PATCH 10/24] Input: bu21029_ts " Krzysztof Kozlowski
2020-08-27 9:11 ` Andy Shevchenko
2020-08-26 18:16 ` [PATCH 11/24] Input: chipone_icn8318 " Krzysztof Kozlowski
2020-08-27 9:11 ` Andy Shevchenko
2020-08-26 18:16 ` [PATCH 12/24] Input: cy8ctma140 " Krzysztof Kozlowski
2020-08-27 9:11 ` Andy Shevchenko
2020-08-28 14:07 ` Linus Walleij
2020-08-26 18:16 ` [PATCH 13/24] Input: edf-ft5x06 " Krzysztof Kozlowski
2020-08-27 9:12 ` Andy Shevchenko
2020-08-26 18:16 ` [PATCH 14/24] Input: ektf2127 " Krzysztof Kozlowski
2020-08-27 9:12 ` Andy Shevchenko
2020-08-26 18:16 ` [PATCH 15/24] Input: elants_i2c " Krzysztof Kozlowski
2020-08-27 9:13 ` Andy Shevchenko
2020-08-26 18:16 ` [PATCH 16/24] Input: goodix " Krzysztof Kozlowski
2020-08-27 9:13 ` Andy Shevchenko [this message]
2020-08-26 18:16 ` [PATCH 17/24] Input: melfas_mip4 " Krzysztof Kozlowski
2020-08-27 9:14 ` Andy Shevchenko
2020-08-26 18:17 ` [PATCH 18/24] Input: pixcir_i2c_ts " Krzysztof Kozlowski
2020-08-27 9:15 ` Andy Shevchenko
2020-08-26 18:17 ` [PATCH 19/24] Input: raydium_i2c_ts " Krzysztof Kozlowski
2020-08-27 9:16 ` Andy Shevchenko
2020-08-26 18:17 ` [PATCH 20/24] Input: resistive-adc-touch " Krzysztof Kozlowski
2020-08-27 9:17 ` Andy Shevchenko
2020-08-26 18:17 ` [PATCH 21/24] Input: silead " Krzysztof Kozlowski
2020-08-27 9:17 ` Andy Shevchenko
2020-08-26 18:17 ` [PATCH 22/24] Input: sis_i2c " Krzysztof Kozlowski
2020-08-27 9:18 ` Andy Shevchenko
2020-08-26 18:17 ` [PATCH 23/24] Input: surface3_spi " Krzysztof Kozlowski
2020-08-27 9:18 ` Andy Shevchenko
2020-08-26 18:17 ` [PATCH 24/24] Input: sx8643 " Krzysztof Kozlowski
2020-08-27 9:20 ` Andy Shevchenko
2020-08-26 19:12 ` [PATCH 01/24] Input: bcm-keypad " Andy Shevchenko
2020-08-26 19:17 ` Krzysztof Kozlowski
2020-08-26 19:57 ` Hans de Goede
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAHp75VcijLOjjjhX+um8dnLoq3=g0BwHK7zMoKuV6DO26qVDXg@mail.gmail.com' \
--to=andy.shevchenko@gmail.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=dmitry.torokhov@gmail.com \
--cc=eugen.hristev@microchip.com \
--cc=gustavoars@kernel.org \
--cc=hadess@hadess.net \
--cc=hdegoede@redhat.com \
--cc=jeesw@melfas.com \
--cc=krzk@kernel.org \
--cc=linus.walleij@linaro.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=platform-driver-x86@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).