2020-08-28 15:17:02

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH] extcon: palmas: Simplify with dev_err_probe()

Common pattern of handling deferred probe can be simplified with
dev_err_probe(). Less code and the error value gets printed.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/extcon/extcon-palmas.c | 18 ++++++------------
1 file changed, 6 insertions(+), 12 deletions(-)

diff --git a/drivers/extcon/extcon-palmas.c b/drivers/extcon/extcon-palmas.c
index e8e9eebe6b1d..a2852bcc5f0d 100644
--- a/drivers/extcon/extcon-palmas.c
+++ b/drivers/extcon/extcon-palmas.c
@@ -205,21 +205,15 @@ static int palmas_usb_probe(struct platform_device *pdev)

palmas_usb->id_gpiod = devm_gpiod_get_optional(&pdev->dev, "id",
GPIOD_IN);
- if (PTR_ERR(palmas_usb->id_gpiod) == -EPROBE_DEFER) {
- return -EPROBE_DEFER;
- } else if (IS_ERR(palmas_usb->id_gpiod)) {
- dev_err(&pdev->dev, "failed to get id gpio\n");
- return PTR_ERR(palmas_usb->id_gpiod);
- }
+ if (IS_ERR(palmas_usb->id_gpiod))
+ return dev_err_probe(&pdev->dev, PTR_ERR(palmas_usb->id_gpiod),
+ "failed to get id gpio\n");

palmas_usb->vbus_gpiod = devm_gpiod_get_optional(&pdev->dev, "vbus",
GPIOD_IN);
- if (PTR_ERR(palmas_usb->vbus_gpiod) == -EPROBE_DEFER) {
- return -EPROBE_DEFER;
- } else if (IS_ERR(palmas_usb->vbus_gpiod)) {
- dev_err(&pdev->dev, "failed to get vbus gpio\n");
- return PTR_ERR(palmas_usb->vbus_gpiod);
- }
+ if (IS_ERR(palmas_usb->vbus_gpiod))
+ return dev_err_probe(&pdev->dev, PTR_ERR(palmas_usb->vbus_gpiod),
+ "failed to get id gpio\n");

if (palmas_usb->enable_id_detection && palmas_usb->id_gpiod) {
palmas_usb->enable_id_detection = false;
--
2.17.1


2020-08-29 13:30:00

by Chanwoo Choi

[permalink] [raw]
Subject: Re: [PATCH] extcon: palmas: Simplify with dev_err_probe()

On Sat, Aug 29, 2020 at 12:15 AM Krzysztof Kozlowski <[email protected]> wrote:
>
> Common pattern of handling deferred probe can be simplified with
> dev_err_probe(). Less code and the error value gets printed.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> drivers/extcon/extcon-palmas.c | 18 ++++++------------
> 1 file changed, 6 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/extcon/extcon-palmas.c b/drivers/extcon/extcon-palmas.c
> index e8e9eebe6b1d..a2852bcc5f0d 100644
> --- a/drivers/extcon/extcon-palmas.c
> +++ b/drivers/extcon/extcon-palmas.c
> @@ -205,21 +205,15 @@ static int palmas_usb_probe(struct platform_device *pdev)
>
> palmas_usb->id_gpiod = devm_gpiod_get_optional(&pdev->dev, "id",
> GPIOD_IN);
> - if (PTR_ERR(palmas_usb->id_gpiod) == -EPROBE_DEFER) {
> - return -EPROBE_DEFER;
> - } else if (IS_ERR(palmas_usb->id_gpiod)) {
> - dev_err(&pdev->dev, "failed to get id gpio\n");
> - return PTR_ERR(palmas_usb->id_gpiod);
> - }
> + if (IS_ERR(palmas_usb->id_gpiod))
> + return dev_err_probe(&pdev->dev, PTR_ERR(palmas_usb->id_gpiod),
> + "failed to get id gpio\n");
>
> palmas_usb->vbus_gpiod = devm_gpiod_get_optional(&pdev->dev, "vbus",
> GPIOD_IN);
> - if (PTR_ERR(palmas_usb->vbus_gpiod) == -EPROBE_DEFER) {
> - return -EPROBE_DEFER;
> - } else if (IS_ERR(palmas_usb->vbus_gpiod)) {
> - dev_err(&pdev->dev, "failed to get vbus gpio\n");
> - return PTR_ERR(palmas_usb->vbus_gpiod);
> - }
> + if (IS_ERR(palmas_usb->vbus_gpiod))
> + return dev_err_probe(&pdev->dev, PTR_ERR(palmas_usb->vbus_gpiod),
> + "failed to get id gpio\n");
>
> if (palmas_usb->enable_id_detection && palmas_usb->id_gpiod) {
> palmas_usb->enable_id_detection = false;
> --
> 2.17.1
>

Applied it. Thanks.

--
Best Regards,
Chanwoo Choi
Samsung Electronics