How To Modify The Boot Progress Bar on OKMX8MQ Linux5.4.3
First,download the psplash source code
Download psplash:git clone git://git.yoctoproject.org/psplash, which will be downloaded to the psplash folder in the current directory
forlinx@ubuntu:~/ imx8mq/OK8MQ-linux-sdk$ git clone git://git.yoctoproject.org/psplash
Cloning into 'psplash'...
remote: Enumerating objects: 11, done.
remote: Counting objects: 100% (11/11), done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 306 (delta 2), reused 0 (delta 0), pack-reused 295
Receiving objects: 100% (306/306), 128.73 KiB | 4.44 MiB/s, done.
Resolving deltas: 100% (192/192), done.
After download, generate a psplash folder in the current directory and enter it:
1. The main image logo_bmw.png:
2. Progress bar picture logo .png:
Second, production progress bar and LOGO
1. Production progress bar and LOGO
The following libraries need to be installed:
sudo apt-get install libgdk-pixbuf2.0-dev
sudo apt-get install build-essential libncurses5-dev
Make a logo
Execute the command: ./make-image-header.sh logo_bmw.png POKY //logo_bmw.png is the picture that you want to start
Executing the above command generates a logo_bmw-img.h file
The POKY parameter is just a variable that is passed into the logo_bmw-img.h file and can be opened for viewing.
vi logo_bmw-img.h
2. Production progress bar
Execute the command: ./make-image-header.sh logo.png BAR
Executing the above command generates a logo-img.h file
Similarly, we open the logo-img.h file. It must be with the BAR parameter added, as it will be elsewhere
Such a macro definition is used.
vi logo-img.h
Locate the psplash .c file and open the commented out header file to add a reference to the header file you generated
After the modification is complete, save the exit psplash .c, return to the source directory, and make autogen.sh script to generate the Makefile
3. Make autogen.sh scripts
Make a autogen.sh script to build a Makefile, as follows
vim autogen.sh
The script content is as follows:
#!/bin/bash
aclocal
autoheader
automake --add-missing
autoconf
Give executable permissions: chmod 777 autogen.sh
./autogen.sh
Modify Makefile.am, modify psplash-poky-img.h to logo_bmw-img.h, and psplash-bar-img.h
Changed to logo-img.h
vi Makefile.am
The modified Makefile.am is shown in the following figure.
After modifying the Makefile.am, save and exit, and return to the source directory.
4. Configure cross-compiler environment variables
. /opt/fsl-imx-xwayland/5.4-zeus/environment-setup-aarch64-poky-linux
After the environment variables are enabled, you can execute the following instructions to configure the cross-compilation toolchain.
./configure --host=aarch64-poky-linux
Execute the make directive to compile.
make
After compiling, the psplash and psplash-write files are generated in the source directory.
Third, replace the factory system progress bar and logo
Copy the compiled psplash and psplash-write files to the iMX8MQ SBC's factory file system/usr/bin directory.