Commit 8a2151c5 authored by Uwe Kleine-König's avatar Uwe Kleine-König Committed by Samuel Ortiz

NFC: pn544: use flags argument of devm_gpiod_get to set direction

Since 39b2bbe3 (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.
Signed-off-by: default avatarUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Signed-off-by: default avatarSamuel Ortiz <sameo@linux.intel.com>
parent 0cd6f667
...@@ -895,56 +895,35 @@ static int pn544_hci_i2c_acpi_request_resources(struct i2c_client *client) ...@@ -895,56 +895,35 @@ static int pn544_hci_i2c_acpi_request_resources(struct i2c_client *client)
return -ENODEV; return -ENODEV;
/* Get EN GPIO from ACPI */ /* 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)) { if (IS_ERR(gpiod_en)) {
nfc_err(dev, nfc_err(dev, "Unable to get EN GPIO\n");
"Unable to get EN GPIO\n");
return -ENODEV; return -ENODEV;
} }
phy->gpio_en = desc_to_gpio(gpiod_en); 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;
}
/* Get FW GPIO from ACPI */ /* 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)) { if (IS_ERR(gpiod_fw)) {
nfc_err(dev, nfc_err(dev, "Unable to get FW GPIO\n");
"Unable to get FW GPIO\n");
return -ENODEV; return -ENODEV;
} }
phy->gpio_fw = desc_to_gpio(gpiod_fw); 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;
}
/* Get IRQ GPIO */ /* 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)) { if (IS_ERR(gpiod_irq)) {
nfc_err(dev, nfc_err(dev, "Unable to get IRQ GPIO\n");
"Unable to get IRQ GPIO\n");
return -ENODEV; return -ENODEV;
} }
phy->gpio_irq = desc_to_gpio(gpiod_irq); 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 */ /* Map the pin to an IRQ */
ret = gpiod_to_irq(gpiod_irq); ret = gpiod_to_irq(gpiod_irq);
if (ret < 0) { if (ret < 0) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment