lkml.org 
[lkml]   [2013]   [Nov]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH 2/2] rtc: add hym8563 rtc-driver
Date
Am Montag, 25. November 2013, 13:01:25 schrieb Mark Rutland:
> [...]
>
> > +static int hym8563_probe(struct i2c_client *client,
> > + const struct i2c_device_id *id)
> > +{
> > + struct hym8563 *hym8563;
> > + int ret, gpio_int;
> > +
> > + hym8563 = devm_kzalloc(&client->dev, sizeof(hym8563),
> > GFP_KERNEL); + if (!hym8563)
> > + return -ENOMEM;
> > +
> > + hym8563->client = client;
> > + i2c_set_clientdata(client, hym8563);
> > +
> > + device_set_wakeup_capable(&client->dev, true);
> > +
> > + gpio_int = of_get_gpio(client->dev.of_node, 0);
> > + if (!gpio_is_valid(gpio_int)) {
> > + dev_err(&client->dev, "failed to get interrupt gpio\n");
> > + return -EINVAL;
> > + }
> > +
> > + ret = devm_gpio_request_one(&client->dev, gpio_int,
> > + GPIOF_DIR_IN, "hym8563_int");
> > + if (ret) {
> > + dev_err(&client->dev, "request of gpio %d failed, %d\n",
> > + gpio_int, ret);
> > + return ret;
> > + }
>
> From here on the gpio is never used or even stashed away anywhere.
> What's the point in requesting it and then leaking it?

As I understand it, requesting gpio also is useful as a mechanism to mark them
as used and therefore prevent a gpio from wrongly being used multiple times.

So, I guess it would be better to either ignore client->irq and just use
gpio_to_irq or use client->irq alone, without the gpio-functions at all.

But what would be preferrable?


\
 
 \ /
  Last update: 2013-11-26 01:01    [W:0.063 / U:0.596 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site