Search code examples
yoctomender

Creating Yocto Mender for Raspberrypi 3


I need help creating Mender for Raspberry Pi3. I can create the image, but when using Win32Image to burn the Disk Image it doesn't boot.

Here is my additional conf.log

MENDER_ARTIFACT_NAME = "release-1"
INHERIT += "mender-full"
MACHINE ?= "raspberrypi3"
RPI_USE_U_BOOT = "1"
MENDER_PARTITION_ALIGNMENT_KB = "4096"
MENDER_BOOT_PART_SIZE_MB = "40"
IMAGE_INSTALL_append = " kernel-image kernel-devicetree"
IMAGE_FSTYPES_remove += " rpi-sdimg"
DISTRO_FEATURES_append = " systemd"
VIRTUAL-RUNTIME_init_manager = "systemd"
DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit"
VIRTUAL-RUNTIME_initscripts = ""
IMAGE_FSTYPES = "ext4"

and bblayers

POKY_BBLAYERS_CONF_VERSION = "2"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BBLAYERS ?= " \
  /home/ubuntu/pyro/poky/meta \
  /home/ubuntu/pyro/poky/meta-poky \
  /home/ubuntu/pyro/poky/meta-yocto-bsp \
  /home/ubuntu/pyro/openembedded-core/meta \
  /home/ubuntu/pyro/meta-openembedded/meta-oe \
  /home/ubuntu/pyro/meta-openembedded/meta-python \
  /home/ubuntu/pyro/meta-openembedded/meta-networking \
  /home/ubuntu/pyro/meta-raspberrypi \
  /home/ubuntu/pyro/meta-mender/meta-mender-core \
  /home/ubuntu/pyro/meta-mender/meta-mender-demo \
  /home/ubuntu/pyro/meta-mender/meta-mender-raspberrypi \
  "

I can create the rpi-basic image as follows:

            ubuntu@ip-172-31-6-3:~/pyro/build$ bitbake rpi-basic-image
            Parsing recipes: 100% |######################################################################################| Time: 0:00:54
            Parsing of 870 .bb files complete (0 cached, 870 parsed). 1347 targets, 71    skipped, 0 masked, 0 errors.
            NOTE: Resolving any missing task queue dependencies

            Build Configuration:
            BB_VERSION        = "1.34.0"
            BUILD_SYS         = "x86_64-linux"
            NATIVELSBSTRING   = "universal"
            TARGET_SYS        = "arm-poky-linux-gnueabi"
            MACHINE           = "raspberrypi3"
            DISTRO            = "poky"
            DISTRO_VERSION    = "2.3.2"
            TUNE_FEATURES     = "arm armv7ve vfp thumb neon vfpv4 callconvention-hard    cortexa7"
            TARGET_FPU        = "hard"
            meta
            meta-poky
            meta-yocto-bsp    = "pyro:2021e95bcd986e5bcfe457da5c3e16d60241d050"
            meta-raspberrypi  = "pyro:40447de4782d76f1e23e67ba05e272c27f6ec250"
            meta-mender-core
            meta-mender-raspberrypi = "pyro:b40f05c82ebc97c18ddf8ac426af4657ddba9425"

            Initialising tasks: 100%    |###################################################################################| Time: 0:00:04
            NOTE: Executing SetScene Tasks
            NOTE: Executing RunQueue Tasks
            NOTE: Tasks Summary: Attempted 2976 tasks of which 2953 didn't need to be    rerun and all succeeded.
            ubuntu@ip-172-31-6-3:~/pyro/build$

Maybe I am missing some steps?


Solution

  • The pyro branch of meta-raspberrypi does not support the RPI_USE_U_BOOT setting. For that (and older) branches you need to use 'KERNEL_IMAGETYPE_rpi = "uImage"' instead.