Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

fbdev: goldfishfb: use devm_platform_ioremap_resource()

Replace the open-coded platform_get_resource() + ioremap() pair with
devm_platform_ioremap_resource(), which requests the memory region and
maps it in a single call, with automatic cleanup on device removal.

Signed-off-by: Amin GATTOUT <amin.gattout@gmail.com>
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Helge Deller <deller@gmx.de>

authored by

Amin GATTOUT and committed by
Helge Deller
8d10dd89 1f318b96

+3 -11
+3 -11
drivers/video/fbdev/goldfishfb.c
··· 174 174 static int goldfish_fb_probe(struct platform_device *pdev) 175 175 { 176 176 int ret; 177 - struct resource *r; 178 177 struct goldfish_fb *fb; 179 178 size_t framesize; 180 179 u32 width, height; ··· 188 189 init_waitqueue_head(&fb->wait); 189 190 platform_set_drvdata(pdev, fb); 190 191 191 - r = platform_get_resource(pdev, IORESOURCE_MEM, 0); 192 - if (r == NULL) { 193 - ret = -ENODEV; 194 - goto err_no_io_base; 195 - } 196 - fb->reg_base = ioremap(r->start, PAGE_SIZE); 197 - if (fb->reg_base == NULL) { 198 - ret = -ENOMEM; 192 + fb->reg_base = devm_platform_ioremap_resource(pdev, 0); 193 + if (IS_ERR(fb->reg_base)) { 194 + ret = PTR_ERR(fb->reg_base); 199 195 goto err_no_io_base; 200 196 } 201 197 ··· 267 273 fb->fb.fix.smem_start); 268 274 err_alloc_screen_base_failed: 269 275 err_no_irq: 270 - iounmap(fb->reg_base); 271 276 err_no_io_base: 272 277 kfree(fb); 273 278 err_fb_alloc_failed: ··· 284 291 285 292 dma_free_coherent(&pdev->dev, framesize, (void *)fb->fb.screen_base, 286 293 fb->fb.fix.smem_start); 287 - iounmap(fb->reg_base); 288 294 kfree(fb); 289 295 } 290 296