Following the recent major breaking change with the introduction of
bitbake-setup because of which the Poky repository master branch is
no longer being updated, the Poky git repository has to be replaced
by bitbake and openembedded-core. This fixes the GitHub workflow
with branch master of meta-raspberrypi for yocto-check-layer test.
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Following the recent major breaking change with the introduction of
bitbake-setup because of which the Poky repository master branch is
no longer being updated, the Poky git repository has to be replaced
by bitbake, openembedded-core and meta-yocto which provides layers
meta-poky and meta-yocto-bsp. This fixes the GitHub workflows with
branch master of meta-raspberrypi and allows running auto checks.
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Add rpi-backlight.dtbo to RPI_KERNEL_DEVICETREE_OVERLAYS. This is
a devicetree overlay for mailbox-driven Raspberry Pi DSI Display
backlight controller.
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Move the raspberrypi PACKAGECONFIG to meta-oe (at least partially),
as the libcamera recipe needs to know when is it built for an rpi due
to a new build dependency. Also, make the PACKAGECONFIG append device
specific. Otherwise the behavior of the bbappend should not change
by this patch.
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Quite a few things have changed lately, eaiser to browse the release
page: https://github.com/raspberrypi/rpicam-apps/releases
The main reason for the update it improved build-compatibiltiy with
tensorflow-lite: it doesn't need cmake/pkg-config file anymore to
find the library, so it should be easier to integrate it with
meta-tensorflow.
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
Add w1-gpio-pi5.dtbo to RPI_KERNEL_DEVICETREE_OVERLAYS to resolve
the following issue noticed in vclog --msg on Raspberry Pi 5 when
ENABLE_W1 is set to 1:
dtdebug: mapped overlay 'w1-gpio' to 'w1-gpio-pi5'
dtdebug: Failed to open overlay file 'overlays/w1-gpio-pi5.dtbo'
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
This machine configuration is for the Raspberry Pi 2B V1.2 (64-bit).
Note: Raspberry Pi 2 Model B V1.2[1] switched from BCM2836[2] (V1.0,
V1.1) to BCM2837[3] that is 64-bit CPU used in Raspberry Pi 3 Model B.
BCM2836[2]
The Broadcom chip used in the Raspberry Pi 2 Model B. The
underlying architecture in BCM2836 is identical to BCM2835. The
only significant difference is the removal of the ARM1176JZF-S
processor and replacement with a quad-core Cortex-A7 cluster.
BCM2837[3]
This is the Broadcom chip used in the Raspberry Pi 3 Model B,
later models of the Raspberry Pi 2 Model B, and the Raspberry Pi
Compute Module 3. The underlying architecture of the BCM2837 is
identical to the BCM2836. The only significant difference is the
replacement of the ARMv7 quad core cluster with a quad-core ARM
Cortex A53 (ARMv8) cluster.
The ARM cores run at 1.2GHz, making the device about 50% faster
than the Raspberry Pi 2. The VideoCore IV runs at 400MHz.
See:
Poky (Yocto Project Reference Distro) 5.2.99+snapshot-cfbb00657ab961a3c3a8e6619fc08a2a3f4255c7 raspberrypi2-64 ttyAMA0
raspberrypi2-64 login: root
WARNING: Poky is a reference Yocto Project distribution that should be used for testing and development purposes only. It is recommended that you create your own distribution for production use.
root@raspberrypi2-64:~# uname -a
Linux raspberrypi2-64 6.12.41-v8 #1 SMP PREEMPT Thu Aug 7 16:48:46 UTC 2025 aarch64 GNU/Linux
root@raspberrypi2-64:~# cat /proc/device-tree/compatible
raspberrypi,2-model-b-rev2brcm,bcm2837
root@raspberrypi2-64:~# tty
/dev/ttyAMA0
root@raspberrypi2-64:~# dmesg | head
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 6.12.41-v8 (oe-user@oe-host) (aarch64-poky-linux-gcc (GCC) 15.2.0, GNU ld (GNU Binutils) 2.45.0.20250908) #1 SMP PREEMPT Thu Aug 7 16:48:46 UTC 2025
[ 0.000000] KASLR enabled
[ 0.000000] random: crng init done
[ 0.000000] Machine model: Raspberry Pi 2 Model B Rev 1.2
[ 0.000000] efi: UEFI not found.
[ 0.000000] Reserved memory: created CMA memory pool at 0x000000001ec00000, size 256 MiB
[ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[ 0.000000] OF: reserved mem: 0x000000001ec00000..0x000000002ebfffff (262144 KiB) map reusable linux,cma
[ 0.000000] NUMA: Faking a node at [mem 0x0000000000000000-0x000000003b3fffff]
[1]: https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#flagship-series
[2]: https://www.raspberrypi.com/documentation/computers/processors.html#bcm2836
[3]: https://www.raspberrypi.com/documentation/computers/processors.html#bcm2837
Signed-off-by: Gaël PORTAY <gael.portay@rtone.fr>
Package rpicam_app.so.1.4.2 library for the default package to fix the
following error.
ERROR: libcamera-apps-1.4.2+git-r0 do_package: QA Issue: libcamera-apps: Files/directories were installed but not shipped in any package:
/usr/lib/rpicam_app.so.1.4.2
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
libcamera-apps: 1 installed and not shipped files. [installed-vs-shipped]
ERROR: libcamera-apps-1.4.2+git-r0 do_package: Fatal QA errors were found, failing task.
ERROR: Logfile of failure stored in: /home/build-2/tmp/work/cortexa53-poky-linux/libcamera-apps/1.4.2+git/temp/log.do_package.1110484
ERROR: Task (/home/meta-raspberrypi/dynamic-layers/multimedia-layer/recipes-multimedia/libcamera-apps/libcamera-apps_git.bb:do_package) failed with exit code '1'
The following version expansion is used to make it compatible with future
package version changes.
${@d.getVar("PV", False).__str__().split('+')[0]}"
Fixes: https://github.com/agherzan/meta-raspberrypi/issues/1440
Signed-off-by: Bhargav Das <bhargavdas100@gmail.com>
SOCs used in rpi3 and rpi4 do not have AES crypto HW engine
denote it by using more appropriate default tune, this ensures
that it enforces +nocrypto into -mtune regardless of gcc or clang
compiler.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
It is already applied on upstream, see u-boot rev,
564d99d0723e338792df6897dc7407df2cf6196d
Fixes:
ERROR: u-boot-1_2025.07-r0 do_patch: Applying patch '0001-rpi-always-set-fdt_addr-with-firmware-provided-FDT-address.patch' on target directory '/workspaces/ls/linux-distro/build-ls-rpi4/tmp/work/ls_rpi4-limonsoftware-linux/u-boot/2025.07/sources/u-boot-2025.07'
CmdError('quilt --quiltrc /workspaces/ls/linux-distro/build-ls-rpi4/tmp/work/ls_rpi4-limonsoftware-linux/u-boot/2025.07/recipe-sysroot-native/etc/quiltrc push', 0, 'stdout: Applying patch 0001-rpi-always-set-fdt_addr-with-firmware-provided-FDT-address.patch
patching file board/raspberrypi/rpi/rpi.c
Hunk #1 FAILED at 318.
1 out of 1 hunk FAILED -- rejects in file board/raspberrypi/rpi/rpi.c
patch unexpectedly ends in middle of line
Patch 0001-rpi-always-set-fdt_addr-with-firmware-provided-FDT-address.patch can be reverse-applied
Signed-off-by: Anibal Limon <anibal@limonsoftware.com>
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
I needed support of the seeed-can-fd-hat-v2 Can Shield
Added the seeed-can-fd-hat-v2.dtbo device tree overlay to the rpi-base.inc and added the parameter for the CAN shield under the rpi-config so it can be easily enabled as a parameter from e.g. the local.conf and is added to the /boot/config.txt of the Pi. I also added the changes to the documentation.
Signed-off-by: Moritz Boesenberg <moritz@techmountain.dev>
Similarly to https://github.com/agherzan/meta-raspberrypi/pull/1481 this file also
needs an update.
picamera-libs-20230509~buster-r0 do_populate_lic fails:
ERROR: QA Issue: lib32-picamera-libs: LIC_FILES_CHKSUM points to an invalid file: lib32-picamera-libs/20230509~buster/raspberrypi-firmware-1.20230509~buster/opt/vc/LICENCE [license-checksum]
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
To solve the AQ Issue it could not find the license file:
ERROR: rpi-bootfiles-20250430-r3 do_populate_lic: QA Issue: rpi-bootfiles: LIC_FILES_CHKSUM points to an invalid file: .../build/tmp/work/raspberrypi5-oe-linux/rpi-bootfiles/20250430/raspberrypi-firmware-bc7f439/boot/LICENCE.broadcom [license-checksum]
Signed-off-by: Jan Vermaete <jan.vermaete@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Some of them were introduced by mass-removal of S = WORKDIR/git assignments;
rather than try to fix up (or redo) just these, I've run this sed command over
the whole tree:
sed -i -z -E 's/([ \t\f\v\r]*\n){3,}/\n\n/g' `find . -name *.bb -o -name *.inc`
The rationale is that more than one empty line is wasting vertical screen space, and
does nothing for readability.
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Since there are currently multiple breaking changes, update to a new
release series for the next release so layers can show compatibility
correctly.
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Add vc4-kms-dsi-ili9881-7inch.dtbo for the Raspberry Pi Touch
Display 2 to RPI_KERNEL_DEVICETREE_OVERLAYS.
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
- remove DRIDRIVERS variable
Both are not available in current mesa recipe
This fixes:
ERROR: mesa-2_25.0.5-r0 do_recipe_qa: QA Issue: mesa: invalid PACKAGECONFIG(s): dri3 [invalid-packageconfig]
ERROR: mesa-2_25.0.5-r0 do_recipe_qa: Fatal QA errors were found, failing task.
Signed-off-by: Markus Volk <f_l_k@t-online.de>
With:
https://lists.openembedded.org/g/bitbake-devel/message/17508
there are WARNINGs like:
WARNING: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb:21 has a lack of whitespace around the assignment: 'PITFT="${@bb.utils.contains("MACHINE_FEATURES", "pitft", "1", "0", d)}"'
WARNING: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb:22 has a lack of whitespace around the assignment: 'PITFT22="${@bb.utils.contains("MACHINE_FEATURES", "pitft22", "1", "0", d)}"'
WARNING: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb:23 has a lack of whitespace around the assignment: 'PITFT28r="${@bb.utils.contains("MACHINE_FEATURES", "pitft28r", "1", "0", d)}"'
WARNING: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb:24 has a lack of whitespace around the assignment: 'PITFT28c="${@bb.utils.contains("MACHINE_FEATURES", "pitft28c", "1", "0", d)}"'
WARNING: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb:25 has a lack of whitespace around the assignment: 'PITFT35r="${@bb.utils.contains("MACHINE_FEATURES", "pitft35r", "1", "0", d)}"'
WARNING: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb:27 has a lack of whitespace around the assignment: 'VC4GRAPHICS="${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "1", "0", d)}"'
WARNING: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb: meta-raspberrypi/recipes-bsp/bootfiles/rpi-config_git.bb:38 has a lack of whitespace around the assignment: 'WM8960="${@bb.utils.contains("MACHINE_FEATURES", "wm8960", "1", "0", d)}"'
WARNING: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb:14 has a lack of whitespace around the assignment: 'export CC7="${CC}"'
WARNING: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb:15 has a lack of whitespace around the assignment: 'export LD7="${LD}"'
WARNING: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb:16 has a lack of whitespace around the assignment: 'export OBJCOPY7="${OBJCOPY}"'
WARNING: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb:17 has a lack of whitespace around the assignment: 'export OBJDUMP7="${OBJDUMP}"'
WARNING: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb:18 has a lack of whitespace around the assignment: 'export CC8="${CC}"'
WARNING: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb:19 has a lack of whitespace around the assignment: 'export LD8="${LD}"'
WARNING: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb:20 has a lack of whitespace around the assignment: 'export OBJCOPY8="${OBJCOPY}"'
WARNING: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb: meta-raspberrypi/recipes-bsp/armstubs/armstubs.bb:21 has a lack of whitespace around the assignment: 'export OBJDUMP8="${OBJDUMP} -maarch64"'
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Fix the resource exhaustion problem on the build infrastructure.
Suggested-by: Stu Westerman @stu-spp
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Upgrade to Ubuntu 22.04 because it is compatible with the Yocto
Project release Walnascar and provides a newer Python version.
Fixes:
RuntimeError: Sorry, python 3.9.0 or later is required for this version of bitbake
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Increase CONFIG_SYS_BOOTM_LEN for machine raspberrypi4 (32-bit)
because the kernel size has increased. This fixes the following
issue when booting an image with U-Boot:
Image Name: Linux-6.6.63-v7l
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 8559752 Bytes = 8.2 MiB
Load Address: 00008000
Entry Point: 00008000
Verifying Checksum ... OK
Booting using the fdt blob at 0x2eff2000
Working FDT set to 2eff2000
Loading Kernel Image to 8000
Image too large: increase CONFIG_SYS_BOOTM_LEN
Must RESET board to recover
Fixes: https://github.com/agherzan/meta-raspberrypi/issues/1306
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Switches the Raspberry Pi 5 to use the standard cyfman43455-sdio
firmware by default. The minimal firmware on this device is unable to
connect to a WiFi access point.
This also matches the behavior of Raspberry Pi OS, which defaults to the
standard firmware
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Building libcamera from the latest version of meta-or fails
the buildpaths qa check with a number of generated binaries.
Looking into the logs, it seemed that the -f*-prefix-map
flags were present to gcc invocations, but the used flags
were quite off for g++ invocations. It seems that using
the cpp_args meson option overwrites (at least most of)
the CXXFLAGS set by Yocto, including the -f*-prefix-map
flags.
To avoid this, append the extra compile flag to the
CXXFLAGS variable instead of using meson's cpp_args option.
Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
And replaced it by the features that was below it.
see:
commit 43b8b3fa72d75d8d82a478613a4d9bf4645b5389
Author: Ross Burton <ross.burton@arm.com>
Date: Thu Nov 7 13:47:52 2024 +0000
classes-recipe/core-image: drop debug-tweaks IMAGE_FEATURE
Remove the 'debug-tweaks' IMAGE_FEATURE. It sounds friendly and kind to
developers, but it results primarily in an image which root can login
remotely without a password. This is incredibly useful for local
development and testing purposes, but we really want to be explicit that
this is what is happening instead of hiding it behind a vague "debug
tweaks" statement.
To preserve the eixsting behaviour, debug-tweaks should be replaced with
these features:
allow-empty-password empty-root-password allow-root-login post-install-logging
(From OE-Core rev: 2c229f9542c6ba608912e14c9c3f783c3fa89349)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Jan Vermaete <jan.vermaete@gmail.com>
Apparently the recipe for python3 picamera is installing some libraries
from /opt/vc/lib that are not necessary to the picamera module. The
gles2 library, in particular, overwrites a symlink to another version
of the gles2 library. The result is that two different gles2 libs are
placed in /usr/lib.
This commit removes a few unneeded libraries, leaving libmmal and its
dependencies, that are instead required.
Signed-off-by: Luca Carlon <carlon.luca@gmail.com>
All bcm2712 are built for arm64 builds alone and rpi-base.inc is included
by 32-bit machine configs as well. Recently, kernel moved thesr dts files
into arch/arm64/boot/dts/broadcom/ folder [1]
[1] 10c77e119e
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This patch enables the CONFIG_I2C_BRCMSTB option in vc4graphics.cfg to
ensure proper support for the `brcm,bcm2711-hdmi-i2c` device node. Without
this configuration, the I2C bus associated with HDMI on Broadcom
BCM2711-based systems may fail to probe, causing issues with HDMI
communication and display initialization.
Additionally, this resolves potential deferred probe issues observed in
the kernel logs, ensuring the correct initialization of the HDMI I2C bus.
Signed-off-by: Garrett Brown <garrett.brown@aclima.io>
For now only the 'dtmerge' (including 'dtoverlay' and 'dtparam') and 'pinctrl' utilities are included.
Added the 'raspi-' prefix to make it less conflicting with other 'utils' recipes.
Signed-off-by: Jan Vermaete <jan.vermaete@gmail.com>
The following line doubles BBFILES for all layers in BBFILE_COLLECTIONS:
BBFILES += "${@' '.join('${LAYERDIR}/dynamic-layers/%s/recipes*/*/*.bb' % layer \
for layer in BBFILE_COLLECTIONS.split())}"
And most of them are invalid, use BBFILES_DYNAMIC is the correct solution.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Remove layer dependency from meta-lts-mixins 'scarthgap/u-boot'
because now the BSP supports styhead which brings U-Boot 2024.07.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
We need the uart dts overlays to enable a specific uart peripheral.
For example if you use the disable-bt overlay, you have to enable
the uart0 dts overlay to be able to use uart0 peripheral.
Signed-off-by: Pierrick Curt <pierrickcurt@gmail.com>
Switch to defaulting to OE core ffmpeg &
meta-openembedded vlc.
Upgrades to newer rpi-distro VLC version
in an OE environment have proven to be
tedious due to all the PI foundation patches.
Some patches aren't fully pushed into github
and require updates to build.
Maintaining patches have also proven to be unstable.
Defualt to stable builds of both so that.
Peoples builds aren't broken. If rpi-distro
rpi-distro version of ffmpeg & vlc wanted
users may switch by setting PREFFERED_PROVIDER.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
Add udev rule to notify systemd of available framebuffer
Using psplash in combination with systemd the splash screen is not
shown. The dependency to sys-devices-platform-gpu-graphics-fb0.device
will terminate psplash-start.service because systemd is not aware of the
existing framebuffer device node.
See https://lists.yoctoproject.org/g/yocto/topic/91286438#57156
Signed-off-by: Bastian Wanner <bastian.wanner@inovex.de>
in commit 01b162388e
with commit message:
rpi-base: Drop old dtbo names
pi3-disable-bt is renamed to disable-bt and pi3-miniuart-bt is renamed
to miniuart-bt in 2014, now with 5.4 these are not recognised anymore
and miniuart-bt and disable-bt are already part of RPI_KERNEL_DEVICETREE_OVERLAYS
Signed-off-by: Jan Vermaete <jan.vermaete@gmail.com>
CONFIG_ASHMEM has been deprecated since 5.18 by:
commit 721412ed3d819e767cac2b06646bf03aa158aaec
Author: Christoph Hellwig <hch@lst.de>
Date: Tue Mar 15 13:34:57 2022 +0100
staging: remove ashmem
The mainline replacement for ashmem is memfd, so remove the legacy
code from drivers/staging/
so has CONFIG_ANDROID since 6.1 by:
commit 1045a06724f322ed61f1ffb994427c7bdbe64647
Author: Christoph Hellwig <hch@lst.de>
Date: Wed Jun 29 17:01:02 2022 +0200
remove CONFIG_ANDROID
The ANDROID config symbol is only used to guard the binder config
symbol and to inject completely random config changes. Remove it
as it is obviously a bad idea.
As now master has 6.1 or later, both should be dropped.
Signed-off-by: Jaeyoon Jung <jaeyoon.jung@lge.com>
Fixed the warning from kas:
WARNING - Using deprecated refspec for repository "poky". You should migrate to commit/tag/branch.
WARNING - Using deprecated refspec for repository "meta-openembedded". You should migrate to commit/tag/branch.
WARNING - Using deprecated refspec for repository "meta-qt5". You should migrate to commit/tag/branch.
Signed-off-by: Jan Vermaete <jan.vermaete@gmail.com>
Reduce amount of patches applied as they
are no longer required for building.
From older commit no longer required
* 0001-avcodec-arm-sbcenc-avoid-callee-preserved-vfp-regist.patch
* 0002-Fix-build-on-powerpc-and-ppc64.patch
* 0003-avcodec-pngenc-remove-monowhite-from-apng-formats.patch
* 0004-ffmpeg-4.3.4-rpi_14.patc
* 0005-fix-flags.diff
Created by OE community to fix builds and are no longer required
* 2002-libavdevice-opengl_enc-update-dynamic-function-loader.patch
* 2003-libavcodec-fix-v4l2_req_devscan.patch
rpidistro-ffmpeg updates:
* removal of avresample flag. No longer exists
* removal of rpi flag. No longer exists
* include vout-egl and epoxy if opengl or x11 included
in DISTRO_FEATURES.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
Firmware links for model Zero 2 W were missing.
This patch sets the necessary links for brcmfmac firmware. Without the
links, the firmware cannot be loaded without causing boot messages like:
brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43430b0-sdio.raspberrypi,model-zero-2-w.bin failed with error -2
Fixesagherzan/meta-raspberrypi#1324
Signed-off-by: Matthias Klein <matthias@extraklein.de>
oe-core upgrade 1.22.11 -> 1.24.3:
9c21815339
be aware that this also dropped gstreamer1.0-omx recipe as upstream has removed it:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4976
and similarly for libomxil:
63535ce551
So now meta-raspberrypi doesn't parse again due to this .bbappend
Remove it to unblock parsing, but there will be other improvements
or cleanups needed later (preferrably by someone who was using that
I'm just seeing parsing failure in world builds). e.g.:
conf/machine/include/rpi-default-providers.inc:PREFERRED_PROVIDER_virtual/libomxil ?= "userland"
conf/machine/include/rpi-default-providers.inc:VIRTUAL-RUNTIME_libomxil = "userland"
dynamic-layers/multimedia-layer/recipes-multimedia/rpidistro-vlc/rpidistro-vlc_3.0.17.bb: file://3003-codec-omxil_core-replace-opt-vc-path-with-usr-lib.patch \
dynamic-layers/multimedia-layer/recipes-multimedia/rpidistro-vlc/rpidistro-vlc_3.0.17.bb: file://3006-codec-omxil_core.h-fix-multiple-definition-of.patch \
dynamic-layers/multimedia-layer/recipes-multimedia/rpidistro-vlc/rpidistro-vlc_3.0.17.bb:PACKAGECONFIG[mmal] = "--enable-omxil --enable-omxil-vout --enable-rpi-omxil --enable-mmal --enable-mmal-avcodec,,userland"
recipes-graphics/userland/userland_git.bb:PROVIDES += "virtual/libomxil"
recipes-multimedia/omxplayer/omxplayer_git.bb:DEPENDS = "alsa-lib libpcre virtual/egl boost freetype dbus openssl libssh virtual/libomxil coreutils-native curl-native userland"
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
* we don't know yet what changes will be needed to stay compatible with
final styhead, but we already know that the last changes for UNPACKDIR
aren't compatible with scarthgap or nanbield.
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
UNPACKDIR is new contruct for do_unpack things in latest master
we should be using that instead of WORKDIR for referencing those
files
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Similar to raspberrypi4-64.conf, we need to set KERNEL_IMAGETYPE_UBOOT to
"Image" and set KERNEL_BOOTCMD to "booti"
Signed-off-by: Tim Orling <tim.orling@konsulko.com>
* 6.1 version was used by default since mickledore:
12a1187b01
and kirkstone for rpi5 MACHINEs since:
9dc6673d41
* scarthgap uses 6.6 by default since:
1cf3dd5e5e
* nobody is probably using 5.15 with newer release and there are issues with "iw reg" since
wireless-regdb upgrade in oe-core as well as shown in:
https://github.com/agherzan/meta-raspberrypi/pull/1317
so better to drop it from master/scarthgap together with
rpi.scc used only for 5.15 and 0001-gcc-plugins-Reorganize-gimple-includes-for-GCC-13.patch
used only by rpi.scc
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
This file is now used to fetch binary blobs used by picamera and
vc library recipes, which are only compatible with 32bit userspace
Perhaps we need to sunset these recipe as some point and repace
with alternatives like picamera2 which is built on top of libcamera
and works on both 32bit and 64 bit
rpi-bootfiles is fetching from latest firmware.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The firmware repo is huge ( 36G ) to clone is onerous
using shallow clone tarballs require them to be pre-populated
at some mirror which we don't have. Third option is to let
github provide the tarball, there is concern that tarballs
might change the compression etc and thus checksum would change
that is something github would communicate to users in advance [1]
Therefore this is the best solution for us right now.
Also upgrade to latest while here and drop PR settings
[1] https://docs.github.com/en/repositories/working-with-files/using-files/downloading-source-code-archives#stability-of-source-code-archives
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Be aware that whole userland repo is marked as ancient and deprecated:
96a7334ae9
and explicitly says:
"If you are using code from here you should rethink your solution."
But even if your build is using vc4graphics in MACHINE_FEATURES
to avoid most of userland, this issue with multilib was preventing
do_install:append to actually remove those libraries provided by
lib32-mesa when building lib32-userland (e.g. to provide
virtual/libomxil or as dependency of raspidmx or runtime dependency
of omxplayer).
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
* current aarch64 kernel image alone is 24MB:
24M tmp-glibc/deploy/images/raspberrypi4-64/Image-raspberrypi4-64-1-6.1.77+git0+43d1723dbe_77fc1fbcb5-r0.1-20110405230000.bin
and with rpi-bootfiles it takes around 46MB (e.g. this is from kirkstone raspberrypi4-64 build):
2.0K boot.scr
2.0K cmdline.txt
4.0K fixup4cd.dat
4.0K fixup_cd.dat
4.0K uEnv.txt
6.0K fixup4.dat
8.0K fixup.dat
10K fixup4db.dat
10K fixup4x.dat
10K fixup_db.dat
10K fixup_x.dat
16K uboot.env
36K config.txt
52K bcm2711-rpi-4-b.dtb
52K bcm2711-rpi-400.dtb
52K bcm2711-rpi-cm4.dtb
52K bootcode.bin
126K overlays
558K kernel8.img
786K start4cd.elf
786K start_cd.elf
2.2M start4.elf
2.9M start.elf
2.9M start4x.elf
3.6M start4db.elf
3.6M start_x.elf
4.6M start_db.elf
23M Image
* it is increased automatically to fit the content:
tmp-glibc/deploy/images/raspberrypi4-64 $ sfdisk -l core-image-minimal-raspberrypi4-64.rootfs--1.0-r0-20110405230000.wic
Disk core-image-minimal-raspberrypi4-64.rootfs--1.0-r0-20110405230000.wic: 241.2 MiB, 252915712 bytes, 493976 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x076c4a2a
Device Boot Start End Sectors Size Id Type
core-image-minimal-raspberrypi4-64.rootfs--1.0-r0-20110405230000.wic1 * 8192 157815 149624 73.1M c W95 FAT32 (LBA)
core-image-minimal-raspberrypi4-64.rootfs--1.0-r0-20110405230000.wic2 163840 493975 330136 161.2M 83 Linux
but if you want to update the kernel in place or add some additional files
later, it might not be big enough, increase the minimal size from 20M to 100M
* reminder (as I forgot about it before):
"--size" is just minimum
https://docs.yoctoproject.org/ref-manual/kickstart.html
says:
--size: The minimum partition size. Specify as an integer value optionally followed by one of the units “k” / “K” for kibibyte, “M” for mebibyte and “G” for gibibyte. The default unit if none is given is “M”. You do not need this option if you use --source.
--fixed-size: The exact partition size. Specify as an integer value optionally followed by one of the units “k” / “K” for kibibyte, “M” for mebibyte and “G” for gibibyte. The default unit if none is given is “M”. Cannot be specify together with --size. An error occurs when assembling the disk image if the partition data is larger than --fixed-size.
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
* 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>
Starting OE core commit b566b1e32c7993d1ab7795562f648e52ce186a70,
we no longer need PYTHON_PN for any abstraction of python2 vs python3.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
There is anoter hifiberry hat, for which there is currently
no overlay added to the build, so let's add it:
hifiberry-dacplusadcpro.dtbo
Signed-off-by: Pascal Huerst <pascal.huerst@gmail.com>
* it's failing to build since the upgrade in:
https://git.openembedded.org/meta-openembedded/commit/?id=711c6fbce39df685225bca081c5f42bae2de658b
* fixes
../git/core/libcamera_app.cpp: In member function 'void LibcameraApp::ConfigureViewfinder()':
../git/core/libcamera_app.cpp:327:25: error: 'class libcamera::CameraConfiguration' has no member named 'transform'
327 | configuration_->transform = options_->transform;
| ^~~~~~~~~
* be aware that the repository and libraries were removed in 1.4.0 version with:
0ca9f41fea
but I'll leave that change to someone actually using this, I was just fixing
the build issue found in world builds
* tweak FILES to package library symlink without "lib" prefix to fix:
ERROR: libcamera-apps-1.4.2+git-r0 do_package: QA Issue: libcamera-apps: Files/directories were installed but not shipped in any package:
/usr/lib/rpicam_app.so
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
libcamera-apps: 1 installed and not shipped files. [installed-vs-shipped]
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Current configuration hard-code the values of the CAN interrupt pins. This setting allows to change them. The default values are the same as before.
Signed-off-by: Damiano Ferrari <damiano.ferrari@ferrarigrowtech.com>
"zImage" not supported on arm64 so set KERNEL_IMAGETYPE_DIRECT to
"Image" for Raspberry Pi 5 and avoid the following errors:
| make: *** No rule to make target 'zImage'. Stop.
| ERROR: oe_runmake failed
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Set SERIAL_CONSOLES to ttyAMA10. This fixes login on the UART
no matter if systemd is used.
This work was sponsored by GOVCERT.LU.
Suggested-by: Gael PORTAY <gael.portay@rtone.fr>
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Set SDIMG_KERNELIMAGE to kernel_2712.img instead of kernel8.img.
Raspberry Pi 5 firmware defaults to loading kernel_2712.img because
this image contains optimisations specific to Raspberry Pi 5
(e.g. 16K page-size). For more details:
https://www.raspberrypi.com/documentation/computers/config_txt.html#kernel
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Temporary avoid Raspberry Pi 5 machines because U-Boot has not been
ported to it yet.
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Add overlays/vc4-kms-v3d-pi5.dtbo to use vc4-kms-v3d driver on
Raspberry Pi 5.
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Update to version 1.73:
- Fixed some inconsistent indenting in bcm2835.c that triggers
warnings for some people.
- Added Timeout checks to bcm2835_i2c_write() in case of IO
problems. New reason code BCM2835_I2C_REASON_ERROR_TIMEOUT
added.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
The Raspberry Pi 4 board can boot the image from USB memory.
But current meta-raspberrypi supports only SD boot.
This commit allows switching SD boot to other device.
For example, if you want to use USB boot, please define
the following parameters in your conf/local.conf file.
CMDLINE_ROOT_PARTITION = "/dev/sda2"
BOOT_MEDIA = "usb"
v4: Update extra-build-config.md to explain more detail for new variable.
v3: Changed variable name to "BOOT_MEDIA" (was "BOOT_DEVTIPE").
v2: Set existing microSD parameter as default. User can overwrite
some parameters.
Signed-off-by: Harunobu Kurokawa <harunobu.kurokawa.dn@renesas.com>
Upgrade to the latest version of the repository with includes the
following improvements of the template for config.txt:
- update revision and date stamp
- additon of dtoverlay
- general updates
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
This fix is needed to bring the complete dependency chain in order to guarantee
the recursive runtime dependencies [1] of do_populate_lic_deploy in do_populate_lic
will run as expected.
[1] openembedded-core/meta/classes-recipe/license_image.bbclass:do_populate_lic_deploy[recrdeptask] += "do_populate_lic do_deploy"
Fix the following image build issues:
| ERROR: lmp-base-console-image-1.0-r0 do_populate_lic_deploy: Couldn't find license information for dependency rpi-config
Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
* The defconfigs from the RPi Kernel set `powersave` as the default
CPU governor, which is a bad idea as that reduces performance by
setting the CPU frequency to the minimum one.
* In case of a Yocto build user-space is not configured by default
to change the CPU governor, so `powersave` will remain the CPU
governor and it will slow down everything.
* I submitted a fix for those defconfigs to upstream here:
https://github.com/raspberrypi/linux/pull/5666
However, we shouldn't wait until that is accepted and backported
to all the stable branches (if ever is).
* This patch unsets the selection of `powersave` as the default CPU
governor.
* Then the CPU governor that will be selected as default after this
patch will be the Linux's default one that is either `ondemand` or
`schedutil` depending on the Kernel version.
Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com>
wic images depend on the kernel device trees, and therefore should
depend on virtual/kernel:do_deploy to make sure these are present in the
deploy directory.
Most of the time, this dependency is satisfied indirectly since a rootfs
image will depend on the kernel, but add it explicitly for the cases
where it is not.
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Fail to parse omxplayer_git.bb after using new srcrev fetcher API
* https://git.yoctoproject.org/poky/commit/?id=c9400d01575c2a93762b71bf790d0edd6e2acb6f
* https://git.yoctoproject.org/poky/commit/?id=62afa02d01794376efab75623f42e7e08af08526
Error message:
ERROR: ExpansionError during parsing /tmp/meta-raspberrypi/recipes-multimedia/omxplayer/omxplayer_git.bb
Traceback (most recent call last):
File "Var <fetcher_hashes_dummyfunc[vardepvalue]>", line 1, in <module>
File "/tmp/poky/bitbake/lib/bb/fetch2/__init__.py", line 834, in get_hashvalue(d=<bb.data_smart.DataSmart object at 0x7fdac34c1130>, method_name='sortable_revision'):
def get_hashvalue(d, method_name='sortable_revision'):
> pkgv, revs = _get_srcrev(d, method_name=method_name)
return " ".join(revs)
File "/tmp/poky/bitbake/lib/bb/fetch2/__init__.py", line 804, in _get_srcrev(d=<bb.data_smart.DataSmart object at 0x7fdac34c1130>, method_name='sortable_revision'):
if not format:
> raise FetchError("The SRCREV_FORMAT variable must be set when multiple SCMs are used.\n"\
"The SCMs are:\n%s" % '\n'.join(scms))
bb.data_smart.ExpansionError: Failure expanding variable fetcher_hashes_dummyfunc[vardepvalue], expression was ${@bb.fetch.get_hashvalue(d)} which triggered exception FetchError: Fetcher failure: The SRCREV_FORMAT variable must be set when multiple SCMs are used.
The SCMs are:
git://github.com/popcornmix/omxplayer.git;protocol=https;branch=master
git://github.com/FFmpeg/FFmpeg;branch=release/4.0;protocol=https;depth=1;name=ffmpeg;destsuffix=git/ffmpeg
The variable dependency chain for the failure is: fetcher_hashes_dummyfunc[vardepvalue]
ERROR: Parsing halted due to errors, see error messages above
Signed-off-by: Sangmo Kang <sangmo.kang@lge.com>
This avoids failing builds with:
NameError: name 'html_theme' is not defined
It also makes the theme configuration explicit and correctly set up.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
Now that the libcamera package from meta-multimedia has support
for flicker controls and libcamera-apps uses meson, we can bump the
package to its latest revision.
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
CMake is removed in upstream libcamera-apps as of 9e17265,
thus switch to meson to build the package from now on.
Add PACKAGECONFIG entries and neon flags matching the settings
project meson.build as described in the official documentation
https://www.raspberrypi.com/documentation/computers/camera_software.html#building-libcamera-apps
Default to "drm" for PACKAGECONFIG as it is the only option enabled
in both recommended meson setup for Raspberry Pi OS and Raspberry Pi
OS Lite.
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
Bump libcamera to 3d9ac10 to get a fix for the current libcamera from
meta-openembedded/meta-multimedia for the following issue:
error: 'StreamRoles' in namespace 'libcamera' does not name a type; did you mean 'StreamRole'?
55 | using StreamRoles = libcamera::StreamRoles;
| ^~~~~~~~~~~
| StreamRole
Reported-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
Move the libcamera-apps recipe to dynamic-layers/multimedia-layer
alongside with its libcamera dependency.
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
The libcamera-apps project is written in a hardware-agnostic manner
thanks to libcamera, and thus isn't specific to the rpi SoC family.
Moreover, the project is correctly named libcamera-apps and not
rpi-libcamera-apps, so rename the recipe in order to reflect that.
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
Even though the libcamera apps are a rewrite of the rpicam apps and
maintained by the raspberry folks, switching to libcamera makes the
code hardware agnostic and thus could be compiled and used on various
machines featuring a camera device supported by a libcamera pipeline.
For this reason, do not enforce COMPATIBLE_MACHINE.
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
The 'tensorflow-lite' PACKAGECONFIG entry was missing the corresponding
build dependency. In order to be consistent with the build macros,
replace the feature with a 'tflite' package config entry.
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
Add a 'drm' PACKAGECONFIG entry in order to provide support for a
DRM preview window while running the libcamera apps.
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
With armv8-neon being enforced for all ARM based machines, running
any libcamera app on raspberrypi (e.g. Raspberry Pi B Rev 2) results
in Illegal Instruction.
To fix this, set armv8-neon for 32bit raspberrypi3 and raspberrypi4
but defaults to TARGET_ARCH for other non-aarch64 machines.
Fixes: f16219293a ("rpi-libcamera-apps: fix flags used in aarch64 builds")
Signed-off-by: Vivien Didelot <vivien.didelot@gmail.com>
Build failure occurring with gcc version 13.1.1.
Add patch to fix builds with latest gcc in OE-core.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
It can be useful to disable the WiFi for hardening reasons.
And it probably lower the power consumption a bit.
Signed-off-by: Jan Vermaete <jan.vermaete@gmail.com>
When RPI_USE_U_BOOT is set to 1, if enable_uart is not set to 1 in config.txt
then the board won't boot (Resolves agherzan#1189).
This requirement only affects the following boards:
- Raspberry Pi Zero W
- Raspberry Pi 3 32 & 64 bit
- Raspberry Pi 4 32 & 64 bit
Signed-off-by: DOLE Olivier <odole@dicksondata.fr>
Prepending new definitions should be preferred to assignment, as it is
simpler and more conducive to defining new machine configurations that
reuse these configurations.
Signed-off-by: Zachary T Welch <zach@aquabyte.ai>
$ git log --oneline 22a52590c33a813743b4e6337478c208201c77b1..12098520a3dec36ba796655baac7efece457f8d8
1209852 (origin/main, origin/HEAD) utils: Better handling of containers in timestamp.py
213b166 encoder: Add logic to auto-detect H.264 encoder type
b90f65a libav: Add libx264 support
ba8d8de libav: Move codec specific options to different function
4d40e6d libav: Add buffer done callback
cd9e4e1 libav: Make ALSA work with mono mic.
408f568 libav: Fix msg when opening audio device fails.
21157c5 build: install library headers
54a781d (tag: v1.1.2) image: dng: Make thumbnail less dark
8b286cc image: dng: Add support for 16-bit Bayer formats
aa849e6 options: Set the custom tuning file as early as possible
e90d21d preview: QtPreview: Copy source to a temporary line buffer for speed
9b609e2 core: Add header guard in libcamera_encoder.hpp
8dd7213 utils: Update the timestamp script to work with container files
88b620a image: Fix missing fclose
18b3a88 libav: Update to the new audio channel API
84a7f01 libav: Fixes for audio resampling
64be3bd encoder: H264: Trap framerate=0 to avoid division by zero error
edf073f core: Minor code refactoring
a5b5506 preview: QtPreview: Fix black level; optimize and tidy.
6d2ee58 image: Exif "Model" tags should store camera model, not ID
40e0012 preview: Fix QtPreview for preview width not a multiple of 4
a65682a core: pass VIDIOC_QUERYCAP as unsigned long
9f08463 (tag: v1.1.1) core: Allow info-text to display on the console
77a03d9 image: Add Subject Distance to EXIF data, to encode Lens Position
eca5a3c build: Set a SONAME version in the libraries
dc86fee options: Automatically set H.264 level 4.2 if needed
29f3943 libcamera-detect: Add multiple file name output generation options
4a824f1 actions: Add imx708 tests
785bfe7 actions: Switch to v3 scripts
1d91fdd options: prevent null pointer access to FrameDurationLimits
4fea2ee (tag: v1.1.0) core: Add HDR option, with a stop-gap implementation using V4L2 control
bce2788 core: Tweak default AF options; AfMode now defaults typically to CAF
d696979 core: Update documentation URL
9c5d319 (tag: v1.0.2) output: null_encoder: Fix bug in ordering of input/output callbacks
4068771 libcamera-still: --autofocus-on-capture: add a timeout for AfStateScanning
5a8926a libcamera_still: Add new option "--autofocus-on-capture"
57e6154 core: Add and implement LensPosition and AfTrigger controls
d523dbc core: LibcameraApp::SetControls now always merges new controls
80f17be core: Add autofocus status reporting in FrameInfo
35b461b core: Add libcamera autofocus options
187fcf8 options: Define buffer count overwrite
114c8ae Add YUV save to stdout on "-" path
73ab09f (tag: v1.0.1) libav: Add option to choose the audio source (alsa/pulseaudio)
51bfa73 core: Use automatic mode selection for framerate
baaed33 options: Switch to std::optional for framerate
b89cc36 (tag: v1.0.0) libav: Fix fps reporting for avi contaners
05daa79 libav: Simplify audio timestamping
d8330a4 libav: Fix mkv container framerate
edac99b libcamera-vid: Add SIGINT handler
cfc54c5 libav: Allow adjusting of the audio sample rate for encoding
891c8fa libav: Correctly pipe to stdout
* the libraries are now correctly versioned, remove SOLIBS setting to package them
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* the CMakeLists.txt recognizes only 2 values:
IF (NOT ENABLE_COMPILE_FLAGS_FOR_TARGET)
# On a Pi this will give us armhf or arm64.
execute_process(COMMAND dpkg-architecture -qDEB_HOST_ARCH
OUTPUT_VARIABLE ENABLE_COMPILE_FLAGS_FOR_TARGET OUTPUT_STRIP_TRAILING_WHITESPACE)
endif()
message(STATUS "Platform: ${ENABLE_COMPILE_FLAGS_FOR_TARGET}")
if ("${ENABLE_COMPILE_FLAGS_FOR_TARGET}" STREQUAL "arm64")
# 64-bit binaries can be fully optimised.
add_definitions(-ftree-vectorize)
elseif ("${ENABLE_COMPILE_FLAGS_FOR_TARGET}" STREQUAL "armv8-neon")
# Only build with 32-bit Pi 3/4 specific optimisations if requested on the command line.
add_definitions(-mfpu=neon-fp-armv8 -ftree-vectorize)
endif()
the value from dpkg-architecture on host is useless
when cross-compiling, so we always need to pass something
for raspberrypi4-64 we were passing "armv8-neon" which results in:
aarch64-oe-linux-g++: error: unrecognized command-line option '-mfpu=neon-fp-armv8'
as all -mfpu options are rejected in aarch64 builds, pass better
ENABLE_COMPILE_FLAGS_FOR_TARGET value for all MACHINEs
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
The python recipes in the dynamic-layer need one more subdirectory
to be in accordance with the defined in the layer settings.
The recipes moved to new python sub-dir are:
python3-adafruit-blinka
python3-adafruit-circuitpython-busdevice
python3-adafruit-circuitpython-motor
python3-adafruit-circuitpython-motorkit
python3-adafruit-circuitpython-pca9685
Signed-off-by: Rodrigo M. Duarte <rodrigo.duarte@ossystems.com.br>
This packageconfig has been removed from oe-core via commit 3ec1f30ebba498566d4b266168e1faf182a38fb8
therefore adjust
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Especially with systemd its seen that psplash-start service starts
before /dev/fb0 is created by kernel which results in
[FAILED] Failed to start Start psplash boot splash screen.
this is quite frequent race now with kernel 6.1
Add device dependency on sys-devices-platform-gpu-graphics-fb0.device
via a unit file drop-in
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Default is still 5.15, until we test it out for any regressions and
issues before making 6.1 as default kernel.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
* mesa-demos can be built fine if both gles1 and egl options are
disabled. This allows to have utilities like glxinfo or glxgears
Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com>
Firmware links for model 3B and Zero W were missing.
This patch sets the necessary links for brcmfmac firmware. Without the
links, the firmware cannot be loaded without causing boot messages like:
brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43430-sdio.raspberrypi,model-zero-w.bin failed with error -2
Signed-off-by: Florian Frank <git@ffrnk.de>
This recipe will allow yocto images to support configuring and updating
the bootloader on Raspberry Pi 4 boards. So far this recipe just
includes the commands and firmware with no automation for updates.
Note that this depends on nvmem-rmem support either built into the
kernel or as a module. If that is not part of the kernel the scripts
will error out suggesting that the vcgencmd command from the userland
package is missing. Whilst using vcgencmd from the userland package does
work, it would lead to a conflict with the mesa backend for graphics, so
using the kernel interface is recommended.
Co-authored-by: Maciej Pijanowski <maciej.pijanowski@3mdeb.com>
Signed-off-by: Allan Xavier <mr.a.xavier@googlemail.com>
To better support rpi-eeprom without depending on userland it was
decided to build nvmem-rmem support into the kernel for Raspberry Pi 4
machines.
Signed-off-by: Allan Xavier <mr.a.xavier@googlemail.com>
* now I've used the right tool to hopefully find them all in one go:
../openembedded-core/scripts/contrib/patchreview.py .
Total patches found: 70
Patches missing Signed-off-by: 17 (24%)
Patches with malformed Signed-off-by: 0 (0%)
Patches missing CVE: 1 (1%)
Patches missing Upstream-Status: 32 (46%)
Patches with malformed Upstream-Status: 0 (0%)
Patches in Pending state: 8 (11%)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
When building with latest OE-Core master. Running into
bellow issue. After further research issue appears to
be similar to
https://github.com/bootlin/libva-v4l2-request/issues/35
| src/libavcodec/hevc-ctrls-v2.h:59:8: error: redefinition of 'struct
v4l2_ctrl_hevc_sps'
| 59 | struct v4l2_ctrl_hevc_sps {
| | ^~~~~~~~~~~~~~~~~~
| In file included from
/../../../recipe-sysroot/usr/include/linux/videodev2.h:65,
| from src/libavcodec/hevc-ctrls-v2.h:14:
Disable ffmpeg libva-v4l2-request so that master builds
and until better investigation can be done to fix
issue.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
COMPATIBLE_MACHINE is expected to be overridden by
linux-raspberrypi-v7.inc for linux-raspberrypi-v7 machine this however
does not work because linux-raspberrypi-v7_5.15.bb includes
linux-raspberrypi-v7.inc and linux-raspberrypi.inc ( via
linux-raspberrypi_5.15.bb) and setting from linux-raspberrypi.inc takes
precedence over one coming from linux-raspberrypi-v7.inc as a result
linux-raspberrypi-v7 kernel recipe becomes available for raspberrypi4
machine as well, this recipe however needs certain defines
e.g.RASPBERRYPI_v7_KERNEL which are only available in
raspberrypi-armv7.conf
Signed-off-by: Khem Raj <raj.khem@gmail.com>
* Weston 10 (Yocto Langdale) fails to build with userland drivers
when the packageconfig options 'egl' or 'clients' are enabled, and
those are enabled by default. So disable them by default when
building with DISABLE_VC4GRAPHICS=1
Signed-off-by: Carlos Alberto Lopez Perez <clopez@igalia.com>
Upgrades version of ffmpeg to 4.3.4
* Reason for not upgrading to 4.3.5 all ported raspberrypi
team patches may not be included in that version/commit.
* SRCREV set to 246e1a55a0eca931537d8706acd8b133c07beb05
Updates to PACKAGECONFIG
* Only include --enable-opengl flag when opengl is set in
DISTRO_FEATURES
* Add new flag --enable-epoxy required by vout-egl
* vout-egl requires both libepoxy and x11. Only
enable vout-egl if x11 contained in DISTRO_FEATURES.
* The remaining RPI-Distro related flags added
through patches. Are only enabled if vc4graphics
is disabled and userland graphics enabled. As an
attempt to keep ffmpeg ./configure generic unless
specified other wise.
Removes TARGET_CFLAGS:append as include flags are set in
./configure via the 2001-configure-setup-for-OE-core-usage.patch
patch.
Replaces patches with updated patches used in actual commit.
Adds four new patches to fix ./configure, compile, runtime bugs.
PATCHES:
- 2001-configure-setup-for-OE-core-usage.patch
* The ./configure stage fails if neither x11 or wayland defined
in DISTRO_FEATURES. When opengl enabled ./configure checks for
relevant headers. The last header it checks for is ES2/gl.h which
doesn't exists. Neither do the others if certain perameters
are not meet. Patch addes check for GLES2/gl2.h which does
exists. We use utilize GLESv2 to compile and link with.
Patch also replaces where compiler find mmal and omx headers
and libs.
- 2002-libavdevice-opengl_enc-update-dynamic-function-loader.patch
* After configure stage succeeds the compile stage fails as
SelectedGetProcAddress isn't defined. It can't be define as
if x11 isn't enabled. Patch defines SelectedGetProcAddress
if x11 not enabled, but sdl2 enabled to SDL_GL_GetProcAddress.
If neither sdl2 or x11 is enabled patch loads GL functions
pointers at compile time versus dynamically at runtime.
- 2003-libavcodec-fix-v4l2_req_devscan.patch
* v412_req_devscan.h function definitions where different
from v412_req_devscan.c function implementations.
- 2004-libavcodec-omx-replace-opt-vc-path-with-usr-lib.patch
* Fixes where libbcm_host.so and libopenmaxil.so are loaded from.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
ERROR: Multiple .bb files are due to be built which each provide
libav/libpostproc:
/../../meta-raspberrypi/recipes-multimedia/rpidistro-ffmpeg/rpidistro-ffmpeg_4.3.4.bb
/../../openembedded-core/meta/recipes-multimedia/ffmpeg/ffmpeg_5.1.2.bb
Ensures bitbake understands which recipe to select first.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
Update is also meant to fix bug where if x11
isn't define in DISTRO_FEATURES builds will
fail to compile.
Upgrades version of VLC to 3.0.17
* Reason for update with version 3.0.12 compiling
using GLESv2 and without x11/wayland defined in
DISTRO_FEATURES it was proven to be difficult.
Newer version of VLC appears to have better support
for GLESv2 as there was far less hurdles.
* SRCREV set to b276eb0d7bc3213363e97dbb681ef7c927be6c73
Updates to PACKAGECONFIG
* Only include GLESv2 if opengl defined in DISTRO_FEATURES
* Only include libnotify is x11 included in DISTRO_FEATURES.
Not checking for wayland as well because wayland integration
requires a separate MR.
* remove ability to set certain flags as they require
significant more development time to integrate. Probably
best to include in separate MR.
Flags for:
- opencv
- freerdp
- samba
- dvdread
- vdpau
- wayland
- dca
Removal of
--------------------------------------------------------
TARGET_CFLAGS:append = " -fcommon"
TARGET_CXXFLAGS:append = " -fcommon"
--------------------------------------------------------
as define in configure.ac via the
3001-configure.ac-setup-for-OE-usage.patch patch
Removes extraneous sed operations in the do_configure
takes. Appears to nolonger be required.
Adds required flags to build that couldn't be set in configure.ac
------------------------------------------------------------------
TARGET_CFLAGS:append = " -I${STAGING_INCDIR}/drm"
TARGET_LDFLAGS:append = " ${@bb.utils.contains('DISTRO_FEATURES',
'opengl', '-lGLESv2', '', d)}"
------------------------------------------------------------------
Replaces patches with updated patches used in actual commit.
Prepend patches that are from meta-openembedded/meta-multimedia
to 2XXX-<PATCH NAME>.patch. Adds nine new patches to fix ./configure,
compile, runtime bugs.
PATCHES:
- 3001-configure.ac-setup-for-OE-usage.patch
* Used to ensure crossed compilted OE libraries are used during
compilation. Specifically for the mmal and omxil libraries.
- 3002-fix-EGL-macro-undeclared-and-EGLImageKHR.patch
* Appears to be missing EGL preprocesor directives patch
defines them. The function createImageKHR also appears
to return EGLImageKHR not EGLImage patch updates. To
accommodate for change.
- 3003-codec-omxil_core-replace-opt-vc-path-with-usr-lib.patch
* Configures omxil_core.c for OE usages as libbcm_host.so
and libopenmaxil.so are located in a different location.
- 3004-use-GLESv2-headers-over-GL-headers.patch
* Ensures GLESv2 headers are used over OpenGL headers.
- 3005-modules-remove-glspectrum-usage.patch
* Removes glspectrum plugin as it appears to require
normal OpenGL and not GLESv2 for usage.
- 3006-codec-omxil_core.h-fix-multiple-definition-of.patch
* Removes compile error due to function pointer in omxil_core.h
header being defined multiple times as the header is included
in multiple c source files.
- 3007-remove-xorg-related-link-libs.patch
* Removes xorg related flags if x11 isn't defined in
DISTRO_FEATURES variable.
- 3008-vo-Makefile.am-exclude-libgl_plugin.patch
* Removes the libgl_plugin from being built if opengl
not defined in DISTRO_FEATURES variable.
- 3009-vo-converter_vaapi-Fix-EGL-macro-undeclared.patch
* Appears to be missing EGL preprocesor directives patch
defines them.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
Remove the single quotes from the
COMPATIBLE_HOST variable regex as it appears
to make expression invalid. Thus, leading to
ERROR: Nothing PROVIDES 'rpidistro-ffmpeg'
rpidistro-ffmpeg was skipped: incompatible with host arm-*-gnueabi (not in COMPATIBLE_HOST)
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
* it matches the default from tune-cortexa72.inc:
$ grep DEFAULTTUNE openembedded-core/meta/conf/machine/include/arm/armv8a/tune-cortexa72.inc
DEFAULTTUNE ?= "cortexa72"
* the assignment was introduced in:
cd234925fa
to switch to cortexa72-crc, but this change was effectively reverted in:
42ef0f5046
by setting it back to default "cortexa72".
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Due to https://nvd.nist.gov/vuln/detail/cve-2022-24765, git introduced a
feature where without explicitly allowing it, it won't parse or consider
hooks that are owned by another git user while erroring out with:
fatal: detected dubious ownership in repository at [...]
This won't be an issue in our setup due to how we guard the code via PRs
so we configure git to avoid this check.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
This addresses warnings like:
Node.js 12 actions are deprecated. [...] Please update the following
actions to use Node.js 16: actions/checkout, actions/checkout
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
Fixes#1095 where setting cma to a lower value affects the ability of
libcamera-apps to capture higher resolution images.
Signed-off-by: Devendra Tewari <devendra.tewari@gmail.com>
The new raspberrypi-armv8.conf aims at supporting all the ARMv8
Raspberry Pi boards.
This initial support was tested on:
* Raspberry Pi 4 Model B
* Raspberry Pi 3 Model B
* Raspberry Pi 0 2 WiFi
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
The new raspberrypi-armv7.conf aims at supporting all the ARMv7
Raspberry Pi boards.
This initial support was tested on:
* Raspberry Pi 4 Model B
* Raspberry Pi 3 Model B
* Raspberry Pi 0 2 WiFi
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
The kernel image deployment is now defined in IMAGE_BOOT_FILES as a
separate variable: RPI_EXTRA_IMAGE_BOOT_FILES. This allows a custom
kernel image deployment by redefining this variable when needed.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
All 32-bit machines are sharing the list of machine dtbs with the
exception of raspberrypi0-2w. Move this away too to unify the
machine configurations.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
Explains that PREFERRED_PROVIDER_ffmpeg/vlc
can be used to select an implementation of ffmpeg
or vlc. Also adds information on how vlc mmal_vout
plugin could be utilized. As well as how to expose
rpidistro-vlc.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
enable mmal only when using userland graphics
Fixes builds on non-rpi machines e.g.
ERROR: Nothing PROVIDES 'userland' (but /mnt/jenkins/workspace/yocto-world-glibc/sources/meta-raspberrypi/recipes-multimedia/rpidistro-ffmpeg/rpidistro-ffmpeg_4.3.2.bb DEPENDS on or otherwise requires it)
userland was skipped: incompatible with machine qemumips (not in COMPATIBLE_MACHINE)
NOTE: Runtime target 'rpidistro-ffmpeg' is unbuildable, removing...
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Adds ability to select rpidistro version of vlc and ffmpeg over oe-core version.
via the PREFERRED_PROVIDER_vlc & PREFERRED_PROVIDER_ffmpeg
variables.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
This adds support for building rpidistro version of VLC with hardware
acceleration through MMAL. The version of VLC located in
meta-openembedded/meta-multimedia/recipes-multimedia/vlc uses mainline
VLC and doesn't give all the proper flags. The series of patches attached
to commit gives necessarly vlc mmal flags.
* https://code.videolan.org/videolan/vlc/-/issues/24617
* https://bugs.gentoo.org/723006
The build fails with errors such as "multiple definition of `pf_enable_graphic_buffers'"
when omxil is enabled. The issue seems to be due to compiler flags. Adding -fcommon to
both cflags and cxxflags yields a full compile.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
Pulls the raspidistro version of ffmpeg down and applies the necessary
patches that are located in the debian/patches folder.
Signed-off-by: Vincent Davis Jr <vince@underview.tech>
Otherwise the shell snippet fails with `bad syntax` when `CMDLINE`
contains special characters like `${...}` (useful to insert a U-Boot
variable in `cmdline.txt`).
Signed-off-by: Lluis Campos <lluis.campos@northern.tech>
We do this as a result of an upstream issue[1].
Some of the firmware blobs are provided under the 'Synapse' license
including a clause that can (at least theoretically) be used as a
'killswitch'. To make sure users are aware of this, we guard this
behind a license flag.
Users of this recipe will need to add to their configuration:
LICENSE_FLAGS_ACCEPTED = "synaptics-killswitch"
[1] https://github.com/RPi-Distro/firmware-nonfree/issues/29
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
Besides general cleanup and formatting (for example dropping the
conflicts and replaces on the raspbian packages which was deprecated
long ago) this also cleans up the license of the package as per the
updated upstream copyright file. This recipe now provides firmware files
of two different licenses.
bcm43430 bcm43455 - binary-redist-Cypress
bcm43436 bcm43436s bcm43456 - Synaptics
The license file itself is GPLv2 as other debian files.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
No need to bottleneck on the self hosted worker(s) when this is a light
job that needs to run as soon as possible so that it can cancel early.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
This fixes a boot time message on rpi4b
brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.bin failed with error -2
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This patch had been merged into u-boot upstream. Its commit is
29f7d05a347a("dm: core: Move ofdata_to_platdata() call earlier").
So, remove the randundant patch to avoid building error.
Signed-off-by: Meng Li <Meng.Li@windriver.com>
rpi-test-image is based on core-image-base but includes more packages
that this layer provides. In this way we can have CI test more recipe
updates.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
Drop the 0001-include-sys-types.h-explicitly-for-getting-caddr_t-d.patch
patch as it was fixed in this version[1].
This switches the source from pypi to git (github) as the new version
wasn't published yet.
Lastly, we use the LICENSE.txt file for LIC_FILES_CHKSUM so we don't
have to deal with context lines in the README file.
[1] https://github.com/metachris/RPIO/pull/41
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
The 43438 WLAN firmware doesn't include the clm_blob anymore which now
comes as a separate file: cyfmac43430-sdio.clm_blob.
The 43455 WLAN firmware now comes with a minimal build too. We make sure
that it is packaged and we dropped the associated README. In the future
we might want to introduce a build configuration for switching between
the two builds. For now we only deploy it on target and let users deal
with the symlink accordinly.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
This updates the recipe to the head of the master branch. Upstream
shifted the license section in the README file so this patch changes
LIC_FILES_CHKSUM accordingly.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
This version is now released as GPLv3. It also adds an example that is
not a simple binary anymore - it is provided as a tiny library and an
associated tool (spiram/spiram_test). Restructure the compilation and
installation of all examples to cater for this case.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
m
This is so that uboot fit images have an entry point that matches the
LOADADDR that everything is expecting.
Signed-off-by: AJ Bagwell <anthony.bagwell@hivehome.com>
OE-Core's ffmpeg has moved to 5.x version whose headers are not directly
compatible with what omxplayer expects anymore. Therefore use captured
version of ffmpeg and point the header search paths accordingly.
Add missing dependency on alsa-lib for libasound headers
Fixes build with master/kirkstone
Signed-off-by: Khem Raj <raj.khem@gmail.com>
After switching the SRC_URI for firmware, this adjustment was needed to
let this recipe find /opt/vc path in correct place
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The `rtc` machine feature is "considered" by default for all the
machines we provide until now. This can confuse people who would want an
RTC device attached to a RaspberryPi board[1]. Clarify this via
documentation.
[1] https://github.com/agherzan/meta-raspberrypi/issues/1010
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
www.raspberrypi.com restructured its documentation. Reflect the new
links in our docs.
Fixes#954
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
make_dtb_boot_files already creates the list of device trees with their
right destination. There is no need to redo a similar logic here. As a
matter of fact, the sdimg functionality had a bug because it didn't
treat overlay_map.dtb as an overlays file.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
This helps to avoid unstable GitHub archives. It also silences the
associated build warning:
WARNING: rpi-bootfiles-20211007-r3 do_unpack: QA Issue: rpi-bootfiles:
SRC_URI uses unstable GitHub/GitLab archives, convert recipe to use git
protocol [src-uri-bad]
Fixes#1002
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
* openembedded-core/scripts/contrib/convert-spdx-licenses.py .
...
All files processed with version 0.01
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* openembedded-core/scripts/contrib/convert-variable-renames.py .
...
All files processed with version 0.1
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* libmms was removed with 1.20.0 upgrade in:
https://git.openembedded.org/openembedded-core/commit/?id=76433d3628cbad311b428a57b25b4e2701ee513b
* fixes:
ERROR: gstreamer1.0-plugins-bad-1.20.0-r0 do_configure: QA Issue: gstreamer1.0-plugins-bad: invalid PACKAGECONFIG: libmms [invalid-packageconfig]
* faad now requires gpl to be enabled:
| ../gst-plugins-bad-1.20.0/ext/faad/meson.build:1:0: ERROR: Feature faad cannot be enabled:
| Plugin faad explicitly required via options but GPL-licensed plugins disabled via options.
| Pass option -Dgpl=enabled to Meson to allow GPL-licensed plugins to be built.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
it provides prebuilts which are linked against glibc. so disable it for
musl
Fixes
microcontroller/bcm283x/pulseio/libgpiod_pulsein contained in package python3-adafruit-blinka requires libc.so.6(GLIBC_2.4), but no providers found in RDEPENDS:python3-adafruit-blinka? [file-rdeps]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Since RPi kernel commit 9e87248154a633b18b4900ee742d9894b49e019b FKMS overlay
for Pi4 family is split into a separate file. Not shipping the overlay means
FKMS does not load correctly on these devices and VC4 is not brought up.
Signed-off-by: Michal Toman <michal@toman.sk>
We include a workflow for checking yocto compliance using the poky
provided script and also a matrix workflow for building the CI supported
build configurations.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
It includes jobs for checking DCO and reuse. The latter is set to allow
fails as the repository is not yet reuse compliant. When that is done,
we can switch it.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
It provides support for building a locally defined image. It also
includes a retry logic to handle eventual concurrent cleanups on the
runner.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
The dependencies to the meta-openembedded layers are handled through
dynamic layers so there is no need to advertise this in the
documentation. Especially that the layer configuration doesn't set that
either.
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
python3-adafruit-blinka depends on libgpiod which is provided by
meta-oe. To avoid this dependency at all times, we move the recipe under
the dynamic structure (along with the ones depending on it).
Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com>
These recipes use prebuilt vc libs which are 32bit only libs
They also do not work on musl
https://github.com/agherzan/meta-raspberrypi/pull/983 introduced these
recipes however these are not generic packages that can be used on non-rpi machines
therefore mark them so. It helps in using this SOC layer with other SOC
layers in a distro
Signed-off-by: Khem Raj <raj.khem@gmail.com>
python3-picamera : recipe for python picamera library.
picamera-libs : recipe raspberry pi firmware which are required
by picamera.
Closes: #959
Signed-off-by: Bhargav Das <bhargavthriler@gmail.com>
After commits ca50267ab568 & 03cebdd7ef92 in openembedded-core, the
`cortexa72-crc` tune is no longer available and the `cortexa72` tune
includes the crc extension by default. Update the raspberrypi4-64
machine config to handle these changes.
Signed-off-by: Paul Barker <paul.barker@sancloud.com>
- Feature is enabled with ENABLE_GPIO_SHUTDOWN variable
- Include the gpio-shutdown overlay
- If using SysV init include the additional keymap and inittab entries
to bind the KEY_POWER event
- Systemd init does not require any additional bindings
Signed-off-by: Otto Esko <otto.esko@gmail.com>
Some machines need to have the kernel toggle a gpio when an external
power source needs to shut off power to complete a shutdown and de-energize
the processor. gpio-poweroff provides this functionality but was omitted
from the kernel overlays brought oveer by the rpi-layer from the kernel.
Signed-off-by: Cameron Kellough <cameron@telemetrak.com>
matrix.org doesn't allow guest logins which is required by the shield.
Use a custom one to avoid a confusing badge warning.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
2021-11-14 02:14:11 +00:00
214 changed files with 42759 additions and 1114 deletions
@@ -74,6 +74,22 @@ To remove (or adjust) this delay set these variables in local.conf:
BOOT_DELAY = "0"
BOOT_DELAY_MS = "0"
## Boot media
The Raspberry Pi 4 board can load the boot image files from SD card and USB memory.
By default SD card media is used as boot media.
To switch the boot media from SD card to USB memory, the following variables are supported
in local.conf: `CMDLINE_ROOT_PARTITION` and `BOOT_MEDIA`.
The default value of `CMDLINE_ROOT_PARTITION` is "/dev/mmcblk0p2" to mount SD card. If you want to mount USB memory partition, set CMDLINE_ROOT_PARTITION to "/dev/sda2".
`BOOT_MEDIA` allows `mmc` and `usb`. The "mmc" is required to load an image from the SD card, following the u-boot specification. Similarly, if you want to load a boot image file from USB memory, set BOOT_MEDIA to "usb".
For example, if you want to use USB boot, please define
the following parameters in your local.conf file.
CMDLINE_ROOT_PARTITION = "/dev/sda2"
BOOT_MEDIA = "usb"
## Set overclocking options
The Raspberry Pi can be overclocked. As of now overclocking up to the "Turbo
@@ -89,7 +105,7 @@ Example official settings for Turbo Mode in Raspberry Pi 2:
In order to use CAN with an MCP2515-based module, set the following variables:
ENABLE_SPI_BUS = "1"
ENABLE_CAN = "1"
ENABLE_SPI_BUS = "1"
ENABLE_CAN = "1"
In case of dual CAN module (e.g. PiCAN2 Duo), set following variables instead:
ENABLE_SPI_BUS = "1"
ENABLE_DUAL_CAN = "1"
ENABLE_DUAL_CAN = "1"
Some modules may require setting the frequency of the crystal oscillator used on the particular board. The frequency is usually marked on the package of the crystal. By default, it is set to 16 MHz. To change that to 8 MHz, the following variable also has to be set:
CAN_OSCILLATOR="8000000"
Configure the interrupt pin to the one connected to the CAN module. By default,
the pins are set to 25 for can0 and 24 for can1. To change them to 12 and 16,
Support for WM8960 based sound cards such as the WM8960 Hi-Fi Sound Card HAT for Raspberry Pi from Waveshare, and ReSpeaker 2 / 4 / 6 Mics Pi HAT from Seeed Studio, can be enabled in `local.conf`
```conf
MACHINE_FEATURES += "wm8960"
```
You may need to adjust volume and toggle switches that are off by default
```bash
amixer -c1 sset 'Headphone',0 80%,80%
amixer -c1 sset 'Speaker',0 80%,80%
amixer -c1 sset 'Left Input Mixer Boost' toggle
amixer -c1 sset 'Left Output Mixer PCM' toggle
amixer -c1 sset 'Right Input Mixer Boost' toggle
amixer -c1 sset 'Right Output Mixer PCM' toggle
```
Audio capture on ReSpeaker 2 / 4 / 6 Mics Pi HAT from Seeed Studio is very noisy.
## Support for RTC devices
The RaspberryPi boards don't feature an RTC module and the machine
configurations provided in this BSP layer have this assumption (until, if at
all, some later boards will come with one).
`rtc` is handled as a `MACHINE_FEATURES` in the context of the build system
which means that if an attached device is provided for which support is needed,
the recommended way forward is to write a new machine configuration based on an
existing one. Check the documentation for
`MACHINE_FEATURES_BACKFILL_CONSIDERED` for how this is disabled for the
relevant machines.
Even when `MACHINE_FEATURES` is tweaked to include the needed `rtc` string,
make sure that your kernel configuration is supporting the attached device and
the device tree is properly tweaked. Also, mind the runtime components that
take advantage of your RTC device. You can do that by checking what is
included/configured in the build system based on the inclusion of `rtc` in
`MACHINE_FEATURES`.
## Raspberry Pi Distro VLC
To enable Raspberry Pi Distro VLC, the `meta-openembedded/meta-multimedia` layer must be
included in your `bblayers.conf`.
VLC does not support HW accelerated video decode through MMAL on a 64-bit OS.
/* Only handle devices that have a valid ofnode */
if (dev_of_valid(dev)) {
/*
--
2.7.4
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.