[PATCHv4 3/4] OMAP3: Devkit8000: Check return value of gpio_request
From: Sergei Shtylyov <hidden>
Date: 2011-01-19 12:25:09
Also in:
linux-omap, lkml
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<redacted> --- arch/arm/mach-omap2/board-devkit8000.c | 16 ++++++++++++++-- 1 files changed, 14 insertions(+), 2 deletions(-)
quoted hunk ↗ jump to hunk
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
[...]
quoted hunk ↗ jump to hunk
@@ -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);
+ return ret; + } + /* Disable until needed */ gpio_direction_output(devkit8000_dvi_device.reset_gpio, 0);
WBR, Sergei