[PATCH] power_supply: bq24257: use flags argument of devm_gpiod_get

Subsystems: the rest

STALE4138d

3 messages, 2 authors, 2015-06-13 · open the first message on its own page

[PATCH] power_supply: bq24257: use flags argument of devm_gpiod_get

From: Uwe Kleine-König <hidden>
Date: 2015-06-12 07:24:49

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.

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

Signed-off-by: Uwe Kleine-König <redacted>
---
Hello,

this patch applies to next and is only necessary on top of 2219a935963e
(power_supply: Add TI BQ24257 charger driver).

Note I plan to make the flags parameter mandatory for 4.3. So unless
this change gets into 4.2, would it be ok to let it go in via the gpio
tree?

Best regards
Uwe

 drivers/power/bq24257_charger.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/drivers/power/bq24257_charger.c b/drivers/power/bq24257_charger.c
index ce7f5bbfd5e3..d072f1838526 100644
--- a/drivers/power/bq24257_charger.c
+++ b/drivers/power/bq24257_charger.c
@@ -611,28 +611,24 @@ static int bq24257_irq_probe(struct bq24257_device *bq)
 	int ret;
 	struct gpio_desc *stat_irq;
 
-	stat_irq = devm_gpiod_get_index(bq->dev, BQ24257_STAT_IRQ, 0);
+	stat_irq = devm_gpiod_get_index(bq->dev, BQ24257_STAT_IRQ, 0, GPIOD_IN);
 	if (IS_ERR(stat_irq)) {
 		dev_err(bq->dev, "could not probe stat_irq pin\n");
 		return PTR_ERR(stat_irq);
 	}
 
-	ret = gpiod_direction_input(stat_irq);
-	if (ret < 0)
-		return ret;
-
 	return gpiod_to_irq(stat_irq);
 }
 
 static int bq24257_pg_gpio_probe(struct bq24257_device *bq)
 {
-	bq->pg = devm_gpiod_get_index(bq->dev, BQ24257_PG_GPIO, 0);
-	if (IS_ERR(bq->pg)) {
+	bq->pg = devm_gpiod_get_index(bq->dev, BQ24257_PG_GPIO, 0, GPIOD_IN);
+	if (IS_ERR(bq->pg))
 		dev_err(bq->dev, "could not probe PG pin\n");
 		return PTR_ERR(bq->pg);
 	}
 
-	return gpiod_direction_input(bq->pg);
+	return 0;
 }
 
 static int bq24257_fw_probe(struct bq24257_device *bq)
-- 
2.1.4

[PATCH v2] power_supply: bq24257: use flags argument of devm_gpiod_get

From: Uwe Kleine-König <hidden>
Date: 2015-06-12 08:54:11

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.

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

Signed-off-by: Uwe Kleine-König <redacted>
---
Changes since (implicit) v1, sent with Message-Id: 1434093882-31795-1-git-send-email-u.kleine-koenig@pengutronix.de:

 - make it compilable

 drivers/power/bq24257_charger.c | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/drivers/power/bq24257_charger.c b/drivers/power/bq24257_charger.c
index ce7f5bbfd5e3..5859bc7c1616 100644
--- a/drivers/power/bq24257_charger.c
+++ b/drivers/power/bq24257_charger.c
@@ -608,31 +608,26 @@ static int bq24257_power_supply_init(struct bq24257_device *bq)
 
 static int bq24257_irq_probe(struct bq24257_device *bq)
 {
-	int ret;
 	struct gpio_desc *stat_irq;
 
-	stat_irq = devm_gpiod_get_index(bq->dev, BQ24257_STAT_IRQ, 0);
+	stat_irq = devm_gpiod_get_index(bq->dev, BQ24257_STAT_IRQ, 0, GPIOD_IN);
 	if (IS_ERR(stat_irq)) {
 		dev_err(bq->dev, "could not probe stat_irq pin\n");
 		return PTR_ERR(stat_irq);
 	}
 
-	ret = gpiod_direction_input(stat_irq);
-	if (ret < 0)
-		return ret;
-
 	return gpiod_to_irq(stat_irq);
 }
 
 static int bq24257_pg_gpio_probe(struct bq24257_device *bq)
 {
-	bq->pg = devm_gpiod_get_index(bq->dev, BQ24257_PG_GPIO, 0);
+	bq->pg = devm_gpiod_get_index(bq->dev, BQ24257_PG_GPIO, 0, GPIOD_IN);
 	if (IS_ERR(bq->pg)) {
 		dev_err(bq->dev, "could not probe PG pin\n");
 		return PTR_ERR(bq->pg);
 	}
 
-	return gpiod_direction_input(bq->pg);
+	return 0;
 }
 
 static int bq24257_fw_probe(struct bq24257_device *bq)
-- 
2.1.4

Re: [PATCH v2] power_supply: bq24257: use flags argument of devm_gpiod_get

From: Sebastian Reichel <sre@kernel.org>
Date: 2015-06-13 02:39:20

Hi,

On Fri, Jun 12, 2015 at 10:54:04AM +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.

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

Signed-off-by: Uwe Kleine-König <redacted>
---
Changes since (implicit) v1, sent with Message-Id: 1434093882-31795-1-git-send-email-u.kleine-koenig@pengutronix.de:

 - make it compilable
Thanks, queued for 4.2.

-- Sebastian
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help