fbdev/aty128fb: Reorder backlight and framebuffer init/cleanup
[sfrench/cifs-2.6.git] / drivers / video / fbdev / aty / aty128fb.c
index 36a9ac05a340f93ab6f1259001ad2feee6791e24..b4a49068a522f12a483f1c7834c17960c798c24b 100644 (file)
@@ -2028,14 +2028,14 @@ static int aty128_init(struct pci_dev *pdev, const struct pci_device_id *ent)
        par->asleep = 0;
        par->lock_blank = 0;
 
+       if (register_framebuffer(info) < 0)
+               return 0;
+
 #ifdef CONFIG_FB_ATY128_BACKLIGHT
        if (backlight)
                aty128_bl_init(par);
 #endif
 
-       if (register_framebuffer(info) < 0)
-               return 0;
-
        fb_info(info, "%s frame buffer device on %s\n",
                info->fix.id, video_card);
 
@@ -2167,12 +2167,12 @@ static void aty128_remove(struct pci_dev *pdev)
 
        par = info->par;
 
-       unregister_framebuffer(info);
-
 #ifdef CONFIG_FB_ATY128_BACKLIGHT
        aty128_bl_exit(info->bl_dev);
 #endif
 
+       unregister_framebuffer(info);
+
        arch_phys_wc_del(par->wc_cookie);
        iounmap(par->regbase);
        iounmap(info->screen_base);