Skip to content

Commit

Permalink
backlight: l4f00242t03: fix error handling in l4f00242t03_probe
Browse files Browse the repository at this point in the history
Error handling fixes:
1. In the case of kzalloc failure, simple return -ENOMEM instead of goto
   err. ( priv is NULL in this case )
2. In the case of gpio_request fail for reset_gpio and data_enable_gpio,
   properly release resources by goto err and err2 respectively.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Alberto Panizzo <maramaopercheseimorto@gmail.com>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
  • Loading branch information
Axel Lin authored and Richard Purdie committed May 26, 2010
1 parent ee378a5 commit beb0a43
Showing 1 changed file with 3 additions and 4 deletions.
7 changes: 3 additions & 4 deletions drivers/video/backlight/l4f00242t03.c
Original file line number Diff line number Diff line change
Expand Up @@ -125,8 +125,7 @@ static int __devinit l4f00242t03_probe(struct spi_device *spi)

if (priv == NULL) {
dev_err(&spi->dev, "No memory for this device.\n");
ret = -ENOMEM;
goto err;
return -ENOMEM;
}

dev_set_drvdata(&spi->dev, priv);
Expand All @@ -139,7 +138,7 @@ static int __devinit l4f00242t03_probe(struct spi_device *spi)
if (ret) {
dev_err(&spi->dev,
"Unable to get the lcd l4f00242t03 reset gpio.\n");
return ret;
goto err;
}

ret = gpio_direction_output(pdata->reset_gpio, 1);
Expand All @@ -151,7 +150,7 @@ static int __devinit l4f00242t03_probe(struct spi_device *spi)
if (ret) {
dev_err(&spi->dev,
"Unable to get the lcd l4f00242t03 data en gpio.\n");
return ret;
goto err2;
}

ret = gpio_direction_output(pdata->data_enable_gpio, 0);
Expand Down

0 comments on commit beb0a43

Please sign in to comment.