These are clones of 'optee-programmer-uart' and
'optee-programmer-usb' defined in tf-a-stm32mp-config.inc but
do not require to have the STM32MP_DEVICETREE_PROGRAMMER_ENABLE=1
which causes build problems in U-Boot.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://onedigi.atlassian.net/browse/DEL-9483
bootcount utility started by bootcount-init script was inconditionally setting
bootcount to 0 even if the functionality is disabled.
According to documentation, bootcount functionality is only enabled if bootlimit
variable is defined to a value greater than 0 in U-Boot environment.
In platforms like cc6ul, that use MCA NVRAM to store bootcount, this was corrupting
user NVRAM.
Version increased to 1.1.
Signed-off-by: Hector Bujanda <hector.bujanda@digi.com>
Unify all the different bluetooth init scripts.
The service can be started as oneshot instead of forking, as in all cases
the attach command is started daemonized in background.
Regarding the service requirements, just rely on udev so the HW itself
should be detected and ready.
Make it running before the bluetooth service, so the HW Bluetooth device
is fully ready when bluetooth service starts.
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
bluez5-init is a Digi custom recipe to collect the init script
needed to bring up the specific platform bluetooth hardware.
CCMP1s do not require any bluetooth init extra action.
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
The systemd recipe was recently upgraded from v255.13 to v255.17 in poky and
our patches no longer applied correctly. Adapt them to prevent do_patch()
errors.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
We haven't included fbtest in our default images for a long time. Also, its
lone dependency, microwindows, is broken due to an outdated SRC_URI that no
longer exists. Remove both recipes
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This recipe was added 8 years ago in the context of supporting awsiotsdk, back
when there were no community recipes for a v2.X.X version. meta-openembedded
now has recipes for both v3.6.2 and v2.28.9, and our recipe has been outdated
for a while now, so remove it.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Both gstreamer1.0-plugins-good-qt and imx-qtapplications haven't been
officially supported by NXP ever since they migrated to qt6 on i.MX platforms,
and both of them apply only to imxgpu3d platforms. In our case, we only use qt5
in the ccimx6ul, so we don't need these packages at all.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Like in commit 782b20958a, port these recipes from meta-imx even though they
are already available in meta-freescale, just so we can include the
modifications from meta-imx's imx-gpu-viv-6-overrides.inc.
https://onedigi.atlassian.net/browse/DEL-9445
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Since the ConnectCore demo server forks execution to start the demo server
Python script, it may not be fully initialized when the ConnectCore demo
example initializes the UI and attempts to retrieve information from the server
daemon. This commit introduces a delay to ensure the server is ready before
another service, such as the ConnectCore demo example, interacts with it.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This recipe installs the dcmipp-isp-ctrl tool, an application that demonstrates
some of the features of the DCMIPP ISP blocks. It allows configuring
illuminance and auto-exposure to achieve a targeted level by adjusting both the
DCMIPP exposure block and the sensor gain.
This recipes is original from meta-st-openstlinux layer based on
openstlinux-6.6-yocto-scarthgap-mpu-v24.12.05 release.
https://onedigi.atlassian.net/browse/DEL-9486
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit fixes several issues related to the initialization of AI demos when
using CSI cameras (OV5640 and IMX335) with the DCMIPP peripheral.
All configurations have been moved to an additional setup_camera.sh script and
removed from the main demo launcher.
https://onedigi.atlassian.net/browse/DEL-9486
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The BT interface initialization is occasionally failing with the hci0
interface not being fully up.
Adding the retry solves all those initialization failures.
https://onedigi.atlassian.net/browse/DEL-9287
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
This avoids the next warning when builing for STM platforms
WARNING: No recipes in default available for:
meta-digi/meta-digi-arm/recipes-kernel/kernel-modules/kernel-module-nxp-wlan_git.bbappend
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
stai-mpu provides a common ML API for stm32mpu platforms, allowing applications
to use different inference frameworks without changing any code. Its packages
consist of pre-built libraries that are in charge of interfacing with the
three supported frameworks (tflite, onnx and openvx).
While it's possible to install only a subset of these libraries to limit the
supported frameworks on the target device, all libraries are packaged
unconditionally at build-time, pulling in the dependencies of all three
frameworks. In our case, this pulls in onnxruntime dependencies even though we
only install the tflite and openvx packages in our ccmp25 images. This tends to
cause out-of-memory errors when onnxruntime is built at the same time as other
large packages, such as opencv and wpewebkit.
Since most of these dependencies are already present at a higher level in the
x-linux-ai packagegroup recipes, remove them from the stai-mpu recipe and skip
the runtime dependency QA checks to be able to build the packages without their
respective frameworks. In the case of the ccmp25-dvk, this has no effect on the
final image contents, but it prevents onnxruntime from being built for no
reason.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The default ML packagegroup provided by the x-linux-ai layer isn't very
flexible when it comes to including a subset of the packagegroups it provides:
even if you include just one of them, the others will get built anyway, pulling
in several dependencies that aren't even used for the final image's contents.
Also, a lot of the runtime dependencies are duplicated in several of the
packages in the dependency chain, making it confusing to manage dependencies
efficiently.
Create a new packagegroup specifically tailored for our ccmp25 webkit images,
using packagegroup-x-linux-ai as reference, removing any duplicated
dependencies and applying the same changes as the ones we apply in the
reference's .bbappend. At the moment, this packagegroup and the old one are
equivalent, but we can now modify ours while leaving the old one intact in case
anyone wants to use it.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The following TF-A artifacts are deployed to subdirectories of
the image deploydir:
- arm-trusted-firmware/tf-a-<platform>-<bootconfig>.stm32
- arm-trusted-firmware/metadata-<platform>.bin
- fip/fip-<platform>-<bootconfig>.bin
- fip/fip-<platform>-ddr-<bootconfig>.bin
These binaries are not copied to the image deploy dir during
the regular do_deploy(), instead, they are deployed by script
tf_a_sysroot_populate() which is added to SYSROOT_PREPROCESS_FUNCS.
To follow this logic, change the previously wrong do_deploy:append
into a new function and append it also to SYSROOT_PREPROCESS_FUNCS,
so that it is called after the artifacts have really been deployed.
In the existing code, fix the paths and commands, which had some
errors.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://onedigi.atlassian.net/browse/DEL-9461
A recent meta-freescale update broke the firmware-ele-imx recipe by setting
a default SECO_FIRWARE_NAME value containing a SoC revision macro we don't
have access to (IMX_SOC_REV_LOWER). Like we do for the ccimx93, use our SoM's
override to overwrite the meta-freescale value with our own.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This override was recently added to meta-freescale's graphical package recipes
to easily distinguish between i.MX platforms that use the Vivante driver and
those that use the Mali one. Without this change, a lot of these recipes are
broken, so sync with the latest changes in meta-freescale's imx-base.inc file.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
getVar() defaults to expanding by default.
See poky's commit: 2631c375b8a025ee2e4329f6d93900bb7b5dadf7
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
By default, we don't enable wpewebkit's qtwpe config, so the qtbase-native
dependency pulled in automatically via the qt6-cmake bbclass isn't necessary.
Make sure the dependency only gets pulled in when needed.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit synchronizes the nl80211 definitions with Linux kernel v6.6.48 to
prevent a mismatch between the extended features recognized by wpa_supplicant
and to correctly parse the information provided by the Linux driver.
https://onedigi.atlassian.net/browse/DEL-9470
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
We apply a very similar patch to the i.MX fork of weston 12.0.4, but we never
needed this patch for stm32mp platforms because they used to have 10.0.2, which
has wl_shell support. Now that stm32mp platforms use 13.0.1, use the 12.0.4
patch as reference and adapt it so it applies and builds correctly.
This makes it possible to run the LVGL demo on the ccmp25-dvk.
https://onedigi.atlassian.net/browse/DEL-9458
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Currently, this feature prevents the CPU from properly entering the
standby state on the i.MX93.
With the current implementation, the PXP module generates
"pxp-dmaengine-std" interrupts, which prevents the CPU from asserting
the PMIC_STBY_REQ signal.
An ongoing ticket with NXP is addressing this issue.
In the meantime, use the following workaround to resolve the situation.
https://onedigi.atlassian.net/browse/DEL-9356
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
This commit adds a patch to the gcnano-driver-stm32mp recipe to address a
Kernel NULL pointer issue that occurs during uncontrolled shutdown sequences.
This issue causes an unexpected Kernel NULL pointer exception, preventing the
system from powering off.
https://onedigi.atlassian.net/browse/DEL-9449
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit increases the maximum rootfs size to 2.5 GB, aligning it with the
default rootfs partition size of 3 GB. This adjustment allows adding all the
functionality required by the user.
https://onedigi.atlassian.net/browse/DEL-9456
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The IW61x, when enabled as AP or P2P (or bridge with AP), generates udev
triggers that lead the wifi card to fail.
Ignore those events.
The reason of this new behavior is due to poky commit 1e8b49999ad8,
"udev-extraconf: fix network.sh script did not configure hotplugged interfaces"
https://onedigi.atlassian.net/browse/DEL-9465
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
This commit fixes several issues related to the initialization of AI demos when
using a USB camera.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Using the qt5 STM customizations as reference, adapt them to qt6 by changing
filenames and paths when needed and porting the qtbase configuration options
from the v2.1.0 branch of meta-st-x-linux-qt. Make sure that the
cinematicexperience is included in packagegroup-qt6-dey.
For now, leave the STM qt5 support as-is for backwards compatibility.
https://onedigi.atlassian.net/browse/DEL-9462
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
We tested all tarball compression formats supported by poky, and although bz2
has faster (de)compression time, xz is better in terms of compression ratio:
for all of the rootfs tarballs generated for our currently supported
images/platforms (15 at the moment), the xz format saves an average of 30 MiB
per tarball compared to bz2, totalling up to 450 MiB.
No extra dependencies are pulled in, since xz-native is already being pulled in
for all of our image builds, so the only drawback to this change is the
increased compression time (+7.34s on average per tarball).
https://onedigi.atlassian.net/browse/DEL-9459
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
We have these features enabled for our mp1 platforms, and the optee one is
needed in order to pull in the optee-os package to the images/sdk.
https://onedigi.atlassian.net/browse/DEL-9443
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This commit clears the Cortex-M33 applications list to prevent including all
the Cortex-M33 demo applications from the ST layer. In the future, if we have
custom Digi examples, they should be added here.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
.ext4 files are identical to .ext4.gz, but uncompressed. .tar.xz files are the
exact same as .tar.bz2, but compressed with a different format.
Remove these artifacts to reduce storage overhead and to match the rest of our
platforms.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Otherwise, the target will immediately power off as soon as the power button is
pressed, even before letting go of it. This customization is already being made
for ccmp1 platforms, so make it common for all stm32mp platforms.
https://onedigi.atlassian.net/browse/DEL-9190
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Similar to what we did for the target's version of this packagegorup in commit
58cfee7ac7, keep the "essentials" packagegroup and remove the addons. In this
case, the troublesome qt6 package is qtinterfaceframework, which pulls in
several python3 packages including python3-cryptography, which depends on the
rust compiler.
This reduces overall SDK size and rust compiler overhead during the SDK build.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
Both python3-cryptography and python3-pyelftools are needed to compile optee-os
with a Yocto-generated SDK, but we were adding these packages to all i.MX SDKs,
even for platforms that don't use optee. This wouldn't be a problem if it
weren't for the fact that python3-cryptography is implemented in rust, and its
inclusion in the SDKs forces bitbake to generate the rust compiler just for
that package.
Only include these python packages for platforms that use optee.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
The dependency was added in the recipe for adwaita-icon-theme v3.30.1, back in
poky commit 2ad84e129652, because that version of the package required librsvg
to convert SVG files to PNG. In recent versions, this is no longer the case,
and removing the dependency has no effect on the package's contents (they are
identical with or without the dependency).
Since librsvg-native is the only package in our ccimx6ul/x11 images that
depends on rust, remove this dependency to prevent bitbake from generating
the rust compiler, reducing build overhead.
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
This plugin is optional and, in platforms where rust isn't used anywhere else,
it adds a lot of overhead during the build process. Remove the plugin to
prevent said overhead when possible.
Alter gstreamer1.0-plugin-bad's PACKAGECONFIG from a single place so the
change applies globally (imx and stm platforms use different gstreamer recipes
and versions).
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>