linux-fbdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Zimmermann <tzimmermann@suse.de>
To: deller@gmx.de, daniel@ffwll.ch, javierm@redhat.com,
	sam@ravnborg.org, linux-fbdev@vger.kernel.org,
	dri-devel@lists.freedesktop.org
Cc: linux-kernel@vger.kernel.org, Thomas Zimmermann <tzimmermann@suse.de>
Subject: [PATCH 5/7] fbdev/core: Build fb_logo iff CONFIG_LOGO has been selected
Date: Tue, 29 Aug 2023 16:15:44 +0200	[thread overview]
Message-ID: <20230829142109.4521-6-tzimmermann@suse.de> (raw)
In-Reply-To: <20230829142109.4521-1-tzimmermann@suse.de>

Only build fb_logo.c if CONFIG_LOGO has been selected. Otherwise
provide empty implementations of the contained interfaces and avoid
using the exported variables.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
---
 drivers/video/fbdev/core/Makefile      |  3 ++-
 drivers/video/fbdev/core/fb_internal.h | 11 +++++++++++
 drivers/video/fbdev/core/fb_logo.c     | 14 --------------
 drivers/video/fbdev/core/fbcon.c       |  4 ++++
 4 files changed, 17 insertions(+), 15 deletions(-)

diff --git a/drivers/video/fbdev/core/Makefile b/drivers/video/fbdev/core/Makefile
index adce31155e92..36d3156dc759 100644
--- a/drivers/video/fbdev/core/Makefile
+++ b/drivers/video/fbdev/core/Makefile
@@ -2,7 +2,6 @@
 obj-$(CONFIG_FB_NOTIFY)           += fb_notify.o
 obj-$(CONFIG_FB_CORE)             += fb.o
 fb-y                              := fb_info.o \
-                                     fb_logo.o \
                                      fbmem.o fbcmap.o \
                                      modedb.o fbcvt.o fb_cmdline.o fb_io_fops.o
 ifdef CONFIG_FB
@@ -24,6 +23,8 @@ fb-y				  += fbcon_rotate.o fbcon_cw.o fbcon_ud.o \
 endif
 endif
 
+fb-$(CONFIG_LOGO)		  += fb_logo.o
+
 obj-$(CONFIG_FB_CFB_FILLRECT)  += cfbfillrect.o
 obj-$(CONFIG_FB_CFB_COPYAREA)  += cfbcopyarea.o
 obj-$(CONFIG_FB_CFB_IMAGEBLIT) += cfbimgblt.o
diff --git a/drivers/video/fbdev/core/fb_internal.h b/drivers/video/fbdev/core/fb_internal.h
index 79e57a5e6e7e..613832d335fe 100644
--- a/drivers/video/fbdev/core/fb_internal.h
+++ b/drivers/video/fbdev/core/fb_internal.h
@@ -21,10 +21,21 @@ static inline void fb_unregister_chrdev(void)
 #endif
 
 /* fb_logo.c */
+#if defined(CONFIG_LOGO)
 extern bool fb_center_logo;
 extern int fb_logo_count;
 int fb_prepare_logo(struct fb_info *fb_info, int rotate);
 int fb_show_logo(struct fb_info *fb_info, int rotate);
+#else
+static inline int fb_prepare_logo(struct fb_info *info, int rotate)
+{
+	return 0;
+}
+static inline int fb_show_logo(struct fb_info *info, int rotate)
+{
+	return 0;
+}
+#endif /* CONFIG_LOGO */
 
 /* fbmem.c */
 extern struct class *fb_class;
diff --git a/drivers/video/fbdev/core/fb_logo.c b/drivers/video/fbdev/core/fb_logo.c
index 76ba5a2bebae..cde0a330b2ad 100644
--- a/drivers/video/fbdev/core/fb_logo.c
+++ b/drivers/video/fbdev/core/fb_logo.c
@@ -7,7 +7,6 @@
 bool fb_center_logo __read_mostly;
 int fb_logo_count __read_mostly = -1;
 
-#ifdef CONFIG_LOGO
 static inline unsigned int safe_shift(unsigned int d, int n)
 {
 	return n < 0 ? d >> -n : d << n;
@@ -518,16 +517,3 @@ int fb_show_logo(struct fb_info *info, int rotate)
 	return y;
 }
 EXPORT_SYMBOL(fb_show_logo);
-#else
-int fb_prepare_logo(struct fb_info *info, int rotate)
-{
-	return 0;
-}
-EXPORT_SYMBOL(fb_prepare_logo);
-
-int fb_show_logo(struct fb_info *info, int rotate)
-{
-	return 0;
-}
-EXPORT_SYMBOL(fb_show_logo);
-#endif /* CONFIG_LOGO */
diff --git a/drivers/video/fbdev/core/fbcon.c b/drivers/video/fbdev/core/fbcon.c
index f157a5a1dffc..24b038510a71 100644
--- a/drivers/video/fbdev/core/fbcon.c
+++ b/drivers/video/fbdev/core/fbcon.c
@@ -474,15 +474,19 @@ static int __init fb_console_setup(char *this_opt)
 
 		if (!strncmp(options, "logo-pos:", 9)) {
 			options += 9;
+#ifdef CONFIG_LOGO
 			if (!strcmp(options, "center"))
 				fb_center_logo = true;
+#endif
 			continue;
 		}
 
 		if (!strncmp(options, "logo-count:", 11)) {
 			options += 11;
+#ifdef CONFIG_LOGO
 			if (*options)
 				fb_logo_count = simple_strtol(options, &options, 0);
+#endif
 			continue;
 		}
 	}
-- 
2.41.0


  parent reply	other threads:[~2023-08-29 14:22 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-29 14:15 [PATCH 0/7] fbdev: Split off code for boot-up logo Thomas Zimmermann
2023-08-29 14:15 ` [PATCH 1/7] fbdev/au1200fb: Do not display " Thomas Zimmermann
2023-09-06  9:45   ` Javier Martinez Canillas
2023-08-29 14:15 ` [PATCH 2/7] fbdev/mmp/mmpfb: " Thomas Zimmermann
2023-09-06  9:54   ` Javier Martinez Canillas
2023-09-07  6:56     ` Thomas Zimmermann
2023-08-29 14:15 ` [PATCH 3/7] fbdev/core: Fix style of code for " Thomas Zimmermann
2023-09-06  9:59   ` Javier Martinez Canillas
2023-08-29 14:15 ` [PATCH 4/7] fbdev/core: Move logo functions into separate source file Thomas Zimmermann
2023-08-29 15:55   ` kernel test robot
2023-09-01 20:09   ` kernel test robot
2023-09-01 20:20   ` kernel test robot
2023-09-06 10:10   ` Javier Martinez Canillas
2023-08-29 14:15 ` Thomas Zimmermann [this message]
2023-09-01  8:22   ` [PATCH 5/7] fbdev/core: Build fb_logo iff CONFIG_LOGO has been selected Helge Deller
2023-09-04  7:08     ` Thomas Zimmermann
2023-09-07  8:06       ` Thomas Zimmermann
2023-09-06 10:12   ` Javier Martinez Canillas
2023-09-07  8:07     ` Thomas Zimmermann
2023-08-29 14:15 ` [PATCH 6/7] fbdev/core: Remove empty internal helpers from fb_logo.c Thomas Zimmermann
2023-09-06 10:13   ` Javier Martinez Canillas
2023-08-29 14:15 ` [PATCH 7/7] fbdev/core: Clean up include statements in fbmem.c Thomas Zimmermann
2023-09-06 10:13   ` Javier Martinez Canillas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230829142109.4521-6-tzimmermann@suse.de \
    --to=tzimmermann@suse.de \
    --cc=daniel@ffwll.ch \
    --cc=deller@gmx.de \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=javierm@redhat.com \
    --cc=linux-fbdev@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=sam@ravnborg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).