diff options
author | Thomas Zimmermann <tzimmermann@suse.de> | 2023-06-13 13:06:44 +0200 |
---|---|---|
committer | Thomas Zimmermann <tzimmermann@suse.de> | 2023-06-27 09:58:48 +0200 |
commit | 85362a7b1c76b8aae944d1b91321bf50d60737a0 (patch) | |
tree | 2c4a0473e7286a354c7078decb71eb3db6edd51b /drivers | |
parent | dab320deaf575aada06e3597ec30a774d27cfa74 (diff) | |
download | linux-stable-85362a7b1c76b8aae944d1b91321bf50d60737a0.tar.gz linux-stable-85362a7b1c76b8aae944d1b91321bf50d60737a0.tar.bz2 linux-stable-85362a7b1c76b8aae944d1b91321bf50d60737a0.zip |
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
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/fbdev/aty/aty128fb.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/video/fbdev/aty/aty128fb.c b/drivers/video/fbdev/aty/aty128fb.c index 36a9ac05a340..b4a49068a522 100644 --- a/drivers/video/fbdev/aty/aty128fb.c +++ b/drivers/video/fbdev/aty/aty128fb.c @@ -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); |