Edge-V Boot Logo Ubuntu Server

Hi! I want to change the boot image to a custom logo (4K compatible) but there is no docs for that…

Also I want to put a loader (progress bar) when the kernel is being loaded instead of text. Just like ubuntu Desktop does…

Thanks!

@Terry can you help me with this? I asked 26 days ago but got no answer…
Thanks!

Copy your BMP logo image to the linux root direcory and replace logo.bmp and logo_kernel.bmp . And build the logo image.

make ARCH=arm64 CROSS_COMPILE=aarch64=linux-gnu- rk3399-khadas-captain-linux.img -j12

You will get resouse.img in root directory, and rename it to logo.img and put it in fenix directory.

I have generated the logo.img following this guide: https://docs.khadas.com/vim1/BuildBootLogoForUboot.html

and moved it to fenix/archives/logo/Rockchip/logo.img
but it does not appear on boot, in fact no image appears on boot, just the normal log messages

It’s for VIMs, not for Edge.

Please for this to generate logo for Edge.

Ok, I will try… so the utils are not needed for this?

Yes, it’s only for VIMs.

Where should I put the logo.img?
in fenix root?
fenix/linux?
fenix/archives/logo/Rockchip?
fenix/build/images?
or other?

fenix/archives/logo/Rockchip

And rebuild the image.

thanks you, I will try this out!

It throws the following:
fenix$ make ARCH=arm64 CROSS_COMPILE=aarch64=linux-gnu- rk3399-khadas-captain-linux.img -j12
make: *** No rule to make target ‘rk3399-khadas-captain-linux.img’. Stop.

If I remove the space after “gnu-”

It throws:
fenix$ make ARCH=arm64 CROSS_COMPILE=aarch64=linux-gnu-rk3399-khadas-captain-linux.img -j12
./scripts/create_image.sh

***********************PARAMETERS************************
Fenix Version:         0.7
Khadas Board:          Edge
Uboot Version:         mainline
Uboot Configuration:   kedge-rk3399_defconfig
Uboot Branch:          master
Linux Version:         4.4
Linux Configuration:   kedge_defconfig
Linux DTB:             arch/arm64/boot/dts/rockchip/rk3399-khadas-edge-linux.dtb
Linux Branch:          khadas-edge-4.4.y
Distribution:          Ubuntu
Distribution Release:  bionic
Distribution Type:     server
Distribution Arch:     arm64
Install Type:          EMMC
Final Image:           Edge_Ubuntu-server-bionic_Linux-4.4_arm64_EMMC_V20191115.img
*********************************************************

Info: Build host: bionic
Warning:: Repo[/home/dev/workspace/fenix] You made some modifications to file(s): 
[ 
archives/logo/Rockchip/logo.img 
]
Info: Try to update fenix:master
From https://github.com/khadas/fenix
 * branch            master     -> FETCH_HEAD
Already up to date.
Press <Ctrl-C> to abort compilation, <Enter> to ignore and continue

/home/dev/workspace/fenix
make[1]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
make[1]: Entering directory '/home/dev/workspace/fenix/build/u-boot-mainline-2019.04'
/bin/sh: 1: -print-file-name=include: not found
/bin/sh: 1: -Wall: not found
dirname: missing operand
Try 'dirname --help' for more information.
  CLEAN   scripts/basic
  CLEAN   scripts/kconfig
  CLEAN   include/config include/generated
  CLEAN   .config
make[1]: Leaving directory '/home/dev/workspace/fenix/build/u-boot-mainline-2019.04'
make[1]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
make[1]: Entering directory '/home/dev/workspace/fenix/build/u-boot-mainline-2019.04'
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  YACC    scripts/kconfig/zconf.tab.c
  LEX     scripts/kconfig/zconf.lex.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
make[1]: Leaving directory '/home/dev/workspace/fenix/build/u-boot-mainline-2019.04'
make[1]: warning: -jN forced in submake: disabling jobserver mode.
make[1]: Entering directory '/home/dev/workspace/fenix/build/u-boot-mainline-2019.04'
scripts/kconfig/conf  --syncconfig Kconfig
ln: failed to create symbolic link 'arch/arm64/include/asm/arch': No such file or directory
scripts/Makefile.autoconf:134: recipe for target 'create_symlink' failed
make[2]: *** [create_symlink] Error 1
make[1]: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'.  Stop.
make[1]: Leaving directory '/home/dev/workspace/fenix/build/u-boot-mainline-2019.04'
Makefile:7: recipe for target 'all' failed
make: *** [all] Error 2

You need to execute the command in linux directory.

$ cd linux
$ make ARCH=arm64 CROSS_COMPILE=aarch64=linux-gnu- rk3399-khadas-captain-linux.img -j12
1 Like

It throws error:

fenix/linux$ make ARCH=arm64 CROSS_COMPILE=aarch64=linux-gnu- rk3399-khadas-captain-linux.img -j12
  CHK     include/config/kernel.release
  CHK     include/generated/uapi/linux/version.h
  CC      scripts/mod/empty.o
  CC      scripts/mod/devicetable-offsets.s
aarch64=linux-gnu-gcc:No such file or directory
Is your PATH set correctly?
scripts/Makefile.build:277: recipe for target 'scripts/mod/empty.o' failed
make[2]: *** [scripts/mod/empty.o] Error 2
make[2]: *** Waiting for unfinished jobs....
  CHK     include/generated/utsrelease.h
aarch64=linux-gnu-gcc:No such file or directory
Is your PATH set correctly?
scripts/Makefile.build:153: recipe for target 'scripts/mod/devicetable-offsets.s' failed
make[2]: *** [scripts/mod/devicetable-offsets.s] Error 2
scripts/Makefile.build:484: recipe for target 'scripts/mod' failed
make[1]: *** [scripts/mod] Error 2
Makefile:579: recipe for target 'scripts' failed
make: *** [scripts] Error 2
make: *** Waiting for unfinished jobs....

The command seems not correct, sorry, can you try this?

$ cd linux
$ export PATH=../build/toolchains/gcc-linaro-aarch64-linux-gnu/bin:$PATH
$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-  rk3399-khadas-captain-linux.img -j12

it compiled:
dev@ubuntu:~/workspace/fenix/linux$ make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- rk3399-khadas-captain-linux.img -j12
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CHK scripts/mod/devicetable-offsets.h
make[1]: ‘arch/arm64/boot/dts/rockchip/rk3399-khadas-captain-linux.dtb’ is up to date.
CHK include/generated/timeconst.h
CHK include/generated/bounds.h
CHK include/generated/asm-offsets.h
CALL scripts/checksyscalls.sh
make[1]: ‘include/generated/vdso-offsets.h’ is up to date.
CHK include/generated/compile.h
LZ4C arch/arm64/boot/Image.lz4
Image: kernel.img is ready
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CHK scripts/mod/devicetable-offsets.h
CHK include/generated/timeconst.h
CHK include/generated/bounds.h
CHK include/generated/asm-offsets.h
CALL scripts/checksyscalls.sh
make[2]: ‘include/generated/vdso-offsets.h’ is up to date.
Building modules, stage 2.
MODPOST 45 modules
reverse data at first time
swap bgr to rgb at first time
reverse data at first time
swap bgr to rgb at first time
Pack to resource.img successed!
Image: resource.img (with rk3399-khadas-captain-linux.dtb logo.bmp logo_kernel.bmp) is ready
Image: boot.img (with Image resource.img) is ready
Image: zboot.img (with Image.lz4 resource.img) is ready

this does not seem a stable solution, will you fix this?

I have rebuilt the image, and flashed it to the edgeV but no logo is being shown. The file was copied correctly to fenix/build/images/logo.img

why is this? how can I fix it?

What logo image you used?

.BMP 24 bit RGB888 1280x720