]> Pileus Git - ~andy/linux/blobdiff - drivers/video/stifb.c
Merge branch 'for_paulus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc
[~andy/linux] / drivers / video / stifb.c
index 8d5f35676f9a5d003fe625ff25c0216ad9fcffb1..69f3b264a22ec5a900afea7706f4649d820cda81 100644 (file)
@@ -54,7 +54,6 @@
 #undef DEBUG_STIFB_REGS                /* debug sti register accesses */
 
 
-#include <linux/config.h>
 #include <linux/module.h>
 #include <linux/kernel.h>
 #include <linux/errno.h>
@@ -1292,6 +1291,7 @@ out_err3:
 out_err2:
        release_mem_region(fix->smem_start, fix->smem_len);
 out_err1:
+       iounmap(info->screen_base);
        fb_dealloc_cmap(&info->cmap);
 out_err0:
        kfree(fb);
@@ -1365,6 +1365,8 @@ stifb_cleanup(void)
                        unregister_framebuffer(sti->info);
                        release_mem_region(info->fix.mmio_start, info->fix.mmio_len);
                        release_mem_region(info->fix.smem_start, info->fix.smem_len);
+                               if (info->screen_base)
+                                       iounmap(info->screen_base);
                        fb_dealloc_cmap(&info->cmap);
                        kfree(info); 
                }
@@ -1378,7 +1380,7 @@ stifb_setup(char *options)
        int i;
        
        if (!options || !*options)
-               return 0;
+               return 1;
        
        if (strncmp(options, "off", 3) == 0) {
                stifb_disabled = 1;
@@ -1393,7 +1395,7 @@ stifb_setup(char *options)
                        stifb_bpp_pref[i] = simple_strtoul(options, &options, 10);
                }
        }
-       return 0;
+       return 1;
 }
 
 __setup("stifb=", stifb_setup);