picamera uses the legacy MMAL camera stack, which Raspberry Pi documents
as deprecated and unsupported since Bullseye, with Picamera2 on libcamera
as its replacement [1][2]. libcamera is available through the
multimedia-layer dynamic layer.
The recipe also fetches over SSH and RDEPENDS on python3-colorzero from
meta-python while living outside dynamic-layers, which breaks world
without meta-python (yocto-check-layer test_machine_world).
picamera-libs only provides picamera's firmware libraries.
[1] https://www.raspberrypi.com/documentation/computers/camera_software.html
[2] https://github.com/raspberrypi/picamera2
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
omxplayer is deprecated upstream in favour of VLC and relies on the legacy
OMX/MMAL userland stack. It also depends on libssh and libpcre from meta-oe
while living outside dynamic-layers, which breaks world on 32-bit machines
without meta-oe (yocto-check-layer test_machine_world).
Use rpidistro-ffmpeg or GStreamer with the default vc4 stack instead.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
Without systemd, bthelper runs from udev when hci0 appears, before
bluetoothd starts. It brings the interface up with hciconfig, which
powers the adapter without the kernel's power-on initialisation: that
runs only when the adapter is powered through the management interface,
and it is where the SMP channels are registered and Secure Simple
Pairing is enabled. bthelper's delayed "bluetoothctl power off; power
on" is meant to recover from this, but bluetoothd isn't running yet, so
the adapter ignores LE pairing requests after every boot, and bluetoothd
logs "Failed to set privacy: Rejected (0x0b)", until the Bluetooth stack
is restarted.
Upstream bthelper now takes the interface down again once it is done,
so bluetoothd powers the adapter on when it starts, and powers it on
through bluetoothd when that is already running:
https://github.com/RPi-Distro/pi-bluetooth/pull/39. The same symptom is
reported on Raspberry Pi OS in
https://github.com/RPi-Distro/pi-bluetooth/issues/35.
Refresh the hciconfig path patch to cover the new hciconfig call.
Signed-off-by: devgianlu <altomanigianluca@gmail.com>
pseudo on oe-core master now wraps open_tree_attr(), which needs
struct mount_attr from the system headers. Ubuntu 22.04 (glibc 2.35)
doesn't provide it, so pseudo-native fails to build:
error: conflicting types for 'real_open_tree_attr'
Move the builder to Ubuntu 26.04.
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
ENABLE_DWC2_HOST was not checked against the other DWC2 modes, so
enabling it with ENABLE_DWC2_PERIPHERAL or ENABLE_DWC2_OTG resulted in
conflicting dr_mode overlays in config.txt. Enabling both PERIPHERAL
and OTG resulted in no overlay at all.
Fail the build when more than one mode is enabled.
Fixes#1590
Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
meta-qt5 and meta-openembedded are not actively being used in the
default builds, and are displaying some warnings because they are being
included. Specifically, LICENSE errors in meta-qt5. Given they are
unnecessary, remove them to avoid the noise.
Signed-off-by: Jon Mason <jon.mason@arm.com>
Refactor the existing kas configuration by splitting it into a shared
base.yml and a set of per-machine include files. This allows for easier
usage and potential CI use cases.
Also, change the readme to reflect the new changes.
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add the relevant QB_ variables sufficient to get the QEMU raspi1ap model
running with runqemu.
Unfortunately, it doesn't fully boot to shell, and seems to hang trying
to find boot media (for both SD and USB boot devices).
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add the relevant QB_ variables sufficient to get the QEMU raspi1ap model
running with runqemu.
Unfortunately, it doesn't fully boot to shell, and seems to hang around
bluetooth and video inits.
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add the relevant QB_ variables sufficient to get the QEMU raspi0 model
running with runqemu. The dwc_otg.fiq_fsm_enable setting is necessary
to get USB devices (both disk and net) working. Without this, boot
hangs. The initcall_blacklist=bcm2835_pm_driver_init is needed to
workaround other boot issues. Seems like the PM HW emulation isn't
present in the QEMU model.
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add the relevant QB_ variables sufficient to get the QEMU raspi1ap model
running with runqemu. The dwc_otg.fiq_fsm_enable setting is necessary
to get USB devices (both disk and net) working. Without this, boot
hangs. The initcall_blacklist=bcm2835_pm_driver_init is needed to
workaround other boot issues. Seems like the PM HW emulation isn't
present in the QEMU model.
Adding the QB_ fields, etc to raspberrypi.conf, is adding support to
raspberrypi-cm, which doesn't have an emulated board, and adding some of
the wrong fields to raspberrypi0. So, remove the include and put the
contents in the relevant files.
Signed-off-by: Jon Mason <jon.mason@arm.com>
Add support for USB networking and change to USB storage for the boot
device. This requires adding in a workaround of
"dwc_otg.fiq_fsm_enable=0" to prevent a hang during boot. Booting from
a USB devices prevents and issues with "power of 2" for emulated SD
cards and seems to be more reliable. Also, add in the early console
help with future debugging.
Also, adding in init-ifupdown file to automatically get an IP address on
the USB network interface. This is the same file currently in OE Core,
only with the USB interface being automatically brought up and given a
dynamic address. This will help when testimage support is added.
Signed-off-by: Jon Mason <jon.mason@arm.com>
Since OE Core commit bba243e1d18b954578afcdb3c727d8f687187ee8
(4 December 2023) changed how parselogs ignores works, this code has
been broken. Since it wasn't actually doing any extra checking, there
is no need to add back anything to replace it.
Signed-off-by: Jon Mason <jon.mason@arm.com>
99-com.rules assigns I2C, SPI, and GPIO devices to the i2c, spi, and
gpio groups, but the recipe does not create them. This causes udev to
warn about unknown groups at boot and prevents the intended ownership.
Create the three system groups when udev-rules-rpi is installed.
Fixes: #1311
Signed-off-by: Keisuke Tsukuda <tkdkei@outlook.jp>
hifiberry-adc, hifiberry-adc8x and hifiberry-dac8x cannot be selected at
all - naming one in config.txt gives a card that never appears and no error
to go with it.
hifiberry-studio-dac8x and hifiberry-studio-dac8x-pro are left out on
purpose. They were added to the kernel in
https://github.com/raspberrypi/linux/commit/ba7ae2c94ff9ace5d9df63a3b0ea4a1a99f06b29
and are absent from the kernel the 6.6 recipe pins, and this list is shared
by every kernel recipe the layer ships, so adding them would break a 6.6
build.
Verified with PREFERRED_VERSION_linux-raspberrypi = "6.6.%": the three
overlays added here compile, while adding hifiberry-studio-dac8x on top
fails do_compile with "No rule to make target
'arch/arm/boot/dts/overlays/hifiberry-studio-dac8x.dtbo'".
Signed-off-by: Johan Davidsson <johan.et.davidsson@gmail.com>
Upgrade to release 9.2.0:
- Update lgpio chip selection to work with more than 1 digit
- Add PlatformDetect dependency update workflow
- Update Blinka to pyproject.toml
- Fix generic Linux SPI write_readinto slice
- Add BeaglePlay (AM625X) board support
- QCM6490 (Particle Tachyon): auto-detect gpiochip for
f100000.pinctrl
- Ensure libgpiod resources are cleaned up on exit
- Add helpful message when lgpio is not installed on Raspberry Pi
- Remove Python 3.13 version cap on lgpio dependency
License-Update: File modified, no change of the license
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Add recipe for release 0.2.2.0:
- Changes forced by the adoption of a different timestamp clock
in gpiochip API 2.
- The gpiochip changes broke the operation of GPIO debounce and
watchdogs.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Upgrade to release 3.89.1:
- Fix BeagleBone ID Lookup for BeaglePlay on newest image
From release 3.89.0:
- Move XU4 detection above hardware field check
- Fix chip detection failure on Alpine Linux and other
non-standard distros
- Bump max-module-lines from 1000 to 2000
- Fix Orange Pi detection on non-Armbian systems (Debian)
- Fix PocketBeagle 2 support: correct DT compatible string and
black formatting
- Update Read the Docs configuration for latest Ubuntu and Python
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Upgrade to release 1.12.1:
- Document alarm date placeholders
From release 1.12.0:
- Add register_struct and register_bits fix
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Inherit ptest-python-pytest. The tests require I2C and are supposed
to be run against a ADS1x15 I2C analog-to-digital converter (ADC).
Show a warning if ENABLE_I2C has not been set to "1" during the
installation of the tests.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Replace UBOOT_ARCH with oe.kernel.map_uboot_arch(d) because the
variable has been dropped and all OE-Core usages are now
independent of kernel-arch, following the change in oe-core with
git commit 7e8523f3c16efb29657effd732a88e939eb0cf84.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Replace & with AND in the LICENSE of the affected recipes.
Fixes:
WARNING: LICENSE is using an old syntax and should be upgraded
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Resolve license warnings regarding the old syntax by updating to
the new identifier LicenseRef-Firmware-cypress-rpidistro.
Fixes:
WARNING: bluez-firmware-rpidistro: LICENSE is using an old syntax
and should be upgraded to: "LicenseRef-Firmware-cypress-rpidistro"
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Replace Broadcom-RPi with the new syntax LicenseRef-Broadcom-RPi.
Fixes:
WARNING: LICENSE is using an old syntax and should be upgraded to:
"LicenseRef-Broadcom-RPi"
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Resolve license warnings regarding the old syntax by updating to
the new identifiers: LicenseRef-binary-redist-Cypress-rpidistro
and LicenseRef-Synaptics-rpidistro.
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Switch the default linux-raspberrypi to 6.18.
Pin raspberrypi-armv7 to 6.12 for both linux-raspberrypi and
linux-raspberrypi-v7, since bcm2711_defconfig was dropped from
arch/arm/configs/ in 6.18 and 32-bit builds fail do_kernel_metadata.
arm64 machines stay on 6.18.
Signed-off-by: Ayoub Zaki <ayoub.zaki@embetrix.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Adds a recipe for the rpi-6.18.y branch of the raspberrypi/linux
tree alongside the existing 6.1, 6.6 and 6.12 recipes.
Note that 6.18 is not yet considered stable on Raspberry Pi OS:
upstream has not cut a stable_* tag against this series and users
are still reporting regressions on the Raspberry Pi forums. The
default kernel is therefore intentionally left at 6.12 in
conf/machine/include/rpi-default-versions.inc; opt in by setting
PREFERRED_VERSION_linux-raspberrypi to "6.18.%".
https://github.com/raspberrypi/linux/tree/rpi-6.18.y
Signed-off-by: Paolo Barbolini <paolo.barbolini@m4ss.net>
For upstream yocto mirrors the git protocol was disabled lately.
Appended 'protocol=https' in corresponding SRC_URIs to fixes following
error:
ERROR: ExpansionError during parsing [...]/meta-raspberrypi/recipes-kernel/linux/linux-raspberrypi-dev.bb
bb.data_smart.ExpansionError: [...] \
ls-remote git://git.yoctoproject.org/yocto-kernel-cache failed with exit code 128, output:
fatal: unable to connect to git.yoctoproject.org:
git.yoctoproject.org[0: 104.18.0.115]: errno=Connection timed out
git.yoctoproject.org[1: 104.18.1.115]: errno=Connection timed out
git.yoctoproject.org[2: 2606:4700::6812:73]: errno=Network is unreachable
git.yoctoproject.org[3: 2606:4700::6812:173]: errno=Network is unreachable
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: Michael Weiß <michael.weiss@aisec.fraunhofer.de>
https://github.com/agherzan/meta-raspberrypi/pull/1584 was first change
specific for wrynose (other than CI change), drop whinlatter to avoid
someone accidentally using master branch with older weston-14 and
getting crashes.
Separate whinlatter branch was now created.
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
The init configuration is usually taken care of by setting INIT_MANAGER
and systemd is the default since:
https://git.openembedded.org/openembedded-core/commit/?id=0b4061c5d50261f826d0edb4b478d2d305274b7c
so none of this should be needed, hopefully it will fix CI runs which currently fail with:
https://github.com/agherzan/meta-raspberrypi/actions/runs/23234236947/job/67698405693
ERROR: Nothing PROVIDES 'systemd' (but /tmp/tmp.aSbUL7oQb7/openembedded-core/meta/recipes-core/psplash/psplash_git.bb DEPENDS on or otherwise requires it)
systemd was skipped: conflicting distro feature 'sysvinit' (in DISTRO_FEATURES)
NOTE: Runtime target 'psplash' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['psplash', 'systemd']
ERROR: Required build target 'rpi-test-image' has no buildable providers.
Missing or unbuildable dependency chain was: ['rpi-test-image', 'psplash', 'systemd']
Summary: There was 1 WARNING message.
Summary: There were 2 ERROR messages, returning a non-zero exit code.
But I don't see where sysvinit would be getting into DISTRO_FEATURES here.
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>