backlight: ili9320: use devm_ functions
authorJingoo Han <jg1.han@samsung.com>
Tue, 29 May 2012 22:07:22 +0000 (15:07 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 29 May 2012 23:22:30 +0000 (16:22 -0700)
The devm_ functions allocate memory that is released when a driver
detaches.  This patch uses devm_kzalloc of these functions.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Cc: Ben Dooks <ben-linux@fluff.org>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/video/backlight/ili9320.c

index 5118a9f..6c93993 100644 (file)
@@ -220,7 +220,7 @@ int __devinit ili9320_probe_spi(struct spi_device *spi,
 
        /* allocate and initialse our state */
 
-       ili = kzalloc(sizeof(struct ili9320), GFP_KERNEL);
+       ili = devm_kzalloc(&spi->dev, sizeof(struct ili9320), GFP_KERNEL);
        if (ili == NULL) {
                dev_err(dev, "no memory for device\n");
                return -ENOMEM;
@@ -240,8 +240,7 @@ int __devinit ili9320_probe_spi(struct spi_device *spi,
        lcd = lcd_device_register("ili9320", dev, ili, &ili9320_ops);
        if (IS_ERR(lcd)) {
                dev_err(dev, "failed to register lcd device\n");
-               ret = PTR_ERR(lcd);
-               goto err_free;
+               return PTR_ERR(lcd);
        }
 
        ili->lcd = lcd;
@@ -259,9 +258,6 @@ int __devinit ili9320_probe_spi(struct spi_device *spi,
  err_unregister:
        lcd_device_unregister(lcd);
 
- err_free:
-       kfree(ili);
-
        return ret;
 }
 
@@ -272,7 +268,6 @@ int __devexit ili9320_remove(struct ili9320 *ili)
        ili9320_power(ili, FB_BLANK_POWERDOWN);
 
        lcd_device_unregister(ili->lcd);
-       kfree(ili);
 
        return 0;
 }