How to enable Kernel Splash Screen?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to enable Kernel Splash Screen?

10,031 Views
trongthinh
Contributor IV

My screen size is 1024x600. This is kernel source linux-fslc (branch 4.1-1.0.x-imx) on GitHub that I used. Below are my steps to enable splash screen in kernel:

1. Create an image (logo_custom_clut224.png) which resolution is 1024x600 then export it to ppm extension by using GIMP.

2. Add the line below to "include/linux/linux_logo.h"

extern const struct linux_logo logo_custom_clut224;

3. Add these line to "drivers/video/logo/logo.c"

#ifdef CONFIG_LOGO_CUSTOM_CLUT224
logo = &logo_custom_clut224;
#endif

4. Add a line to Makefile "drivers/video/logo/Makefile"

obj-$(CONFIG_LOGO_CUSTOM_CLUT224) += logo_custom_clut224.o

5. Add these line to Kconfig "drivers/video/logo/Kconfig"

config CONFIG_LOGO_CUSTOM_CLUT224
   bool "Standard 224-color custom logo"
   default n

6. Reconfiguring kernel using menuconfig.

CONFIG_LOGO_CUSTOM_CLUT224=y

7. Rebuild kernel. Built success.

Unfortunately, The splash screen didn't show. Can Anyone give some advice? Is there anything wrong with my picture?

Labels (1)
Tags (2)
0 Kudos
Reply
7 Replies

6,518 Views
lshi
Contributor I

Hi Thinh

I am trying to do the same thing but for android. I followed your steps up until step 6

6. Reconfiguring kernel using menuconfig. CONFIG_LOGO_CUSTOM_CLUT224=y

How to do it?

I tried under "vender/nxp-opensource/kernel"

make menuconfig

But there's nothing loaded under "Device Drivers -> Graphics support -> Bootup logo". If I click "load", there's no file called .config either.

thanks,

0 Kudos
Reply

6,518 Views
trongthinh
Contributor IV

Hi Lei Shi,

Which android version are you using? Below is an example for android 9.0

pastedImage_1.png

there's no file called .config either.

=> in this example do command $make imx_v7_android_defconfig. this step load defaul configuration and create .con file. Remember EXPORT cross compiler before doing config.

0 Kudos
Reply

6,518 Views
lshi
Contributor I

Hi Thinh,

Thank you! I am using Android p9. I wonder when/how should I do the "menuconfig": 

make menuconfig

as you did in step6 before building the kernel? 

make KCFLAGS=-mno-android

When I do "make menuconfig", I see nothing under "Device Drivers -> Graphics support -> Bootup logo".

thanks,

Lei

0 Kudos
Reply

6,518 Views
igorpadykov
NXP Employee
NXP Employee

Hi Thinh

one can try with nxp logo patches

Patch to support uboot logo keep from uboot to kernel for NXP Linux and Android BSP (HDMI, LCD and L... 

linux-imx - i.MX Linux kernel 

linux-fslc is community version and supported on meta-fsl-arm mailing list:
https://lists.yoctoproject.org/listinfo/meta-freescale

https://community.nxp.com/message/402940#402940 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply

6,518 Views
trongthinh
Contributor IV

Hi igorpadykov

Splash screen in bootloader is a good solutions, yet It is too complex for me now. The good solution is to do splash screen in kernel.  I tried rebuild kernel too many times with difference image size. I found that the picture which size is larger than 1000x586 cannot be displayed. I still don't understand why? 

0 Kudos
Reply

6,518 Views
timgruijters
Contributor II

Hi Thinh, (and igorpadykov‌?)

Have you been able to solve this problem? It also exists in the NXP Linux 4.9 kernel.

0 Kudos
Reply

6,518 Views
trongthinh
Contributor IV

Hi Tim,

There is some thing wrong in my export picture; in GIMP. I can't not find what wrong, so I change to ImageMagic.

0 Kudos
Reply