custom startup logo, how?

Hello everybody,

I am a bit puzzled on how to setup a custom image and remove the flood of bootloader info that spews
during boot process. Is this possible? I tried both u-boot and fastboot. With u-boot i realized they compiled
it without splash image BMP support. But the fastboot seems to be looking for splash image somewhere, but not
finding:

(FastbootBMPRead) Unsuccesful attempt to read BMP image
Unable to display image
Booting kernel image

any info would be greatly appreciated,

D

I don’t know about the boot logo, but compiling the U-Boot is described in the documentation so you should be able to change the options you need and recompile.

I did some googling and it seems that you can load the BMP image with U-Boot from the disk:
http://boundarydevices.com/displaying-a-splash-screen-with-u-boot/

nvidia has some very specific kernel drivers to get the HDMI video to work… instead of reaching for U-Boot you might want to see if you can get the ubuntu boot splash to work instead.

https://wiki.ubuntu.com/Plymouth

and then theme that.

thanks for replies! I will try the Ubuntu logo path. I tried to compile uboot, and did so successfully, but couldn’t figure out how to configure hdmi properly so I abandoned further developments. uboot has built in splash logo support, but NVIDIA didn’t b other enabling support for it for some reason.

Did u get any success of changing startup logo?

Hi RiteshPanchal,

You can have a ubuntu logo theme by using plymouth.

Please comment out this line and reboot.

/lib/systemd/system/plymouth-start.service

[Unit]
Description=Show Plymouth Boot Screen
DefaultDependencies=no
Wants=systemd-ask-password-plymouth.path
After=systemd-udev-trigger.service systemd-udevd.service keyboard-setup.service
Before=systemd-ask-password-plymouth.service
ConditionKernelCommandLine=!plymouth.enable=0
ConditionKernelCommandLine=!nosplash
#ConditionKernelCommandLine=splash

Hi, WayneWWW

I installed the OS[Ubuntu 14.04] using jetpack and found the “plymouth-start.service” file as you said, but that file did not exist in my “/lib/systemd/system/”.

So I tried reinstalling plymouth, but the service startup file was not registered in “lib / systemd / system”.
I tried installing all the related packages to use plymouth, but it does not seem to be registered.

I want to know if there is a procedure I need to set up to run plymouth.

Ask for help.

Hi KobeKay,

This file should exist after using jetpack to flash OS. Could you give it a try?

Hi, WayneWWW

I flashed using jetpack 3.0 on my Jetson TK1 board, but i couldn’t find plymouth-start.service in /lib/systemd/system.
I also could not find that in the Jetson TK1’s RootFileSystem.

But i found that in the Jetson TX2’s RootFileSystem from https://developer.nvidia.com/embedded/linux-tegra

could you check if it is on Jetson TK1?

Hi KobeKay,

If it is TK1, the init script should be under /etc/init/plymouth.conf. However, I did not verify it on TK1.

Not sure if it is working.

I checked, but I do not see clue for run plymouth.

I wonder if there is no way to run plymouth on the TK1 board.

Hi KobeKay,
I am too trying to have Plymouth run on TK1. Maybe one thing: are you sure you have set

quiet splash

to your kernel parameters? I’ll tell you if I succeed.

WayneWWW, I am wondering if Nvidia TK1 driver does support or just needs some other kernel parameters for Plymouth to use the framebuffer (see https://wiki.ubuntu.com/Plymouth#Quick_Facts)?

Thanks,
NicoD

For the record, I believe these are the main error with Plymouth, at boot time:

…
[main.c]                        add_consoles_from_file:console /dev/tty0 found!
[main.c]             add_default_displays_and_keyboard:adding default displays and keyboard
[ply-renderer.c]                      ply_renderer_open_plugin:trying to open renderer plugin /lib/arm-linux-gnueabihf/plymouth/renderers/x11.so
[ply-renderer.c]                      ply_renderer_open_plugin:could not open rendering device for plugin /lib/arm-linux-gnueabihf/plymouth/renderers/x11.so
[ply-renderer.c]                      ply_renderer_open_plugin:trying to open renderer plugin /lib/arm-linux-gnueabihf/plymouth/renderers/drm.so
[./plugin.c]                                create_backend:creating renderer backend for device /dev/dri/card0
[./plugin.c]                                   load_driver:Attempting to load driver '(null)'
[./plugin.c]                                   load_driver:drmOpen failed
[ply-renderer.c]                      ply_renderer_open_plugin:could not open rendering device for plugin /lib/arm-linux-gnueabihf/plymouth/renderers/drm.so
[ply-renderer.c]                      ply_renderer_open_plugin:trying to open renderer plugin /lib/arm-linux-gnueabihf/plymouth/renderers/frame-buffer.so
[./plugin.c]                                create_backend:creating renderer backend for device /dev/fb0
[ply-terminal.c]                             ply_terminal_open:trying to open terminal '/dev/tty7'
[ply-terminal.c]                 ply_terminal_look_up_geometry:looking up terminal text geometry
[ply-terminal.c]                 ply_terminal_look_up_geometry:terminal is now 240x67 text cells
[ply-terminal.c]                                 get_active_vt:Remembering that initial vt is 1
[./plugin.c]                                  query_device:32 bpp (8, 8, 8, 8) with rowstride 7680
[./plugin.c]                               initialize_head:initializing 1920x1080 head
[ply-renderer.c]                      ply_renderer_open_plugin:opened renderer plugin /lib/arm-linux-gnueabihf/plymouth/renderers/frame-buffer.so
[main.c]                                  set_keyboard:listening for keystrokes
[main.c]                                  set_keyboard:listening for backspace
[main.c]                                  set_keyboard:listening for enter
[main.c]              add_pixel_displays_from_renderer:Adding displays for 1 heads
[main.c]                            check_for_consoles:After processing serial consoles there are now 1 text displays
[main.c]           plymouth_should_show_default_splash:checking if plymouth should show default splash
[main.c]           plymouth_should_show_default_splash:using default splash because kernel command line has option "splash"
[main.c]                           show_default_splash:Showing splash screen
[main.c]                    find_system_default_splash:Trying to load /etc/plymouth//plymouthd.conf
[ply-key-file.c]                        ply_key_file_open_file:Failed to open key file /etc/plymouth//plymouthd.conf: No such file or directory
[main.c]                    find_system_default_splash:failed to load /etc/plymouth//plymouthd.conf
[main.c]              find_distribution_default_splash:Trying to load /lib/plymouth//plymouthd.defaults
[ply-key-file.c]                        ply_key_file_open_file:Failed to open key file /lib/plymouth//plymouthd.defaults: No such file or directory
[main.c]              find_distribution_default_splash:failed to load /lib/plymouth//plymouthd.defaults
[main.c]                           show_default_splash:Trying old scheme for default splash
[main.c]                             start_boot_splash:Loading boot splash theme '/lib/plymouth/themes/default.plymouth'
[ply-key-file.c]                       ply_key_file_load_group:trying to load group Plymouth Theme
[ply-key-file.c]                       ply_key_file_load_group:trying to load group script
[ply-key-file.c]                      ply_key_file_load_groups:key file has no more groups
[main.c]                             start_boot_splash:attaching plugin to event loop
[main.c]                             start_boot_splash:attaching progress to plugin
[main.c]      add_displays_and_keyboard_to_boot_splash:setting keyboard on boot splash
[main.c]      add_displays_and_keyboard_to_boot_splash:adding pixel display on boot splash
[main.c]      add_displays_and_keyboard_to_boot_splash:adding text display on boot splash
[main.c]                             start_boot_splash:showing plugin
[ply-boot-splash.c]                          ply_boot_splash_show:showing splash screen
[./plugin.c]                            show_splash_screen:starting boot animation
[./plugin.c]                               start_animation:parsing script file
[./plugin.c]                        start_script_animation:executing script file
[ply-label.c]                                ply_label_free:Unloading label control plugin
[ply-label.c]                                ply_label_free:Unloading label control plugin
[ply-label.c]                                ply_label_free:Unloading label control plugin
[ply-label.c]                                ply_label_free:Unloading label control plugin
[./plugin.c]                                 map_to_device:on wrong vt, changing vts
[ply-event-loop.c]              ply_event_loop_disconnect_source:disconnecting source with fd 9
[ply-event-loop.c]   ply_event_loop_handle_disconnect_for_source:calling disconnected_handler 0xc8c1 for fd 9
[ply-event-loop.c]   ply_event_loop_handle_disconnect_for_source:done calling disconnected_handler 0xc8c1 for fd 9
[ply-event-loop.c]              ply_event_loop_disconnect_source:done disconnecting source with fd 9
[ply-event-loop.c]              ply_event_loop_disconnect_source:freeing watches for source with fd 9
[ply-event-loop.c]              ply_event_loop_disconnect_source:done freeing watches for source with fd 9
[ply-event-loop.c]              ply_event_loop_disconnect_source:freeing destinations for source with fd 9
[ply-event-loop.c]   ply_event_loop_free_destinations_for_source:freeing destination (1, 0xcbb5, 0xc8c1) of fd 9
[ply-event-loop.c]              ply_event_loop_disconnect_source:done freeing destinations for source with fd 9
[ply-event-loop.c]              ply_event_loop_disconnect_source:removing source with fd 9 from event loop
[ply-event-loop.c]             ply_event_loop_remove_source_node:failed to delete fd 9 from epoll watch list: Bad file descriptor
[ply-event-loop.c]              ply_event_loop_disconnect_source:done removing source with fd 9 from event loop
[./plugin.c]                          on_active_vt_changed:activating on vt change
[./plugin.c]                                      activate:Redrawing screen
[ply-boot-server.c]             print_connection_process_identity:connection is from pid 627 (/bin/plymouth --ping) with parent pid 606 (/bin/sh -e /proc/self/fd/9)
[ply-event-loop.c]              ply_event_loop_disconnect_source:disconnecting source with fd 9
…

/dev/dri/card0 does not exist, we cannot start any displaying.
Hope this helps,
NicoD