summaryrefslogtreecommitdiffstats
path: root/drivers/video/vesafb.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/video/vesafb.c')
-rw-r--r--drivers/video/vesafb.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/video/vesafb.c b/drivers/video/vesafb.c
index bdd8bda70..b11655785 100644
--- a/drivers/video/vesafb.c
+++ b/drivers/video/vesafb.c
@@ -543,12 +543,19 @@ int __init vesafb_init(void)
if (!request_mem_region(video_base, video_size, "vesafb")) {
printk(KERN_ERR
- "vesafb: abort, cannot reserve video memory at 0x%lu\n",
+ "vesafb: abort, cannot reserve video memory at 0x%lx\n",
video_base);
- return -1;
+ return -EBUSY;
}
video_vbase = ioremap(video_base, video_size);
+ if (!video_vbase) {
+ release_mem_region(video_base, video_size);
+ printk(KERN_ERR
+ "vesafb: abort, cannot ioremap video memory 0x%lx @ 0x%lx\n",
+ video_size, video_base);
+ return -EIO;
+ }
printk(KERN_INFO "vesafb: framebuffer at 0x%lx, mapped to 0x%p, size %dk\n",
video_base, video_vbase, video_size/1024);