Förbereda bild för startskärm
Startskärmen hanteras av en regeluppsättning som kallas "psplash", som finns under "/workdir/poky-honister/meta-raspberrypi/recipes-core"-katalogen i källträdet.
Eftersom "psplash" förväntar sig att en bild ska vara i header-filformat, måste du först konvertera din bild till ett header-filformat med hjälp av ett skript som heter "make-image-header.sh".
Klona psplash-datakatalog
För att hämta skriptet ska du klona yoctoprojects psplash-datakatalog – i detta fall till /workdir-katalogen
git clone https://git.yoctoproject.org/psplash
I psplash-katalogen hittar du skriptet "make-image-header.sh".
Installera bibliotek
Skriptet behöver "libgdk-pixbuf2.0-dev" för att installeras i systemet. Du kan göra detta i ett andra terminalfönster med:
docker exec -it --user=root crops-poky bash
apt-get install libgdk-pixbuf2.0-dev
exit
Nu kan du använda skriptet för att konvertera din png-fil till en .h-fil
./make-image-header.sh <path-to-png>/psplash-ixlogo.png POKY
Som ett resultat bör du få en fil som heter "psplash-ixlogo-img.h". Din header ser ut som:
/* GdkPixbuf RGBA C-Source image dump 1-byte-run-length-encoded */
#define POKY_IMG_ROWSTRIDE (4080)
#define POKY_IMG_WIDTH (1020)
#define POKY_IMG_HEIGHT (768)
#define POKY_IMG_BYTES_PER_PIXEL (4) /* 3:RGB, 4:RGBA */
#define POKY_IMG_RLE_PIXEL_DATA ((uint8*) \
...
Om du vill ändra bakgrundsfärgen på startskärmen kan du lägga till följande rad:
#define PSPLASH_BACKGROUND_COLOR 0x07,0x85,0x00
Detta ställer in bakgrundsfärgen till en grön färg.
Skapa anpassat metalager
För att inkludera den skapade bilden på startskärmen behöver vi ett anpassat metalager.
Första källa för rpi-build.
source poky-honister/oe-init-build-env rpi-build
Med "bitbake-layers" skapar vi ett nytt metalager och lägger till detta metalager i conf/bblayers.conf för det aktuella projektet.
bitbake-layers create-layer meta-interelectronix-rpi
bitbake-layers add-layer meta-interelectronix-rpi
Efter detta kopierar du katalogen "psplash" från meta-raspberrypi/recipes-core till det nya metalagret:
mkdir meta-interelectronix-rpi/recipes-core
cp -r /workdir/poky-honister/meta-raspberrypi/recipes-core/psplash meta-interelectronix-rpi/recipes-core/
Kopiera psplash-ixlogo-img.h till meta-interelectronix-rpi/recipes-core/psplash/files/
cp <path-to-h-file>/psplash-ixlogo-img.h meta-interelectronix-rpi/recipes-core/psplash/files/
Redigera slutligen "meta-interelectronix-rpi/recipes-core/psplash/psplash_%.bbappend" och ändra "psplash-raspberrypi-img.h" till "psplash-ixlogo-img.h".
Inkludera psplash
I det sista steget måste paketet psplash läggas till i projektets local.conf-fil. För att göra detta redigerar du filen /workdir/rpi-build/conf/local.conf
Min local.conf ser ut som:
## systemd settings
DISTRO_FEATURES:append = " systemd"
VIRTUAL-RUNTIME:init_manager = "systemd"
VIRTUAL-RUNTIME:initscripts = ""
IMX_DEFAULT_DISTRO_FEATURES:append = " systemd"
## enable some hardware
ENABLE_I2C = "1"
ENABLE_UART = "1"
DISABLE_SPLASH = "1"
DISABLE_RPI_BOOT_LOGO = "1"
IMAGE_INSTALL:append = " psplash"
IMAGE_FEATURES += " splash "
Upphovsrättslicens
Copyright © 2022 Interelectronix e.K.
Detta projekts källkod är licensierad under licensen GPL-3.0.