]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/commitdiff
staging/fbtft: Fix backlight
authorNoralf Trønnes <noralf@tronnes.org>
Fri, 5 Nov 2021 20:43:58 +0000 (21:43 +0100)
committerStefan Bader <stefan.bader@canonical.com>
Thu, 3 Feb 2022 17:56:43 +0000 (18:56 +0100)
BugLink: https://bugs.launchpad.net/bugs/1956380
commit 7865dd24934ad580d1bcde8f63c39f324211a23b upstream.

Commit b4a1ed0cd18b ("fbdev: make FB_BACKLIGHT a tristate") forgot to
update fbtft breaking its backlight support when FB_BACKLIGHT is a module.

Since FB_TFT selects FB_BACKLIGHT there's no need for this conditional
so just remove it and we're good.

Fixes: b4a1ed0cd18b ("fbdev: make FB_BACKLIGHT a tristate")
Cc: <stable@vger.kernel.org>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
Link: https://lore.kernel.org/r/20211105204358.2991-1-noralf@tronnes.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/staging/fbtft/fb_ssd1351.c
drivers/staging/fbtft/fbtft-core.c

index cf263a58a1489fe4dd507dfce6b59718ffd1fb68..6fd549a424d53fc89fb938a070fa2be0442c1e89 100644 (file)
@@ -187,7 +187,6 @@ static struct fbtft_display display = {
        },
 };
 
-#ifdef CONFIG_FB_BACKLIGHT
 static int update_onboard_backlight(struct backlight_device *bd)
 {
        struct fbtft_par *par = bl_get_data(bd);
@@ -231,9 +230,6 @@ static void register_onboard_backlight(struct fbtft_par *par)
        if (!par->fbtftops.unregister_backlight)
                par->fbtftops.unregister_backlight = fbtft_unregister_backlight;
 }
-#else
-static void register_onboard_backlight(struct fbtft_par *par) { };
-#endif
 
 FBTFT_REGISTER_DRIVER(DRVNAME, "solomon,ssd1351", &display);
 
index bc53d68bfcaa31eb42eddd915be04c9795796f9b..771697508cec8651fbe936ccd65515c5958d2708 100644 (file)
@@ -136,7 +136,6 @@ static int fbtft_request_gpios_dt(struct fbtft_par *par)
 }
 #endif
 
-#ifdef CONFIG_FB_BACKLIGHT
 static int fbtft_backlight_update_status(struct backlight_device *bd)
 {
        struct fbtft_par *par = bl_get_data(bd);
@@ -169,6 +168,7 @@ void fbtft_unregister_backlight(struct fbtft_par *par)
                par->info->bl_dev = NULL;
        }
 }
+EXPORT_SYMBOL(fbtft_unregister_backlight);
 
 static const struct backlight_ops fbtft_bl_ops = {
        .get_brightness = fbtft_backlight_get_brightness,
@@ -206,12 +206,7 @@ void fbtft_register_backlight(struct fbtft_par *par)
        if (!par->fbtftops.unregister_backlight)
                par->fbtftops.unregister_backlight = fbtft_unregister_backlight;
 }
-#else
-void fbtft_register_backlight(struct fbtft_par *par) { };
-void fbtft_unregister_backlight(struct fbtft_par *par) { };
-#endif
 EXPORT_SYMBOL(fbtft_register_backlight);
-EXPORT_SYMBOL(fbtft_unregister_backlight);
 
 static void fbtft_set_addr_win(struct fbtft_par *par, int xs, int ys, int xe,
                               int ye)
@@ -860,13 +855,11 @@ int fbtft_register_framebuffer(struct fb_info *fb_info)
                 fb_info->fix.smem_len >> 10, text1,
                 HZ / fb_info->fbdefio->delay, text2);
 
-#ifdef CONFIG_FB_BACKLIGHT
        /* Turn on backlight if available */
        if (fb_info->bl_dev) {
                fb_info->bl_dev->props.power = FB_BLANK_UNBLANK;
                fb_info->bl_dev->ops->update_status(fb_info->bl_dev);
        }
-#endif
 
        return 0;