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

Vincent Mailhol posted 7 patches 4 weeks, 1 day ago
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               |   82 +-
drivers/video/logo/Makefile              |   29 +-
drivers/video/logo/logo.c                |   46 +-
drivers/video/logo/logo_mac_clut224.ppm  | 1604 ------------------------------
include/linux/linux_logo.h               |    8 -
16 files changed, 63 insertions(+), 1732 deletions(-)
[PATCH v3 0/7] video/logo: allow custom boot logo and simplify logic
Posted by Vincent Mailhol 4 weeks, 1 day 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 except from one special
case (details in the patch description), simplifying the Makefile and
the C code.

Patch #4 and #5 do a tree-wide clean-up on the Kconfig symbols that
are to be removed in patch #7. Patch #6 removes the Macintosh 68k logo
which is conflicting with our simplification plans. Patch #7 finally
simplifies the logic as explained above.

Signed-off-by: Vincent Mailhol <mailhol@kernel.org>
---
Changes in v3:

  - v2 broke the logo selection for m68k resulting in the MAC logo
    replacing the default logo on some machine where it shouldn't.
    v3 resolves the conflict by removing that logo.

  - Typo fix in patch #4 description.

Link to v2: https://lore.kernel.org/r/20260101-custom-logo-v2-0-8eec06dfbf85@kernel.org

Changes in v2:

  - By removing the logo_spe_clut224.o target from the Makefile, v1
    also removed the logo_spe_clut224 object which is still being
    referenced in

      arch/powerpc/platforms/cell/spu_base.c

    Restore the logo_spe_clut224.o target.

Link to v1: https://lore.kernel.org/r/20251230-custom-logo-v1-0-4736374569ee@kernel.org

---
Vincent Mailhol (7):
      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: remove logo_mac_clut224
      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               |   82 +-
 drivers/video/logo/Makefile              |   29 +-
 drivers/video/logo/logo.c                |   46 +-
 drivers/video/logo/logo_mac_clut224.ppm  | 1604 ------------------------------
 include/linux/linux_logo.h               |    8 -
 16 files changed, 63 insertions(+), 1732 deletions(-)
---
base-commit: 9ace4753a5202b02191d54e9fdf7f9e3d02b85eb
change-id: 20251227-custom-logo-932df316a02c

Best regards,
-- 
Vincent Mailhol <mailhol@kernel.org>
Re: [PATCH v3 0/7] video/logo: allow custom boot logo and simplify logic
Posted by Helge Deller 3 weeks, 5 days ago
On 1/8/26 20:04, 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.
> 
> 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 except from one special
> case (details in the patch description), simplifying the Makefile and
> the C code.
> 
> Patch #4 and #5 do a tree-wide clean-up on the Kconfig symbols that
> are to be removed in patch #7. Patch #6 removes the Macintosh 68k logo
> which is conflicting with our simplification plans. Patch #7 finally
> simplifies the logic as explained above.
> 
> Signed-off-by: Vincent Mailhol <mailhol@kernel.org>

series applied to fbdev git tree.

Thanks!
Helge

> Changes in v3:
> 
>    - v2 broke the logo selection for m68k resulting in the MAC logo
>      replacing the default logo on some machine where it shouldn't.
>      v3 resolves the conflict by removing that logo.
> 
>    - Typo fix in patch #4 description.
> 
> Link to v2: https://lore.kernel.org/r/20260101-custom-logo-v2-0-8eec06dfbf85@kernel.org
> 
> Changes in v2:
> 
>    - By removing the logo_spe_clut224.o target from the Makefile, v1
>      also removed the logo_spe_clut224 object which is still being
>      referenced in
> 
>        arch/powerpc/platforms/cell/spu_base.c
> 
>      Restore the logo_spe_clut224.o target.
> 
> Link to v1: https://lore.kernel.org/r/20251230-custom-logo-v1-0-4736374569ee@kernel.org
> 
> ---
> Vincent Mailhol (7):
>        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: remove logo_mac_clut224
>        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               |   82 +-
>   drivers/video/logo/Makefile              |   29 +-
>   drivers/video/logo/logo.c                |   46 +-
>   drivers/video/logo/logo_mac_clut224.ppm  | 1604 ------------------------------
>   include/linux/linux_logo.h               |    8 -
>   16 files changed, 63 insertions(+), 1732 deletions(-)
> ---
> base-commit: 9ace4753a5202b02191d54e9fdf7f9e3d02b85eb
> change-id: 20251227-custom-logo-932df316a02c
> 
> Best regards,