Изображение psplash не появляется (yocto & qemu) - PullRequest
0 голосов
/ 24 октября 2018

Я пытаюсь сделать свои первые шаги с Yocto.При использовании psplash я могу видеть экран-заставку yocto только при выключении системы.Нет, пока система загружается.

Для этого я использую Ubuntu 18.10 в виртуальной коробке (оракул).Я создаю образ с помощью следующих команд:

~$ sudo apt-get install git python chrpath g++ gawk gcc make texinfo
~$ git clone -b sumo git://git.yoctoproject.org/poky
~$ cd poky/
~/poky$ source oe-init-build-env
~/poky/build$ nano /conf/local.conf

вставка в конец файла:

BB_NUMBER_THREADS = “8”
PARALLEL_MAKE = “-j 4”
IMAGE_INSTALL_append = “ psplash”
INHERIT_remove = “uninative”

сборка с:

~/poky/build$ bitbake core-image-minimal

Запустите образ с помощью:

runqemu qemux86

При загрузке я заметил два следующих сообщения:

framebuffer /dev/fb0 not detected
Boot splashscreen disabled

Я нашел этот вопрос: Экран-заставка yocto не появляется

Я уже пытаюсь добавить IMAGE_INSTALL_append = " psplash" в local.conf, но безрезультатно.

У вас есть идеи?

Ответы [ 2 ]

0 голосов
/ 15 марта 2019

У меня просто была такая же проблема.Очевидно, yocto создаст файл /etc/rc.d/S00psplash.sh.S00 означает, что это выполняется в самом начале процесса загрузки, до загрузки необходимых графических драйверов.Я изменил его на S40, и это сработало.Пока не уверен, как это исправить внутри yocto.Вам также может потребоваться добавить в ваш local.conf:
DISTRO_FEATURES_append = "directfb" # (не уверен, действительно ли это необходимо)
и
IMAGE_FEATURES_append = "splash" # (это может быть уже включено дляваше изображение)
Если это не работает, пожалуйста, сообщите
С уважением ~

0 голосов
/ 25 октября 2018

Снимок экрана Здесь вы можете увидеть описанную последовательность загрузки

framebuffer /dev/fb0 not detected
Boot splashscreen disabled

из файла psplash-init

#!/bin/sh 
### BEGIN INIT INFO
# Provides:             psplash
# Required-Start:
# Required-Stop:
# Default-Start:        S
# Default-Stop:
### END INIT INFO
echo "########################################################"
if [ ! -e /dev/fb0 ]; then
    echo "Framebuffer /dev/fb0 not detected"
    echo "Boot splashscreen disabled 1"
    exit 0;
fi

read CMDLINE < /proc/cmdline
for x in $CMDLINE; do
        case $x in
        psplash=false)
        echo "Boot splashscreen disabled 2" 
        exit 0;
                ;;
        esac
done

export TMPDIR=/mnt/.psplash
mount tmpfs -t tmpfs $TMPDIR -o,size=40k

rotation=0
if [ -e /etc/rotation ]; then
    read rotation < /etc/rotation
fi

/usr/bin/psplash --angle $rotation &

Поэтому попробуйте показатьsplashscreen (строки 6-7 на скриншоте) происходит до загрузки кадрового буфера (из строки 13 ...) Это правильно?

Мне интересно сообщение "Пожалуйста, подождите: загрузка ...."Мы говорим о разных шагах?(например, bootloader-boot и linux-boot)

...