Skip to content

Commit 6c317ce

Browse files
rampxxxxhdeller
authored andcommitted
fbdev: vga16fb: Request memory region
This patch reserve and release VGA memory region. This align with Documentation/drm/todo.rst "Request memory regions in all fbdev drivers" I've tested with 32bits kernel and qemu. Signed-off-by: Javier Garcia <rampxxxx@gmail.com> Signed-off-by: Helge Deller <deller@gmx.de>
1 parent b8a65b2 commit 6c317ce

1 file changed

Lines changed: 9 additions & 0 deletions

File tree

drivers/video/fbdev/vga16fb.c

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1320,6 +1320,11 @@ static int vga16fb_probe(struct platform_device *dev)
13201320
return ret;
13211321

13221322
dev_dbg(&dev->dev, "initializing\n");
1323+
if (!request_mem_region(vga16fb_fix.smem_start, vga16fb_fix.smem_len,
1324+
"vga16b")) {
1325+
dev_err(&dev->dev, "cannot reserve video memory at 0x%lx\n",
1326+
vga16fb_fix.smem_start);
1327+
}
13231328
info = framebuffer_alloc(sizeof(struct vga16fb_par), &dev->dev);
13241329

13251330
if (!info) {
@@ -1398,6 +1403,8 @@ static int vga16fb_probe(struct platform_device *dev)
13981403
err_ioremap:
13991404
framebuffer_release(info);
14001405
err_fb_alloc:
1406+
release_mem_region(vga16fb_fix.smem_start,
1407+
vga16fb_fix.smem_len);
14011408
return ret;
14021409
}
14031410

@@ -1407,6 +1414,8 @@ static void vga16fb_remove(struct platform_device *dev)
14071414

14081415
if (info)
14091416
unregister_framebuffer(info);
1417+
release_mem_region(vga16fb_fix.smem_start,
1418+
vga16fb_fix.smem_len);
14101419
}
14111420

14121421
static const struct platform_device_id vga16fb_driver_id_table[] = {

0 commit comments

Comments
 (0)