diff options
author | Julia Lawall <Julia.Lawall@lip6.fr> | 2012-03-23 18:02:00 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-03-23 19:58:33 -0400 |
commit | ce969228fdb54a7e3d7cc1ed27367fd4b9525d74 (patch) | |
tree | 9850c7cc96d582302769c442e00142ac30a7bbc3 /drivers/video/backlight/omap1_bl.c | |
parent | 1107d40a50956146d1272f5cffcdf1d83f7e703e (diff) |
drivers/video/backlight: use devm_ functions
The various devm_ functions allocate memory that is released when a driver
detaches. This patch uses these functions for data that is allocated in
the probe function of a platform device and is only freed in the remove
function.
Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Cc: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/video/backlight/omap1_bl.c')
-rw-r--r-- | drivers/video/backlight/omap1_bl.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/video/backlight/omap1_bl.c b/drivers/video/backlight/omap1_bl.c index d8cde277ec83..0175bfb08a1c 100644 --- a/drivers/video/backlight/omap1_bl.c +++ b/drivers/video/backlight/omap1_bl.c | |||
@@ -141,7 +141,8 @@ static int omapbl_probe(struct platform_device *pdev) | |||
141 | if (!pdata) | 141 | if (!pdata) |
142 | return -ENXIO; | 142 | return -ENXIO; |
143 | 143 | ||
144 | bl = kzalloc(sizeof(struct omap_backlight), GFP_KERNEL); | 144 | bl = devm_kzalloc(&pdev->dev, sizeof(struct omap_backlight), |
145 | GFP_KERNEL); | ||
145 | if (unlikely(!bl)) | 146 | if (unlikely(!bl)) |
146 | return -ENOMEM; | 147 | return -ENOMEM; |
147 | 148 | ||
@@ -150,10 +151,8 @@ static int omapbl_probe(struct platform_device *pdev) | |||
150 | props.max_brightness = OMAPBL_MAX_INTENSITY; | 151 | props.max_brightness = OMAPBL_MAX_INTENSITY; |
151 | dev = backlight_device_register("omap-bl", &pdev->dev, bl, &omapbl_ops, | 152 | dev = backlight_device_register("omap-bl", &pdev->dev, bl, &omapbl_ops, |
152 | &props); | 153 | &props); |
153 | if (IS_ERR(dev)) { | 154 | if (IS_ERR(dev)) |
154 | kfree(bl); | ||
155 | return PTR_ERR(dev); | 155 | return PTR_ERR(dev); |
156 | } | ||
157 | 156 | ||
158 | bl->powermode = FB_BLANK_POWERDOWN; | 157 | bl->powermode = FB_BLANK_POWERDOWN; |
159 | bl->current_intensity = 0; | 158 | bl->current_intensity = 0; |
@@ -177,10 +176,8 @@ static int omapbl_probe(struct platform_device *pdev) | |||
177 | static int omapbl_remove(struct platform_device *pdev) | 176 | static int omapbl_remove(struct platform_device *pdev) |
178 | { | 177 | { |
179 | struct backlight_device *dev = platform_get_drvdata(pdev); | 178 | struct backlight_device *dev = platform_get_drvdata(pdev); |
180 | struct omap_backlight *bl = dev_get_drvdata(&dev->dev); | ||
181 | 179 | ||
182 | backlight_device_unregister(dev); | 180 | backlight_device_unregister(dev); |
183 | kfree(bl); | ||
184 | 181 | ||
185 | return 0; | 182 | return 0; |
186 | } | 183 | } |