[PATCH 0/6] video/logo: allow custom boot logo and simplify logic

Vincent Mailhol posted 6 patches 1 month, 1 week ago
There is a newer version of this series
arch/sh/configs/dreamcast_defconfig      |  2 -
arch/sh/configs/ecovec24_defconfig       |  2 -
arch/sh/configs/kfr2r09_defconfig        |  2 -
arch/sh/configs/migor_defconfig          |  2 -
arch/sh/configs/rts7751r2d1_defconfig    |  2 -
arch/sh/configs/rts7751r2dplus_defconfig |  2 -
arch/sh/configs/se7724_defconfig         |  2 -
arch/sh/configs/se7780_defconfig         |  2 -
arch/sh/configs/sh7785lcr_defconfig      |  3 --
arch/sh/configs/urquell_defconfig        |  3 --
drivers/video/console/newport_con.c      |  4 +-
drivers/video/logo/Kconfig               | 84 ++++++++++++++++++--------------
drivers/video/logo/Makefile              | 26 +++-------
drivers/video/logo/logo.c                | 46 ++---------------
include/linux/linux_logo.h               |  9 ----
15 files changed, 61 insertions(+), 130 deletions(-)
[PATCH 0/6] video/logo: allow custom boot logo and simplify logic
Posted by Vincent Mailhol 1 month, 1 week ago
This series allows the user to replace the default kernel boot logo by
a custom one directly in the kernel configuration. This makes it
easier to customise the boot logo without the need to modify the
sources and allows such customisation to remain persistent after
applying the configuration to another version of the kernel.

Patch #1 and #2 are clean-up and preparation while patch #3 is the
main feature of this series: making the boot logo customisable.

While working on this, I realised that managing the logo file directly
in Kbuild allows us to simplify how we handle the different existing
variants of the Tux logo. This series thus ends with a clean-up which
moves all the logo selection logic to Kbuild, simplifying the Makefile
and C code.

Patch #4 and #5 do a tree-wide clean-up on the Kconfig symbols that
are to be removed in patch #6 and patch #6 simplify the logic as
explained above.

Signed-off-by: Vincent Mailhol <mailhol@kernel.org>
---
Vincent Mailhol (6):
      video/logo: remove orphan .pgm Makefile rule
      video/logo: add a type parameter to the logo makefile function
      video/logo: allow custom logo
      newport_con: depend on LOGO_LINUX_CLUT224 instead of LOGO_SGI_CLUT224
      sh: defconfig: remove CONFIG_LOGO_SUPERH_*
      video/logo: move logo selection logic to Kconfig

 arch/sh/configs/dreamcast_defconfig      |  2 -
 arch/sh/configs/ecovec24_defconfig       |  2 -
 arch/sh/configs/kfr2r09_defconfig        |  2 -
 arch/sh/configs/migor_defconfig          |  2 -
 arch/sh/configs/rts7751r2d1_defconfig    |  2 -
 arch/sh/configs/rts7751r2dplus_defconfig |  2 -
 arch/sh/configs/se7724_defconfig         |  2 -
 arch/sh/configs/se7780_defconfig         |  2 -
 arch/sh/configs/sh7785lcr_defconfig      |  3 --
 arch/sh/configs/urquell_defconfig        |  3 --
 drivers/video/console/newport_con.c      |  4 +-
 drivers/video/logo/Kconfig               | 84 ++++++++++++++++++--------------
 drivers/video/logo/Makefile              | 26 +++-------
 drivers/video/logo/logo.c                | 46 ++---------------
 include/linux/linux_logo.h               |  9 ----
 15 files changed, 61 insertions(+), 130 deletions(-)
---
base-commit: 8640b74557fc8b4c300030f6ccb8cd078f665ec8
change-id: 20251227-custom-logo-932df316a02c

Best regards,
-- 
Vincent Mailhol <mailhol@kernel.org>
Re: [PATCH 0/6] video/logo: allow custom boot logo and simplify logic
Posted by Markus Reichelt 1 month ago
* Vincent Mailhol <mailhol@kernel.org> wrote:

> This series allows the user to replace the default kernel boot logo by
> a custom one directly in the kernel configuration. This makes it
> easier to customise the boot logo without the need to modify the
> sources and allows such customisation to remain persistent after
> applying the configuration to another version of the kernel.

Hah! What I have been doing for so many moons is to just cp my own logo
'logo_linux_clut224.ppm' -> 'drivers/video/logo/logo_linux_clut224.ppm'
for each custom kernel build - that works like a charm.
Maybe... I'm too pragmatic? It's that famous 'kill bill' logo from ages
ago, 224 colors PPM

Haven't tested your patch series cos stuff just works for me.
Looking forward to feedback from all those logo nerds out there.

Markus
Re: [PATCH 0/6] video/logo: allow custom boot logo and simplify logic
Posted by Vincent Mailhol 1 month ago
On 02/01/2026 at 17:30, Markus Reichelt wrote:
> * Vincent Mailhol <mailhol@kernel.org> wrote:
> 
>> This series allows the user to replace the default kernel boot logo by
>> a custom one directly in the kernel configuration. This makes it
>> easier to customise the boot logo without the need to modify the
>> sources and allows such customisation to remain persistent after
>> applying the configuration to another version of the kernel.
> 
> Hah! What I have been doing for so many moons is to just cp my own logo
> 'logo_linux_clut224.ppm' -> 'drivers/video/logo/logo_linux_clut224.ppm'
> for each custom kernel build - that works like a charm.
> Maybe... I'm too pragmatic? It's that famous 'kill bill' logo from ages
> ago, 224 colors PPM

I was doing the same! I then started a rework a couple years ago to
implement this idea.. At that time, I was less experienced and did not
fully understood Kbuild. The result worked but was ugly and stayed in my
local tree.

This winter holidays, I had a bit of free time, revisited my old idea,
and this time, found something I thought was worth upstreaming. Thus
this series.

> Haven't tested your patch series cos stuff just works for me.
> Looking forward to feedback from all those logo nerds out there.

Looking forward for your Tested-by tag!


Yours sincerely,
Vincent Mailhol
Re: [PATCH 0/6] video/logo: allow custom boot logo and simplify logic
Posted by Vincent Mailhol 1 month ago
On 02/01/2026 at 18:18, Vincent Mailhol wrote:
> On 02/01/2026 at 17:30, Markus Reichelt wrote:

(...)

>> Haven't tested your patch series cos stuff just works for me.
>> Looking forward to feedback from all those logo nerds out there.
> 
> Looking forward for your Tested-by tag!

D'oh, I misread your message. When my brain parsed your text, I read it as:

  Haven't tested your patch series cos work stuff…

As if you were too busy with your work to test it now.


Yours sincerely,
Vincent Mailhol

Re: [PATCH 0/6] video/logo: allow custom boot logo and simplify logic
Posted by John Paul Adrian Glaubitz 1 month, 1 week ago
Hi Vincent,

On Tue, 2025-12-30 at 23:19 +0100, Vincent Mailhol wrote:
> This series allows the user to replace the default kernel boot logo by
> a custom one directly in the kernel configuration. This makes it
> easier to customise the boot logo without the need to modify the
> sources and allows such customisation to remain persistent after
> applying the configuration to another version of the kernel.

Wouldn't it make more sense to make the boot logo to be configurable
at runtime so that users don't have to rebuild their kernel at all
to change their boot logo?

Adrian

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer
`. `'   Physicist
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
Re: [PATCH 0/6] video/logo: allow custom boot logo and simplify logic
Posted by Vincent Mailhol 1 month, 1 week ago
On 31/12/2025 at 00:19, John Paul Adrian Glaubitz wrote:
> Hi Vincent,
> 
> On Tue, 2025-12-30 at 23:19 +0100, Vincent Mailhol wrote:
>> This series allows the user to replace the default kernel boot logo by
>> a custom one directly in the kernel configuration. This makes it
>> easier to customise the boot logo without the need to modify the
>> sources and allows such customisation to remain persistent after
>> applying the configuration to another version of the kernel.
> 
> Wouldn't it make more sense to make the boot logo to be configurable
> at runtime so that users don't have to rebuild their kernel at all
> to change their boot logo?

I thought about that. The problem is that the logo is loaded really
early in the boot process. To be able to modify the logo without
rebuilding the full kernel, the logo would basically need to become a
kernel module that would be stored in either an initrd or on the filesystem.

The above is not impossible, but would require delaying the logo.

If we go in that direction, I think that my series as it is right now
would be a prerequisite anyway. Personally, I am happy with the logo
just being configurable when compiling the kernel, so I do not intend to
put more effort into this afterward. However, that would have prepared
the ground if anyone wants to implement in the future what you just
suggested.


Yours sincerely,
Vincent Mailhol