[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4D37F654.70405@corscience.de>
Date: Thu, 20 Jan 2011 09:46:12 +0100
From: Thomas Weber <weber@...science.de>
To: Sergei Shtylyov <sshtylyov@...sta.com>
CC: linux-omap@...r.kernel.org, Tony Lindgren <tony@...mide.com>,
Russell King <linux@....linux.org.uk>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
Daniel Morsing <daniel.morsing@...il.com>, charu@...com
Subject: Re: [PATCHv4 3/4] OMAP3: Devkit8000: Check return value of gpio_request
Hello,
Am 19.01.2011 13:23, schrieb Sergei Shtylyov:
> Hello.
>
> On 19-01-2011 11:19, Thomas Weber wrote:
>
>> The return value of gpio_request is ignored.
>> This patch adds the check of the return value of gpio_request.
>
>> Signed-off-by: Thomas Weber<weber@...science.de>
>> ---
>> arch/arm/mach-omap2/board-devkit8000.c | 16 ++++++++++++++--
>> 1 files changed, 14 insertions(+), 2 deletions(-)
>
>> diff --git a/arch/arm/mach-omap2/board-devkit8000.c
>> b/arch/arm/mach-omap2/board-devkit8000.c
>> index 9fb416b..4ddd81c 100644
>> --- a/arch/arm/mach-omap2/board-devkit8000.c
>> +++ b/arch/arm/mach-omap2/board-devkit8000.c
> [...]
>> @@ -244,13 +246,23 @@ static int devkit8000_twl_gpio_setup(struct
>> device *dev,
>>
>> /* TWL4030_GPIO_MAX + 0 is "LCD_PWREN" (out, active high) */
>> devkit8000_lcd_device.reset_gpio = gpio + TWL4030_GPIO_MAX + 0;
>> - gpio_request(devkit8000_lcd_device.reset_gpio, "LCD_PWREN");
>> + ret = gpio_request(devkit8000_lcd_device.reset_gpio, "LCD_PWREN");
>> + if (ret < 0) {
>> + printk(KERN_ERR "Failed to request GPIO for LCD_PWRN\n");
>> + return ret;
>> + }
>> +
>> /* Disable until needed */
>> gpio_direction_output(devkit8000_lcd_device.reset_gpio, 0);
>>
>> /* gpio + 7 is "DVI_PD" (out, active low) */
>> devkit8000_dvi_device.reset_gpio = gpio + 7;
>> - gpio_request(devkit8000_dvi_device.reset_gpio, "DVI PowerDown");
>> + ret = gpio_request(devkit8000_dvi_device.reset_gpio, "DVI
>> PowerDown");
>> + if (ret < 0) {
>> + printk(KERN_ERR "Failed to request GPIO for DVI PowerDown\n");
>
> You forgot to call:
>
> gpio_free(devkit8000_lcd_device.reset_gpio);
>
Couldn't I use lcd without dvi?
And shouldn't the gpio then be set to -EINVAL for the gpio_is_valid()
check in enable_lcd()/disable_lcd() and enable_dvi()/disable_dvi()?
Thomas
>> + return ret;
>> + }
>> +
>> /* Disable until needed */
>> gpio_direction_output(devkit8000_dvi_device.reset_gpio, 0);
>
> WBR, Sergei
> --
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists