Re: linux-next: build failure after merge of the gpio tree

From: Dmitry Torokhov
Date: Mon Aug 10 2015 - 01:47:01 EST


Hi Stephen,

On Mon, Aug 10, 2015 at 03:07:41PM +1000, Stephen Rothwell wrote:
> Hi Linus,
>
> After merging the gpio tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> drivers/input/touchscreen/elants_i2c.c: In function 'elants_i2c_probe':
> drivers/input/touchscreen/elants_i2c.c:1176:19: error: too few arguments to function 'devm_gpiod_get'
> ts->reset_gpio = devm_gpiod_get(&client->dev, "reset");
> ^
> In file included from drivers/input/touchscreen/elants_i2c.c:41:0:
> include/linux/gpio/consumer.h:73:32: note: declared here
> struct gpio_desc *__must_check devm_gpiod_get(struct device *dev,
> ^
>
> Caused by commit
>
> b17d1bf16cc7 ("gpio: make flags mandatory for gpiod_get functions")
>
> Interacting with commit
>
> afe10358e47a ("Input: elants_i2c - wire up regulator support")
>
> from the input tree.
>
> I have added the following merge fix patch:

Thank you for the patch. I think we actually want GPIOD_OUT_LOW and kill
the "else" branch altogether, like below.

Thanks.

--
Dmitry

Input: elants_i2c - fix for devm_gpiod_get API change

From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>

Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
---
drivers/input/touchscreen/elants_i2c.c | 10 +---------
1 file changed, 1 insertion(+), 9 deletions(-)

diff --git a/drivers/input/touchscreen/elants_i2c.c b/drivers/input/touchscreen/elants_i2c.c
index 6f71556..ddac134 100644
--- a/drivers/input/touchscreen/elants_i2c.c
+++ b/drivers/input/touchscreen/elants_i2c.c
@@ -1173,7 +1173,7 @@ static int elants_i2c_probe(struct i2c_client *client,
return error;
}

- ts->reset_gpio = devm_gpiod_get(&client->dev, "reset");
+ ts->reset_gpio = devm_gpiod_get(&client->dev, "reset", GPIOD_OUT_LOW);
if (IS_ERR(ts->reset_gpio)) {
error = PTR_ERR(ts->reset_gpio);

@@ -1188,14 +1188,6 @@ static int elants_i2c_probe(struct i2c_client *client,
}

ts->keep_power_in_suspend = true;
- } else {
- error = gpiod_direction_output(ts->reset_gpio, 0);
- if (error) {
- dev_err(&client->dev,
- "failed to configure reset gpio as output: %d\n",
- error);
- return error;
- }
}

error = elants_i2c_power_on(ts);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/