fbdev/aty128fb: Reorder backlight and framebuffer init/cleanup

The driver's backlight code requires the framebuffer to be
registered. Therefore reorder the init and cleanup calls for
both data structures.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20230613110953.24176-10-tzimmermann@suse.de
This commit is contained in:
Thomas Zimmermann 2023-06-13 13:06:44 +02:00
parent dab320deaf
commit 85362a7b1c

View 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);