linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/3] Add possibility to specify the number of displayed logos
@ 2019-08-27 11:09 Peter Rosin
  2019-08-27 11:09 ` [PATCH v3 1/3] fbdev: fix numbering of fbcon options Peter Rosin
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Peter Rosin @ 2019-08-27 11:09 UTC (permalink / raw)
  To: linux-kernel
  Cc: Peter Rosin, Bartlomiej Zolnierkiewicz, Jonathan Corbet,
	dri-devel, linux-fbdev, linux-doc, Matthew Wilcox,
	Geert Uytterhoeven

Hi!

The first patch fixes the fact that there are two items numbered "4" in
the list of fbcon options. This bug is a teenager...

The second patch extends that list with a new option that allows the
user to display any number of logos (that fits on the screen). I need it
to limit the display to only one logo instead of one for each CPU core.

Changes since v2

- make -1 the default and make 0 disable the logo [Geert Uytterhoeven]
- cpu -> CPU

Changes since v1

- do not needlessly export fb_logo_count [Matthew Wilcox]
- added patch 3/3, which removes the export of fb_center_logo

Cheers,
Peter

Peter Rosin (3):
  fbdev: fix numbering of fbcon options
  fbdev: fbmem: allow overriding the number of bootup logos
  fbdev: fbmem: avoid exporting fb_center_logo

 Documentation/fb/fbcon.rst       | 13 +++++++++----
 drivers/video/fbdev/core/fbcon.c |  7 +++++++
 drivers/video/fbdev/core/fbmem.c | 13 +++++++++----
 include/linux/fb.h               |  1 +
 4 files changed, 26 insertions(+), 8 deletions(-)

-- 
2.11.0


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH v3 1/3] fbdev: fix numbering of fbcon options
  2019-08-27 11:09 [PATCH v3 0/3] Add possibility to specify the number of displayed logos Peter Rosin
@ 2019-08-27 11:09 ` Peter Rosin
  2019-08-27 11:25   ` Geert Uytterhoeven
  2020-01-03 11:51   ` Bartlomiej Zolnierkiewicz
  2019-08-27 11:09 ` [PATCH v3 2/3] fbdev: fbmem: allow overriding the number of bootup logos Peter Rosin
  2019-08-27 11:09 ` [PATCH v3 3/3] fbdev: fbmem: avoid exporting fb_center_logo Peter Rosin
  2 siblings, 2 replies; 11+ messages in thread
From: Peter Rosin @ 2019-08-27 11:09 UTC (permalink / raw)
  To: linux-kernel
  Cc: Peter Rosin, Bartlomiej Zolnierkiewicz, Jonathan Corbet,
	dri-devel, linux-fbdev, linux-doc, Matthew Wilcox,
	Geert Uytterhoeven

Three shall be the number thou shalt count, and the number of the
counting shall be three. Four shalt thou not count...

One! Two! Five!

Fixes: efb985f6b265 ("[PATCH] fbcon: Console Rotation - Add framebuffer console documentation")
Signed-off-by: Peter Rosin <peda@axentia.se>
---
 Documentation/fb/fbcon.rst | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/Documentation/fb/fbcon.rst b/Documentation/fb/fbcon.rst
index ebca41785abe..65ba40255137 100644
--- a/Documentation/fb/fbcon.rst
+++ b/Documentation/fb/fbcon.rst
@@ -127,7 +127,7 @@ C. Boot options
 	is typically located on the same video card.  Thus, the consoles that
 	are controlled by the VGA console will be garbled.
 
-4. fbcon=rotate:<n>
+5. fbcon=rotate:<n>
 
 	This option changes the orientation angle of the console display. The
 	value 'n' accepts the following:
@@ -152,21 +152,21 @@ C. Boot options
 	Actually, the underlying fb driver is totally ignorant of console
 	rotation.
 
-5. fbcon=margin:<color>
+6. fbcon=margin:<color>
 
 	This option specifies the color of the margins. The margins are the
 	leftover area at the right and the bottom of the screen that are not
 	used by text. By default, this area will be black. The 'color' value
 	is an integer number that depends on the framebuffer driver being used.
 
-6. fbcon=nodefer
+7. fbcon=nodefer
 
 	If the kernel is compiled with deferred fbcon takeover support, normally
 	the framebuffer contents, left in place by the firmware/bootloader, will
 	be preserved until there actually is some text is output to the console.
 	This option causes fbcon to bind immediately to the fbdev device.
 
-7. fbcon=logo-pos:<location>
+8. fbcon=logo-pos:<location>
 
 	The only possible 'location' is 'center' (without quotes), and when
 	given, the bootup logo is moved from the default top-left corner
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v3 2/3] fbdev: fbmem: allow overriding the number of bootup logos
  2019-08-27 11:09 [PATCH v3 0/3] Add possibility to specify the number of displayed logos Peter Rosin
  2019-08-27 11:09 ` [PATCH v3 1/3] fbdev: fix numbering of fbcon options Peter Rosin
@ 2019-08-27 11:09 ` Peter Rosin
  2019-08-27 11:25   ` Geert Uytterhoeven
  2020-01-03 11:52   ` Bartlomiej Zolnierkiewicz
  2019-08-27 11:09 ` [PATCH v3 3/3] fbdev: fbmem: avoid exporting fb_center_logo Peter Rosin
  2 siblings, 2 replies; 11+ messages in thread
From: Peter Rosin @ 2019-08-27 11:09 UTC (permalink / raw)
  To: linux-kernel
  Cc: Peter Rosin, Bartlomiej Zolnierkiewicz, Jonathan Corbet,
	dri-devel, linux-fbdev, linux-doc, Matthew Wilcox,
	Geert Uytterhoeven

Probably most useful if you want no logo at all, or if you only want one
logo regardless of how many CPU cores you have.

Signed-off-by: Peter Rosin <peda@axentia.se>
---
 Documentation/fb/fbcon.rst       |  5 +++++
 drivers/video/fbdev/core/fbcon.c |  7 +++++++
 drivers/video/fbdev/core/fbmem.c | 12 +++++++++---
 include/linux/fb.h               |  1 +
 4 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/Documentation/fb/fbcon.rst b/Documentation/fb/fbcon.rst
index 65ba40255137..e57a3d1d085a 100644
--- a/Documentation/fb/fbcon.rst
+++ b/Documentation/fb/fbcon.rst
@@ -174,6 +174,11 @@ C. Boot options
 	displayed due to multiple CPUs, the collected line of logos is moved
 	as a whole.
 
+9. fbcon=logo-count:<n>
+
+	The value 'n' overrides the number of bootup logos. 0 disables the
+	logo, and -1 gives the default which is the number of online CPUs.
+
 C. Attaching, Detaching and Unloading
 
 Before going on to how to attach, detach and unload the framebuffer console, an
diff --git a/drivers/video/fbdev/core/fbcon.c b/drivers/video/fbdev/core/fbcon.c
index c9235a2f42f8..bb6ae995c2e5 100644
--- a/drivers/video/fbdev/core/fbcon.c
+++ b/drivers/video/fbdev/core/fbcon.c
@@ -536,6 +536,13 @@ static int __init fb_console_setup(char *this_opt)
 				fb_center_logo = true;
 			continue;
 		}
+
+		if (!strncmp(options, "logo-count:", 11)) {
+			options += 11;
+			if (*options)
+				fb_logo_count = simple_strtol(options, &options, 0);
+			continue;
+		}
 	}
 	return 1;
 }
diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c
index 64dd732021d8..c7ddcb72025b 100644
--- a/drivers/video/fbdev/core/fbmem.c
+++ b/drivers/video/fbdev/core/fbmem.c
@@ -56,6 +56,8 @@ EXPORT_SYMBOL(num_registered_fb);
 bool fb_center_logo __read_mostly;
 EXPORT_SYMBOL(fb_center_logo);
 
+int fb_logo_count __read_mostly = -1;
+
 static struct fb_info *get_fb_info(unsigned int idx)
 {
 	struct fb_info *fb_info;
@@ -620,7 +622,7 @@ int fb_prepare_logo(struct fb_info *info, int rotate)
 	memset(&fb_logo, 0, sizeof(struct logo_data));
 
 	if (info->flags & FBINFO_MISC_TILEBLITTING ||
-	    info->fbops->owner)
+	    info->fbops->owner || !fb_logo_count)
 		return 0;
 
 	if (info->fix.visual == FB_VISUAL_DIRECTCOLOR) {
@@ -686,10 +688,14 @@ int fb_prepare_logo(struct fb_info *info, int rotate)
 
 int fb_show_logo(struct fb_info *info, int rotate)
 {
+	unsigned int count;
 	int y;
 
-	y = fb_show_logo_line(info, rotate, fb_logo.logo, 0,
-			      num_online_cpus());
+	if (!fb_logo_count)
+		return 0;
+
+	count = fb_logo_count < 0 ? num_online_cpus() : fb_logo_count;
+	y = fb_show_logo_line(info, rotate, fb_logo.logo, 0, count);
 	y = fb_show_extra_logos(info, y, rotate);
 
 	return y;
diff --git a/include/linux/fb.h b/include/linux/fb.h
index 303771264644..e37f72b2efca 100644
--- a/include/linux/fb.h
+++ b/include/linux/fb.h
@@ -630,6 +630,7 @@ extern int fb_new_modelist(struct fb_info *info);
 extern struct fb_info *registered_fb[FB_MAX];
 extern int num_registered_fb;
 extern bool fb_center_logo;
+extern int fb_logo_count;
 extern struct class *fb_class;
 
 #define for_each_registered_fb(i)		\
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH v3 3/3] fbdev: fbmem: avoid exporting fb_center_logo
  2019-08-27 11:09 [PATCH v3 0/3] Add possibility to specify the number of displayed logos Peter Rosin
  2019-08-27 11:09 ` [PATCH v3 1/3] fbdev: fix numbering of fbcon options Peter Rosin
  2019-08-27 11:09 ` [PATCH v3 2/3] fbdev: fbmem: allow overriding the number of bootup logos Peter Rosin
@ 2019-08-27 11:09 ` Peter Rosin
  2019-08-27 11:35   ` Geert Uytterhoeven
  2 siblings, 1 reply; 11+ messages in thread
From: Peter Rosin @ 2019-08-27 11:09 UTC (permalink / raw)
  To: linux-kernel
  Cc: Peter Rosin, Bartlomiej Zolnierkiewicz, Jonathan Corbet,
	dri-devel, linux-fbdev, linux-doc, Matthew Wilcox,
	Geert Uytterhoeven

The variable is only ever used from fbcon.c which is linked into the
same module. Therefore, the export is not needed.

Signed-off-by: Peter Rosin <peda@axentia.se>
---
 drivers/video/fbdev/core/fbmem.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c
index c7ddcb72025b..d45e59ac351b 100644
--- a/drivers/video/fbdev/core/fbmem.c
+++ b/drivers/video/fbdev/core/fbmem.c
@@ -54,7 +54,6 @@ int num_registered_fb __read_mostly;
 EXPORT_SYMBOL(num_registered_fb);
 
 bool fb_center_logo __read_mostly;
-EXPORT_SYMBOL(fb_center_logo);
 
 int fb_logo_count __read_mostly = -1;
 
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 1/3] fbdev: fix numbering of fbcon options
  2019-08-27 11:09 ` [PATCH v3 1/3] fbdev: fix numbering of fbcon options Peter Rosin
@ 2019-08-27 11:25   ` Geert Uytterhoeven
  2020-01-03 11:51   ` Bartlomiej Zolnierkiewicz
  1 sibling, 0 replies; 11+ messages in thread
From: Geert Uytterhoeven @ 2019-08-27 11:25 UTC (permalink / raw)
  To: Peter Rosin
  Cc: linux-kernel, Bartlomiej Zolnierkiewicz, Jonathan Corbet,
	dri-devel, linux-fbdev, linux-doc, Matthew Wilcox

On Tue, Aug 27, 2019 at 1:09 PM Peter Rosin <peda@axentia.se> wrote:
> Three shall be the number thou shalt count, and the number of the
> counting shall be three. Four shalt thou not count...
>
> One! Two! Five!
>
> Fixes: efb985f6b265 ("[PATCH] fbcon: Console Rotation - Add framebuffer console documentation")
> Signed-off-by: Peter Rosin <peda@axentia.se>

Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 2/3] fbdev: fbmem: allow overriding the number of bootup logos
  2019-08-27 11:09 ` [PATCH v3 2/3] fbdev: fbmem: allow overriding the number of bootup logos Peter Rosin
@ 2019-08-27 11:25   ` Geert Uytterhoeven
  2020-01-03 11:52   ` Bartlomiej Zolnierkiewicz
  1 sibling, 0 replies; 11+ messages in thread
From: Geert Uytterhoeven @ 2019-08-27 11:25 UTC (permalink / raw)
  To: Peter Rosin
  Cc: linux-kernel, Bartlomiej Zolnierkiewicz, Jonathan Corbet,
	dri-devel, linux-fbdev, linux-doc, Matthew Wilcox

On Tue, Aug 27, 2019 at 1:09 PM Peter Rosin <peda@axentia.se> wrote:
> Probably most useful if you want no logo at all, or if you only want one
> logo regardless of how many CPU cores you have.
>
> Signed-off-by: Peter Rosin <peda@axentia.se>

Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 3/3] fbdev: fbmem: avoid exporting fb_center_logo
  2019-08-27 11:09 ` [PATCH v3 3/3] fbdev: fbmem: avoid exporting fb_center_logo Peter Rosin
@ 2019-08-27 11:35   ` Geert Uytterhoeven
  2019-08-29  7:08     ` Peter Rosin
  0 siblings, 1 reply; 11+ messages in thread
From: Geert Uytterhoeven @ 2019-08-27 11:35 UTC (permalink / raw)
  To: Peter Rosin
  Cc: linux-kernel, Bartlomiej Zolnierkiewicz, Jonathan Corbet,
	dri-devel, linux-fbdev, linux-doc, Matthew Wilcox

Hi Peter,

On Tue, Aug 27, 2019 at 1:09 PM Peter Rosin <peda@axentia.se> wrote:
> The variable is only ever used from fbcon.c which is linked into the
> same module. Therefore, the export is not needed.
>
> Signed-off-by: Peter Rosin <peda@axentia.se>

Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>

But note that the same is true for fb_class, so perhaps it can be added
(or better, removed ;-)?

Once drivers/staging/olpc_dcon/olpc_dcon.c stops abusing registered_fb[]
and num_registered_fb, those can go, too.

Does anyone remembe why au1200fb calls fb_prepare_logo() and fb_show_logo()
itself?

Gr{oetje,eeting}s,

                        Geert


--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 3/3] fbdev: fbmem: avoid exporting fb_center_logo
  2019-08-27 11:35   ` Geert Uytterhoeven
@ 2019-08-29  7:08     ` Peter Rosin
  2020-01-03 11:55       ` Bartlomiej Zolnierkiewicz
  0 siblings, 1 reply; 11+ messages in thread
From: Peter Rosin @ 2019-08-29  7:08 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: linux-kernel, Bartlomiej Zolnierkiewicz, Jonathan Corbet,
	dri-devel, linux-fbdev, linux-doc, Matthew Wilcox

On 2019-08-27 13:35, Geert Uytterhoeven wrote:
> Hi Peter,
> 
> On Tue, Aug 27, 2019 at 1:09 PM Peter Rosin <peda@axentia.se> wrote:
>> The variable is only ever used from fbcon.c which is linked into the
>> same module. Therefore, the export is not needed.
>>
>> Signed-off-by: Peter Rosin <peda@axentia.se>
> 
> Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>
> 
> But note that the same is true for fb_class, so perhaps it can be added
> (or better, removed ;-)?

Right. Someone please let me know if 3/3 needs to be extended. I'm also
happy to just drop it...

> Once drivers/staging/olpc_dcon/olpc_dcon.c stops abusing registered_fb[]
> and num_registered_fb, those can go, too.
> 
> Does anyone remembe why au1200fb calls fb_prepare_logo() and fb_show_logo()
> itself?

Maybe there should be a small drivers/video/fbdev/core/fbmem.h file (or
something) with these "internal" declarations, to hide some clutter currently
in include/linux/fb.h?

Feels like that could be done later, after these other cleanups you mention,
so that the new file has a few more things to declare.

Cheers,
Peter

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 1/3] fbdev: fix numbering of fbcon options
  2019-08-27 11:09 ` [PATCH v3 1/3] fbdev: fix numbering of fbcon options Peter Rosin
  2019-08-27 11:25   ` Geert Uytterhoeven
@ 2020-01-03 11:51   ` Bartlomiej Zolnierkiewicz
  1 sibling, 0 replies; 11+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2020-01-03 11:51 UTC (permalink / raw)
  To: Peter Rosin
  Cc: linux-kernel, Jonathan Corbet, dri-devel, linux-fbdev, linux-doc,
	Matthew Wilcox, Geert Uytterhoeven


On 8/27/19 1:09 PM, Peter Rosin wrote:
> Three shall be the number thou shalt count, and the number of the
> counting shall be three. Four shalt thou not count...
> 
> One! Two! Five!
> 
> Fixes: efb985f6b265 ("[PATCH] fbcon: Console Rotation - Add framebuffer console documentation")
> Signed-off-by: Peter Rosin <peda@axentia.se>

Thanks, patch queued for v5.6 (also sorry for the delay).

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics

> ---
>  Documentation/fb/fbcon.rst | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/Documentation/fb/fbcon.rst b/Documentation/fb/fbcon.rst
> index ebca41785abe..65ba40255137 100644
> --- a/Documentation/fb/fbcon.rst
> +++ b/Documentation/fb/fbcon.rst
> @@ -127,7 +127,7 @@ C. Boot options
>  	is typically located on the same video card.  Thus, the consoles that
>  	are controlled by the VGA console will be garbled.
>  
> -4. fbcon=rotate:<n>
> +5. fbcon=rotate:<n>
>  
>  	This option changes the orientation angle of the console display. The
>  	value 'n' accepts the following:
> @@ -152,21 +152,21 @@ C. Boot options
>  	Actually, the underlying fb driver is totally ignorant of console
>  	rotation.
>  
> -5. fbcon=margin:<color>
> +6. fbcon=margin:<color>
>  
>  	This option specifies the color of the margins. The margins are the
>  	leftover area at the right and the bottom of the screen that are not
>  	used by text. By default, this area will be black. The 'color' value
>  	is an integer number that depends on the framebuffer driver being used.
>  
> -6. fbcon=nodefer
> +7. fbcon=nodefer
>  
>  	If the kernel is compiled with deferred fbcon takeover support, normally
>  	the framebuffer contents, left in place by the firmware/bootloader, will
>  	be preserved until there actually is some text is output to the console.
>  	This option causes fbcon to bind immediately to the fbdev device.
>  
> -7. fbcon=logo-pos:<location>
> +8. fbcon=logo-pos:<location>
>  
>  	The only possible 'location' is 'center' (without quotes), and when
>  	given, the bootup logo is moved from the default top-left corner

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 2/3] fbdev: fbmem: allow overriding the number of bootup logos
  2019-08-27 11:09 ` [PATCH v3 2/3] fbdev: fbmem: allow overriding the number of bootup logos Peter Rosin
  2019-08-27 11:25   ` Geert Uytterhoeven
@ 2020-01-03 11:52   ` Bartlomiej Zolnierkiewicz
  1 sibling, 0 replies; 11+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2020-01-03 11:52 UTC (permalink / raw)
  To: Peter Rosin
  Cc: linux-kernel, Jonathan Corbet, dri-devel, linux-fbdev, linux-doc,
	Matthew Wilcox, Geert Uytterhoeven


On 8/27/19 1:09 PM, Peter Rosin wrote:
> Probably most useful if you want no logo at all, or if you only want one
> logo regardless of how many CPU cores you have.
> 
> Signed-off-by: Peter Rosin <peda@axentia.se>

Thanks, patch queued for v5.6 (also sorry for the delay).

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics

> ---
>  Documentation/fb/fbcon.rst       |  5 +++++
>  drivers/video/fbdev/core/fbcon.c |  7 +++++++
>  drivers/video/fbdev/core/fbmem.c | 12 +++++++++---
>  include/linux/fb.h               |  1 +
>  4 files changed, 22 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/fb/fbcon.rst b/Documentation/fb/fbcon.rst
> index 65ba40255137..e57a3d1d085a 100644
> --- a/Documentation/fb/fbcon.rst
> +++ b/Documentation/fb/fbcon.rst
> @@ -174,6 +174,11 @@ C. Boot options
>  	displayed due to multiple CPUs, the collected line of logos is moved
>  	as a whole.
>  
> +9. fbcon=logo-count:<n>
> +
> +	The value 'n' overrides the number of bootup logos. 0 disables the
> +	logo, and -1 gives the default which is the number of online CPUs.
> +
>  C. Attaching, Detaching and Unloading
>  
>  Before going on to how to attach, detach and unload the framebuffer console, an
> diff --git a/drivers/video/fbdev/core/fbcon.c b/drivers/video/fbdev/core/fbcon.c
> index c9235a2f42f8..bb6ae995c2e5 100644
> --- a/drivers/video/fbdev/core/fbcon.c
> +++ b/drivers/video/fbdev/core/fbcon.c
> @@ -536,6 +536,13 @@ static int __init fb_console_setup(char *this_opt)
>  				fb_center_logo = true;
>  			continue;
>  		}
> +
> +		if (!strncmp(options, "logo-count:", 11)) {
> +			options += 11;
> +			if (*options)
> +				fb_logo_count = simple_strtol(options, &options, 0);
> +			continue;
> +		}
>  	}
>  	return 1;
>  }
> diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c
> index 64dd732021d8..c7ddcb72025b 100644
> --- a/drivers/video/fbdev/core/fbmem.c
> +++ b/drivers/video/fbdev/core/fbmem.c
> @@ -56,6 +56,8 @@ EXPORT_SYMBOL(num_registered_fb);
>  bool fb_center_logo __read_mostly;
>  EXPORT_SYMBOL(fb_center_logo);
>  
> +int fb_logo_count __read_mostly = -1;
> +
>  static struct fb_info *get_fb_info(unsigned int idx)
>  {
>  	struct fb_info *fb_info;
> @@ -620,7 +622,7 @@ int fb_prepare_logo(struct fb_info *info, int rotate)
>  	memset(&fb_logo, 0, sizeof(struct logo_data));
>  
>  	if (info->flags & FBINFO_MISC_TILEBLITTING ||
> -	    info->fbops->owner)
> +	    info->fbops->owner || !fb_logo_count)
>  		return 0;
>  
>  	if (info->fix.visual == FB_VISUAL_DIRECTCOLOR) {
> @@ -686,10 +688,14 @@ int fb_prepare_logo(struct fb_info *info, int rotate)
>  
>  int fb_show_logo(struct fb_info *info, int rotate)
>  {
> +	unsigned int count;
>  	int y;
>  
> -	y = fb_show_logo_line(info, rotate, fb_logo.logo, 0,
> -			      num_online_cpus());
> +	if (!fb_logo_count)
> +		return 0;
> +
> +	count = fb_logo_count < 0 ? num_online_cpus() : fb_logo_count;
> +	y = fb_show_logo_line(info, rotate, fb_logo.logo, 0, count);
>  	y = fb_show_extra_logos(info, y, rotate);
>  
>  	return y;
> diff --git a/include/linux/fb.h b/include/linux/fb.h
> index 303771264644..e37f72b2efca 100644
> --- a/include/linux/fb.h
> +++ b/include/linux/fb.h
> @@ -630,6 +630,7 @@ extern int fb_new_modelist(struct fb_info *info);
>  extern struct fb_info *registered_fb[FB_MAX];
>  extern int num_registered_fb;
>  extern bool fb_center_logo;
> +extern int fb_logo_count;
>  extern struct class *fb_class;
>  
>  #define for_each_registered_fb(i)		\
> 

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH v3 3/3] fbdev: fbmem: avoid exporting fb_center_logo
  2019-08-29  7:08     ` Peter Rosin
@ 2020-01-03 11:55       ` Bartlomiej Zolnierkiewicz
  0 siblings, 0 replies; 11+ messages in thread
From: Bartlomiej Zolnierkiewicz @ 2020-01-03 11:55 UTC (permalink / raw)
  To: Peter Rosin, Geert Uytterhoeven
  Cc: linux-kernel, Jonathan Corbet, dri-devel, linux-fbdev, linux-doc,
	Matthew Wilcox


On 8/29/19 9:08 AM, Peter Rosin wrote:
> On 2019-08-27 13:35, Geert Uytterhoeven wrote:
>> Hi Peter,
>>
>> On Tue, Aug 27, 2019 at 1:09 PM Peter Rosin <peda@axentia.se> wrote:
>>> The variable is only ever used from fbcon.c which is linked into the
>>> same module. Therefore, the export is not needed.
>>>
>>> Signed-off-by: Peter Rosin <peda@axentia.se>
>>
>> Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>

Thanks, patch queued for v5.6 (also sorry for the delay).

>> But note that the same is true for fb_class, so perhaps it can be added
>> (or better, removed ;-)?
> 
> Right. Someone please let me know if 3/3 needs to be extended. I'm also
> happy to just drop it...

Please send incremental patch for fb_class. 

>> Once drivers/staging/olpc_dcon/olpc_dcon.c stops abusing registered_fb[]
>> and num_registered_fb, those can go, too.
>>
>> Does anyone remembe why au1200fb calls fb_prepare_logo() and fb_show_logo()
>> itself?
> 
> Maybe there should be a small drivers/video/fbdev/core/fbmem.h file (or
> something) with these "internal" declarations, to hide some clutter currently
> in include/linux/fb.h?

Sounds like a good idea.

> Feels like that could be done later, after these other cleanups you mention,
> so that the new file has a few more things to declare.
Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2020-01-03 11:55 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-27 11:09 [PATCH v3 0/3] Add possibility to specify the number of displayed logos Peter Rosin
2019-08-27 11:09 ` [PATCH v3 1/3] fbdev: fix numbering of fbcon options Peter Rosin
2019-08-27 11:25   ` Geert Uytterhoeven
2020-01-03 11:51   ` Bartlomiej Zolnierkiewicz
2019-08-27 11:09 ` [PATCH v3 2/3] fbdev: fbmem: allow overriding the number of bootup logos Peter Rosin
2019-08-27 11:25   ` Geert Uytterhoeven
2020-01-03 11:52   ` Bartlomiej Zolnierkiewicz
2019-08-27 11:09 ` [PATCH v3 3/3] fbdev: fbmem: avoid exporting fb_center_logo Peter Rosin
2019-08-27 11:35   ` Geert Uytterhoeven
2019-08-29  7:08     ` Peter Rosin
2020-01-03 11:55       ` Bartlomiej Zolnierkiewicz

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).