diff options
author | Damien Cassou <damien.cassou@lifl.fr> | 2012-07-31 15:54:18 +0200 |
---|---|---|
committer | Florian Tobias Schandinat <FlorianSchandinat@gmx.de> | 2012-08-23 12:59:02 +0000 |
commit | d1bea50288c7a22e68c01bb11cdb2a8db7d2fa39 (patch) | |
tree | 071075e9f2d6f038b81642e460d3da137ffe3200 /drivers/video/cobalt_lcdfb.c | |
parent | be8678149701a42587741e2d391d8fa8830e9d3b (diff) | |
download | linux-d1bea50288c7a22e68c01bb11cdb2a8db7d2fa39.tar.gz linux-d1bea50288c7a22e68c01bb11cdb2a8db7d2fa39.tar.bz2 linux-d1bea50288c7a22e68c01bb11cdb2a8db7d2fa39.zip |
drivers/video/cobalt_lcdfb.c: 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: Damien Cassou <damien.cassou@lifl.fr>
Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Diffstat (limited to 'drivers/video/cobalt_lcdfb.c')
-rw-r--r-- | drivers/video/cobalt_lcdfb.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/video/cobalt_lcdfb.c b/drivers/video/cobalt_lcdfb.c index eae46f6457e2..01a4ee7cc6b1 100644 --- a/drivers/video/cobalt_lcdfb.c +++ b/drivers/video/cobalt_lcdfb.c @@ -348,7 +348,8 @@ static int __devinit cobalt_lcdfb_probe(struct platform_device *dev) } info->screen_size = resource_size(res); - info->screen_base = ioremap(res->start, info->screen_size); + info->screen_base = devm_ioremap(&dev->dev, res->start, + info->screen_size); info->fbops = &cobalt_lcd_fbops; info->fix = cobalt_lcdfb_fix; info->fix.smem_start = res->start; @@ -359,7 +360,6 @@ static int __devinit cobalt_lcdfb_probe(struct platform_device *dev) retval = register_framebuffer(info); if (retval < 0) { - iounmap(info->screen_base); framebuffer_release(info); return retval; } @@ -380,7 +380,6 @@ static int __devexit cobalt_lcdfb_remove(struct platform_device *dev) info = platform_get_drvdata(dev); if (info) { - iounmap(info->screen_base); unregister_framebuffer(info); framebuffer_release(info); } |