All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Brownell <david-b@pacbell.net>
To: "Uwe Kleine-König" <Uwe.Kleine-Koenig@digi.com>
Cc: linux-kernel@vger.kernel.org, Raphael Assenat <raph@8d.com>,
	Richard Purdie <rpurdie@rpsys.net>
Subject: Re: [PATCH] call gpio_cansleep only after gpio_request succeeded
Date: Thu, 14 Feb 2008 08:43:24 -0800	[thread overview]
Message-ID: <200802140843.25103.david-b@pacbell.net> (raw)
In-Reply-To: <1202999569-9022-1-git-send-email-Uwe.Kleine-Koenig@digi.com>

On Thursday 14 February 2008, Uwe Kleine-König wrote:
> If you have GPIO_LIB gpio_cansleep oopses on an invalid
> gpio.  So better gpio_request your pin first.
> 
> Signed-off-by: Uwe Kleine-König <Uwe.Kleine-Koenig@digi.com>
> Cc: David Brownell <dbrownell@users.sourceforge.net>

Acked-by: David Brownell <dbrownell@users.sourceforge.net>

... my bad, sorry.  The "first do gpio_request(), THEN
you can test gpio_cansleep()" issue got resolved in that
direction a bit late; this is the only in-tree driver
that I know would be affected.  My test platforms haven't
yet been updated to 2.6.25-rc1 ... :(



> Cc: Raphael Assenat <raph@8d.com>
> Cc: Richard Purdie <rpurdie@rpsys.net>
> ---
> Hello,
> 
> I currently start using GPIO_LIB and don't have any chips yet.  The Oops will
> vanish after I will have registered the chips for my SoC's gpios, but still
> this way the code is more robust.
> 
> Best regards
> Uwe
> 
>  drivers/leds/leds-gpio.c |    8 ++++----
>  1 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/leds/leds-gpio.c b/drivers/leds/leds-gpio.c
> index 6c0a9c4..76ddcf3 100644
> --- a/drivers/leds/leds-gpio.c
> +++ b/drivers/leds/leds-gpio.c
> @@ -79,6 +79,10 @@ static int gpio_led_probe(struct platform_device *pdev)
>  		cur_led = &pdata->leds[i];
>  		led_dat = &leds_data[i];
>  
> +		ret = gpio_request(led_dat->gpio, cur_led->name);
> +		if (ret < 0)
> +			goto err;
> +
>  		led_dat->cdev.name = cur_led->name;
>  		led_dat->cdev.default_trigger = cur_led->default_trigger;
>  		led_dat->gpio = cur_led->gpio;
> @@ -87,10 +91,6 @@ static int gpio_led_probe(struct platform_device *pdev)
>  		led_dat->cdev.brightness_set = gpio_led_set;
>  		led_dat->cdev.brightness = LED_OFF;
>  
> -		ret = gpio_request(led_dat->gpio, led_dat->cdev.name);
> -		if (ret < 0)
> -			goto err;
> -
>  		gpio_direction_output(led_dat->gpio, led_dat->active_low);
>  
>  		INIT_WORK(&led_dat->work, gpio_led_work);
> -- 
> 1.5.4.1
> 



  parent reply	other threads:[~2008-02-14 16:44 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-14 14:32 [PATCH] call gpio_cansleep only after gpio_request succeeded Uwe Kleine-König
2008-02-14 15:25 ` Uwe Kleine-König
2008-02-14 16:43 ` David Brownell [this message]
2008-03-06 10:24 ` Uwe Kleine-König

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200802140843.25103.david-b@pacbell.net \
    --to=david-b@pacbell.net \
    --cc=Uwe.Kleine-Koenig@digi.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=raph@8d.com \
    --cc=rpurdie@rpsys.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.