2015-05-19 07:23:06

by Uwe Kleine-König

[permalink] [raw]
Subject: [PATCH] NFC: PN544: use flags argument of devm_gpiod_get to set direction

Since 39b2bbe3d715 (gpio: add flags argument to gpiod_get*() functions)
which appeared in v3.17-rc1, the gpiod_get* functions take an additional
parameter that allows to specify direction and initial value for output.

Use this to simplify the driver. Furthermore this is one caller less
that stops us making the flags argument to gpiod_get*() mandatory.

While touching this also do some minor coding style fixes.

Fixes: 0a5942c8e148 ("NFC: Add ACPI support for NXP PN544")
Signed-off-by: Uwe Kleine-König <[email protected]>
---
drivers/nfc/pn544/i2c.c | 43 +++++++++++--------------------------------
1 file changed, 11 insertions(+), 32 deletions(-)

diff --git a/drivers/nfc/pn544/i2c.c b/drivers/nfc/pn544/i2c.c
index 6fd986f5ac3e..fa75c53f3fa5 100644
--- a/drivers/nfc/pn544/i2c.c
+++ b/drivers/nfc/pn544/i2c.c
@@ -895,56 +895,35 @@ static int pn544_hci_i2c_acpi_request_resources(struct i2c_client *client)
return -ENODEV;

/* Get EN GPIO from ACPI */
- gpiod_en = devm_gpiod_get_index(dev, PN544_GPIO_NAME_EN, 1);
+ gpiod_en = devm_gpiod_get_index(dev, PN544_GPIO_NAME_EN, 1,
+ GPIOD_OUT_LOW);
if (IS_ERR(gpiod_en)) {
- nfc_err(dev,
- "Unable to get EN GPIO\n");
+ nfc_err(dev, "Unable to get EN GPIO\n");
return -ENODEV;
}

- phy->gpio_en = desc_to_gpio(gpiod_en);
-
- /* Configuration EN GPIO */
- ret = gpiod_direction_output(gpiod_en, 0);
- if (ret) {
- nfc_err(dev, "Fail EN pin direction\n");
- return ret;
- }
+ phy->gpio_en = desc_to_gpio(gpiod_en);

/* Get FW GPIO from ACPI */
- gpiod_fw = devm_gpiod_get_index(dev, PN544_GPIO_NAME_FW, 2);
+ gpiod_fw = devm_gpiod_get_index(dev, PN544_GPIO_NAME_FW, 2,
+ GPIOD_OUT_LOW);
if (IS_ERR(gpiod_fw)) {
- nfc_err(dev,
- "Unable to get FW GPIO\n");
+ nfc_err(dev, "Unable to get FW GPIO\n");
return -ENODEV;
}

- phy->gpio_fw = desc_to_gpio(gpiod_fw);
-
- /* Configuration FW GPIO */
- ret = gpiod_direction_output(gpiod_fw, 0);
- if (ret) {
- nfc_err(dev, "Fail FW pin direction\n");
- return ret;
- }
+ phy->gpio_fw = desc_to_gpio(gpiod_fw);

/* Get IRQ GPIO */
- gpiod_irq = devm_gpiod_get_index(dev, PN544_GPIO_NAME_IRQ, 0);
+ gpiod_irq = devm_gpiod_get_index(dev, PN544_GPIO_NAME_IRQ, 0,
+ GPIOD_IN);
if (IS_ERR(gpiod_irq)) {
- nfc_err(dev,
- "Unable to get IRQ GPIO\n");
+ nfc_err(dev, "Unable to get IRQ GPIO\n");
return -ENODEV;
}

phy->gpio_irq = desc_to_gpio(gpiod_irq);

- /* Configure IRQ GPIO */
- ret = gpiod_direction_input(gpiod_irq);
- if (ret) {
- nfc_err(dev, "Fail IRQ pin direction\n");
- return ret;
- }
-
/* Map the pin to an IRQ */
ret = gpiod_to_irq(gpiod_irq);
if (ret < 0) {
--
2.1.4



2015-05-19 14:55:05

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] NFC: PN544: use flags argument of devm_gpiod_get to set direction

On Tue, May 19, 2015 at 9:22 AM, Uwe Kleine-König
<[email protected]> wrote:

> Since 39b2bbe3d715 (gpio: add flags argument to gpiod_get*() functions)
> which appeared in v3.17-rc1, the gpiod_get* functions take an additional
> parameter that allows to specify direction and initial value for output.
>
> Use this to simplify the driver. Furthermore this is one caller less
> that stops us making the flags argument to gpiod_get*() mandatory.
>
> While touching this also do some minor coding style fixes.
>
> Fixes: 0a5942c8e148 ("NFC: Add ACPI support for NXP PN544")

As noted on earlier patches: maybe this Fixes: is a bit aggressive.

> Signed-off-by: Uwe Kleine-König <[email protected]>

Anyways:
Reviewed-by: Linus Walleij <[email protected]>

Yours,
Linus Walleij

2015-06-15 20:55:06

by Uwe Kleine-König

[permalink] [raw]
Subject: Re: [PATCH] NFC: PN544: use flags argument of devm_gpiod_get to set direction

Hello Samuel,

On Mon, Jun 08, 2015 at 11:39:11PM +0200, Samuel Ortiz wrote:
> On Tue, May 19, 2015 at 09:22:56AM +0200, Uwe Kleine-K?nig wrote:
> > Since 39b2bbe3d715 (gpio: add flags argument to gpiod_get*() functions)
> > which appeared in v3.17-rc1, the gpiod_get* functions take an additional
> > parameter that allows to specify direction and initial value for output.
> >
> > Use this to simplify the driver. Furthermore this is one caller less
> > that stops us making the flags argument to gpiod_get*() mandatory.
> >
> > While touching this also do some minor coding style fixes.
> >
> > Fixes: 0a5942c8e148 ("NFC: Add ACPI support for NXP PN544")
> > Signed-off-by: Uwe Kleine-K?nig <[email protected]>
> > ---
> > drivers/nfc/pn544/i2c.c | 43 +++++++++++--------------------------------
> > 1 file changed, 11 insertions(+), 32 deletions(-)
> Applied to nfc-next, thanks.
I wonder why nfs isn't included in next. At least this commit doesn't
show up there.

Best regards
Uwe

--
Pengutronix e.K. | Uwe Kleine-K?nig |
Industrial Linux Solutions | http://www.pengutronix.de/ |

2015-06-08 21:39:22

by Samuel Ortiz

[permalink] [raw]
Subject: Re: [PATCH] NFC: PN544: use flags argument of devm_gpiod_get to set direction

Hi Uwe,

On Tue, May 19, 2015 at 09:22:56AM +0200, Uwe Kleine-K?nig wrote:
> Since 39b2bbe3d715 (gpio: add flags argument to gpiod_get*() functions)
> which appeared in v3.17-rc1, the gpiod_get* functions take an additional
> parameter that allows to specify direction and initial value for output.
>
> Use this to simplify the driver. Furthermore this is one caller less
> that stops us making the flags argument to gpiod_get*() mandatory.
>
> While touching this also do some minor coding style fixes.
>
> Fixes: 0a5942c8e148 ("NFC: Add ACPI support for NXP PN544")
> Signed-off-by: Uwe Kleine-K?nig <[email protected]>
> ---
> drivers/nfc/pn544/i2c.c | 43 +++++++++++--------------------------------
> 1 file changed, 11 insertions(+), 32 deletions(-)
Applied to nfc-next, thanks.

Cheers,
Samuel.