Go to file
Martin Jansa b65bff6323 sdcard_image-rpi.bbclass: include ${IMAGE_NAME_SUFFIX} directly in both ${IMAGE_NAME} and ${IMAGE_LINK_NAME}
* Adjust to
  https://git.openembedded.org/openembedded-core/commit/?id=26d97acc71379ab6702fa54a23b6542a3f51779c

* ${IMAGE_NAME}${IMAGE_NAME_SUFFIX} is almost always used together already
  and when they aren't it's usually because of hardcoded '.rootfs' suffix

* it's a bit strange, because ${IMAGE_NAME_SUFFIX} is applied after the
  version from ${IMAGE_VERSION_SUFFIX}, if we move it to ${IMAGE_LINK_NAME}
  then it will be applied before the version and ${IMAGE_LINK_NAME}
  will be just the version-less symlink to latest built version.

* it's not added to INITRAMFS_IMAGE_NAME as it assumes that all
  images used as initramfs will set IMAGE_NAME_SUFFIX to empty.
  Many already do as shown bellow, but you might need to extend
  this list in your layer.

* without this fix, build with:
  IMAGE_FSTYPES:rpi = "rpi-sdimg.gz"
  will fail due to duplicated .rootfs suffix as shown in:
  http://errors.yoctoproject.org/Errors/Details/754267/

  130023424 bytes (130 MB, 124 MiB) copied, 0.0706353 s, 1.8 GB/s
  gzip: skipping: core-image-minimal-raspberrypi4-64.rootfs-20240222111049.rpi-sdimg does not exist
  WARNING: TOPDIR/tmp-glibc/work/raspberrypi4_64-oe-linux/core-image-minimal/1.0/temp/run.do_image_rpi_sdimg.1238835:263 exit 1 from 'gzip -f -9 -n -c --rsyncable core-image-minimal-raspberrypi4-64.rootfs-20240222111049.rpi-sdimg > core-image-minimal-raspberrypi4-64.rootfs-20240222111049.rpi-sdimg.gz'

  OE raspberrypi4-64@ /OE/build/oe-core/tmp-glibc/work/raspberrypi4_64-oe-linux/core-image-minimal/1.0/deploy-core-image-minimal-image-complete $ ll
  total 305612
  drwxr-xr-x  2 martin martin      4096 Feb 22 12:12 ./
  drwxr-xr-x 17 martin martin      4096 Feb 22 12:12 ../
  -rw-r--r--  1 martin martin 130023424 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs-20240222111049.ext3
  -rw-r--r--  1 martin martin      3535 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs-20240222111049.manifest
  -rw-r--r--  1 martin martin 184549376 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs-20240222111049.rootfs.rpi-sdimg
  -rw-r--r--  1 martin martin         0 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs-20240222111049.rpi-sdimg.gz
  -rw-r--r--  1 martin martin    361441 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs-20240222111049.spdx.tar.zst
  -rw-r--r--  1 martin martin    271541 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs-20240222111049.testdata.json
  -rw-r--r--  1 martin martin  50331648 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs-20240222111049.vfat
  lrwxrwxrwx  1 martin martin        61 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs.ext3 -> core-image-minimal-raspberrypi4-64.rootfs-20240222111049.ext3
  lrwxrwxrwx  1 martin martin        65 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs.manifest -> core-image-minimal-raspberrypi4-64.rootfs-20240222111049.manifest
  lrwxrwxrwx  1 martin martin        69 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs.spdx.tar.zst -> core-image-minimal-raspberrypi4-64.rootfs-20240222111049.spdx.tar.zst
  lrwxrwxrwx  1 martin martin        70 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs.testdata.json -> core-image-minimal-raspberrypi4-64.rootfs-20240222111049.testdata.json
  lrwxrwxrwx  1 martin martin        61 Feb 22 12:12 core-image-minimal-raspberrypi4-64.rootfs.vfat -> core-image-minimal-raspberrypi4-64.rootfs-20240222111049.vfat

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
2024-02-22 15:21:59 +00:00
2024-01-25 17:25:39 +00:00
2021-03-24 10:07:46 +00:00
2022-07-31 02:18:20 +01:00

meta-raspberrypi

Yocto BSP layer for the Raspberry Pi boards - http://www.raspberrypi.org/.

Documentation Status Matrix


Yocto Project Layer Compatible
Sponsored by:
balena.io

Description

This is the general hardware specific BSP overlay for the RaspberryPi device.

More information can be found at: http://www.raspberrypi.org/ (Official Site)

The core BSP part of meta-raspberrypi should work with different OpenEmbedded/Yocto distributions and layer stacks, such as:

  • Distro-less (only with OE-Core).
  • Yoe Disto (Video and Camera Products).
  • Yocto/Poky (main focus of testing).

Yocto Project Compatible Layer

This layer is officially approved as part of the Yocto Project Compatible Layers Program. You can find details of that on the official Yocto Project website.

Dependencies

This layer depends on:

  • URI: git://git.yoctoproject.org/poky
    • branch: master
    • revision: HEAD

Quick Start

  1. source poky/oe-init-build-env rpi-build
  2. Add this layer to bblayers.conf and the dependencies above
  3. Set MACHINE in local.conf to one of the supported boards
  4. bitbake core-image-base
  5. Use bmaptool to copy the generated .wic.bz2 file to the SD card
  6. Boot your RPI

Quick Start with kas

  1. Install kas build tool from PyPi (sudo pip3 install kas)
  2. kas build meta-raspberrypi/kas-poky-rpi.yml
  3. Use bmaptool to copy the generated .wic.bz2 file to the SD card
  4. Boot your RPI

To adjust the build configuration with specific options (I2C, SPI, ...), simply add a section as follows:

local_conf_header:
  rpi-specific: |
    ENABLE_I2C = "1"
    RPI_EXTRA_CONFIG = "dtoverlay=pi3-disable-bt"

To configure the machine, you have to update the machine variable. And the same for the distro.

For further information, you can read more at https://kas.readthedocs.io/en/latest/index.html

Contributing

You can send patches using the GitHub pull request process or/and through the Yocto mailing list. Refer to the documentation for more information.

Maintainers

  • Andrei Gherzan <andrei at gherzan.com>
Description
No description provided
Readme 6.1 MiB
Languages
C 67.2%
BitBake 32.5%
Shell 0.2%