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>
* updated in:
https://git.openembedded.org/openembedded-core/commit/?id=45686afe96bb42c24bfd4ab540ea44423a0f57c3
* 0004-Move-the-43xx-firmware-into-lib-firmware.patch didn't apply and needed to be rebased
maybe we should just set FIRMWARE_DIR in rpi builds instead of
changing the default in the source, but I'll leave that to someone
else
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.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>
This patch is based on an analog patch from Christopher Boyd <xpboyd@gmail.com> committed at meta-freescale.
(see 954d7a7d7a)
Signed-off-by: Oliver Lang <quantenkeks@gmail.com>
Add Raspberry Pi pipeline handler and Image
Processing Algorithms.
Work around clang 14/15 build error:
field within 'v4l2_ext_control' is less aligned.
See
https://github.com/kbingham/libcamera/pull/40.
Signed-off-by: Devendra Tewari <devendra.tewari@gmail.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>