Простейшая реализация SWUpdate на raspberry pi
Пытаюсь сделать простейшее обновление ОС и кода приложения на Raspberry 3b.
Когда я пытаюсь использовать rauc, я застрял с загрузчиком. Так что я пытаюсь использовать SWUpdate по sbabic.
Я также старался следовать этим и другим инструкциям:
Инструкция № 1 по Danish Shrestha (я также судимый для использования версии, описанный в этой статье - Зевсой и bdc467d совершить версию меты-swupdate плата и я получаю тот же результат, что описанные далее)
Я сделал это:
git clone git://git.yoctoproject.org/poky -b dunfell
git clone git://github.com/openembedded/meta-openembedded.git -b dunfell
git clone https://github.com/agherzan/meta-raspberrypi.git -b dunfell
git clone https://github.com/sbabic/meta-swupdate -b dunfell
git clone https://github.com/sbabic/meta-swupdate-boards.git -b master
Содержимое bblayers.conf:
POKY_BBLAYERS_CONF_VERSION = "2"
BBPATH = "${TOPDIR}"
BBFILES ?= ""
BBLAYERS ?= " \
/home/user/poky_dunfell/meta \
/home/user/poky_dunfell/meta-poky \
/home/user/poky_dunfell/meta-yocto-bsp \
/home/user/poky_dunfell/layers/meta-openembedded/meta-oe \
/home/user/poky_dunfell/layers/meta-openembedded/meta-python \
/home/user/poky_dunfell/layers/meta-openembedded/meta-networking \
/home/user/poky_dunfell/layers/meta-openembedded/meta-multimedia \
/home/user/poky_dunfell/layers/meta-raspberrypi \
/home/user/poky_dunfell/layers/meta-swupdate \
/home/user/poky_dunfell/layers/meta-swupdate-boards \
"
Содержимое local.conf
DISTRO ?= "poky"
PACKAGE_CLASSES ?= "package_rpm"
EXTRA_IMAGE_FEATURES ?= "debug-tweaks"
USER_CLASSES ?= "buildstats image-mklibs image-prelink"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS ??= "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
STOPTASKS,/tmp,100M,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K \
ABORT,/tmp,10M,1K"
PACKAGECONFIG_append_pn-qemu-system-native = " sdl"
CONF_VERSION = "1"
MACHINE = "raspberrypi3"
RPI_USE_U_BOOT = "1"
IMAGE_FSTYPES = "rpi-sdimg ext4.gz"
PREFERRED_PROVIDER_u-boot-fw-utils = "libubootenv"
#For bitbake -c clean swupdate
#DISTRO_FEATURES += "systemd"
При этом я делаю:
bitbake -k update-image
И Raspberry напечатает это при запуске:
Net: No ethernet found.
starting USB...
Bus usb@7e980000: scanning bus usb@7e980000 for devices... 3 USB Device(s) found
scanning usb for storage devices... 0 Storage Device(s) found
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found U-Boot script /boot.src
422 bytes read in 5 ms (82 KiB/s)
## Executing script at 02400000
Saving Environment to FAT... OK
rpipart not set, default to 2
Wrong Image Format for bootm command
ERROR: can't get kernel image!
SCRIPT FAILED: continuing...
Card did not respond to voltage select!
Device 0: unknown device
Waiting for Ethernet connection... done.
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.0.123 (1527 ms)
***ERROR: 'serverip' not set
Cannot autoload with TFTPGET
missing environment variable: pxeuuid
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/01-b8-27-eb-70-bf-6a
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/C0A8007B
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/C0A8007
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/C0A800
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/C0A80
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/C0A8
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/C0A
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/C0
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/C
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-bcm283x-rpi
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm-bcm283x
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default-arm
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
missing environment variable: bootfile
Retrieving file: pxelinux.cfg/default
Waiting for Ethernet connection... done.
***ERROR: 'serverip' not set
Config file not found
Waiting for Ethernet connection... done.
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.0.123 (1528 ms)
***ERROR: 'serverip' not set
Cannot autoload with TFTPGET
Waiting for Ethernet connection... done.
BOOTP broadcast 1
BOOTP broadcast 2
DHCP client bound to address 192.168.0.123 (1527 ms)
***ERROR: 'serverip' not set
Cannot autoload with TFTPGET
U-Boot>
Что я делаю не так?