Message ID | 20210516062629.13550-1-aardelean@deviqon.com |
---|---|
State | Accepted |
Commit | 52f39cfee66d1878d91a3fdb97d47557af4da0f8 |
Headers | show |
Series | gpio: gpio-sprd: remove platform_set_drvdata() + cleanup probe | expand |
On Sun, May 16, 2021 at 8:26 AM Alexandru Ardelean <aardelean@deviqon.com> wrote: > > The platform_set_drvdata() call is only useful if we need to retrieve back > the private information. > Since the driver doesn't do that, it's not useful to have it. > > If this is removed, we can also just do a direct return on > devm_gpiochip_add_data(). We don't need to print that this call failed as > there are other ways to log/see this during probe. > > Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com> > --- > drivers/gpio/gpio-sprd.c | 10 +--------- > 1 file changed, 1 insertion(+), 9 deletions(-) > > diff --git a/drivers/gpio/gpio-sprd.c b/drivers/gpio/gpio-sprd.c > index 36ea8a3bd451..25c37edcbc6c 100644 > --- a/drivers/gpio/gpio-sprd.c > +++ b/drivers/gpio/gpio-sprd.c > @@ -222,7 +222,6 @@ static int sprd_gpio_probe(struct platform_device *pdev) > { > struct gpio_irq_chip *irq; > struct sprd_gpio *sprd_gpio; > - int ret; > > sprd_gpio = devm_kzalloc(&pdev->dev, sizeof(*sprd_gpio), GFP_KERNEL); > if (!sprd_gpio) > @@ -259,14 +258,7 @@ static int sprd_gpio_probe(struct platform_device *pdev) > irq->num_parents = 1; > irq->parents = &sprd_gpio->irq; > > - ret = devm_gpiochip_add_data(&pdev->dev, &sprd_gpio->chip, sprd_gpio); > - if (ret < 0) { > - dev_err(&pdev->dev, "Could not register gpiochip %d\n", ret); > - return ret; > - } > - > - platform_set_drvdata(pdev, sprd_gpio); > - return 0; > + return devm_gpiochip_add_data(&pdev->dev, &sprd_gpio->chip, sprd_gpio); > } > > static const struct of_device_id sprd_gpio_of_match[] = { > -- > 2.31.1 > Applied, thanks! Bart
diff --git a/drivers/gpio/gpio-sprd.c b/drivers/gpio/gpio-sprd.c index 36ea8a3bd451..25c37edcbc6c 100644 --- a/drivers/gpio/gpio-sprd.c +++ b/drivers/gpio/gpio-sprd.c @@ -222,7 +222,6 @@ static int sprd_gpio_probe(struct platform_device *pdev) { struct gpio_irq_chip *irq; struct sprd_gpio *sprd_gpio; - int ret; sprd_gpio = devm_kzalloc(&pdev->dev, sizeof(*sprd_gpio), GFP_KERNEL); if (!sprd_gpio) @@ -259,14 +258,7 @@ static int sprd_gpio_probe(struct platform_device *pdev) irq->num_parents = 1; irq->parents = &sprd_gpio->irq; - ret = devm_gpiochip_add_data(&pdev->dev, &sprd_gpio->chip, sprd_gpio); - if (ret < 0) { - dev_err(&pdev->dev, "Could not register gpiochip %d\n", ret); - return ret; - } - - platform_set_drvdata(pdev, sprd_gpio); - return 0; + return devm_gpiochip_add_data(&pdev->dev, &sprd_gpio->chip, sprd_gpio); } static const struct of_device_id sprd_gpio_of_match[] = {
The platform_set_drvdata() call is only useful if we need to retrieve back the private information. Since the driver doesn't do that, it's not useful to have it. If this is removed, we can also just do a direct return on devm_gpiochip_add_data(). We don't need to print that this call failed as there are other ways to log/see this during probe. Signed-off-by: Alexandru Ardelean <aardelean@deviqon.com> --- drivers/gpio/gpio-sprd.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-)