Commit Graph

4198 Commits

Author SHA1 Message Date
Isaac Hermida 06e84d1b7b bluez5-init: ccimx93: modify script to support suspend/resume
The BT chip for the ccimx93 cannot be turned off, nor can it be re-uploaded.
Therefore, we need to set some conditions to assume that it is going to be
attached correctly. The changes in this script take care of that.
Upon the first attachment, the rate is set to 3M, and future uses will always
be done at this rate. If, for any reason, it was not stopped and the chip is
already attached, do nothing.

https://onedigi.atlassian.net/browse/DEL-8464

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-04-20 17:05:00 +02:00
Isaac Hermida ac1e4633fb bluez5-init: ccimx93: add fix to enable LE
This fix is needed for bluez-5.65 version.
We can drop it when using a newer version.

https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-04-20 17:05:00 +02:00
Isaac Hermida f7943a9fd5 wpa-supplicant: optimize p2p support for ccimx93
The enabled options are mainly for AP mode, which improve the P2P
performance when the P2P node behaves as an AP, it is, as P2P GO.

https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-04-20 17:05:00 +02:00
Isaac Hermida 6e812a569b ccimx93: bluetooth-init: fix how to set btaddr
Use the specific hcitool vendor command to set the BT mac address.
It is a custom vendor command (0x3f), and the field is 0x0022.
The BT address is passed from last octet to first octet.

https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-04-20 17:05:00 +02:00
Isaac Hermida 03c3593050 hostapd: ccimx93: configure AP mode
https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-04-20 17:05:00 +02:00
Isaac Hermida af1dea4644 hostapd: sync defconfig to 2.10 version and enable options
Sync the defconfig to version 2.10.
Additionally, add support for new features, such as:
 * ACS (auto channel selection)
 * 802.11AX (Wi-Fi 6)
 * SAE (WPA3 Personal)
 * SUITEB192 (WPA3 Enterprise 192 bits)

https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-04-20 17:05:00 +02:00
Isaac Hermida 5f5855744d init-ifupdown: ccimx93: add p2p and AP support
https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-04-20 17:05:00 +02:00
Isaac Hermida 1540f58075 networkmanager: customize unmanaged interfaces
https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-04-20 17:05:00 +02:00
Isaac Hermida fb9a3c9814 nxp-wlan-sdk: iw612-sdk: add nxp tools
Add nxp-wlan-sdk repice as a verbatim copy and add our bbappend
for fixing the build.
This recipe include some tools, mainly for RF porpouses.

https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-04-20 17:05:00 +02:00
Gonzalo Ruiz 7b2339869a ccmp1: add BT Test overlay to the default images
Add the overlay required to perform the BLE HCI Raw test to the
linux default images. That way, default images can be used to certify
the product.

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2023-04-20 13:54:54 +02:00
Hector Bujanda c981548c19 ccx: fix some outdated files so implementation matches 'cctags api’ repository
1)
CcxTagControlData struct in CORE/HDD/inc/CcxTagDefs.h had some fields missing compared
with 'cctags api’ which was producing CCX_TAG_DRVR_RSP_ERR_CTRL_SIZE.

2)
Then CCX_TAG_DRVR_RSP_ERR_PACKET_SIZE aroused because following paddings:
	CCX_TAG_MPDU_HEADER_PAD_SIZE = 2
	CCX_TAG_CONTENT_HEADER_PAD_SIZE = 3
where producing wrong alignements and sizes between the 'cctags api’ and the driver.

With changes in this commit, master branch of ‘CCxTagTest’ repository compiled
out of source code gets on well with 'cctags api’ repository and with qca driver in
both dey-2.4 and dey4.0.
Packets in the air match 100% in content in both dey-2.4 and dey4.0.

https://onedigi.atlassian.net/browse/DEL-8446

Signed-off-by: Hector Bujanda <hector.bujanda@digi.com>
2023-04-20 10:59:12 +02:00
Hector Palacios 16117d3cf6 update URL of NXP recipes from codeaurora to Github
Codeaurora was retired on April 2023.
Fix bbappends to point to their new location on Github.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-04-20 10:58:50 +02:00
Gabriel Valcazar 0fcd8906d4 Revert "imx-digi-base: add dummy MULTIUBI_BUILD value to fix Vigiles builds"
An official fix was added to meta-timesys in commit
ae4f6e9854361d4a6d71b6f8b87130268d990b32, so our workaround is no longer needed

This reverts commit 7a77130550.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-04-19 11:19:55 +02:00
Hector Palacios 0e61017da8 libubootenv: add fall-back function to read HWID from nvmem
The HWID is populated on the device tree by the boot loader.
This can be used as a key modifier when encrypting the U-Boot
environment. Some old U-Boot versions however, did not populate
the HWID on the device tree. When updating firmware from an
old version to a new one, the library may not be able to read
the HWID from the DT and then be unable to unencrypt the
environment.

This patch implements a fall-back function to read the HWID
directly from the nvmem node (sysfs). Implementation has been
done for ccimx6 family only, where this case of old U-Boot
can happen.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://onedigi.atlassian.net/browse/DEL-8444
(cherry picked from commit 222a91f213)
2023-04-19 09:39:43 +02:00
Tatiana Leon 8718734b46 ccimx6: ccimx6ul: ccimx8m: ccimx8x: ccimx93: install: only install system A by default, add an option to install B
https://onedigi.atlassian.net/browse/DEL-8232

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-18 17:49:03 +02:00
Gabriel Valcazar 44ad42551a cryptoauthlib: use digi-embedded github mirror
The commit we use to build the cryotpauthlib package is currently not part of
any branches or tags in the original MicrochipTech repo. To make sure the
package can always be built, use our mirror of the repo, which includes an
additional branch for the specific commit.

While at it, move the "nobranch=1" parameter to the GIT_URI variable, since
we're putting all other git parameters there, anyway. Also, remove the "branch"
parameter because it isn't needed in this case.

https://onedigi.atlassian.net/browse/DEL-8015

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-04-17 17:55:36 +02:00
Gabriel Valcazar c9fb56629a cryptoauthlib: use digi-embedded github mirror
The commit we use to build the cryotpauthlib package is currently not part of
any branches or tags in the original MicrochipTech repo. To make sure the
package can always be built, use our mirror of the repo, which includes an
additional branch for the specific commit.

While at it, move the "nobranch=1" parameter to the GIT_URI variable, since
we're putting all other git parameters there, anyway. Also, remove the "branch"
parameter because it isn't needed in this case.

https://onedigi.atlassian.net/browse/DEL-8015

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-04-17 17:51:03 +02:00
Javier Viguera 7581e76560 nativesdk-packagegroup-sdk-host: add requirementes to build optee-os
Building optee-os with a Yocto generated SDK, fails due to those missing
packages.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-04-17 12:37:32 +02:00
Javier Viguera 167678edac python3-pyelftools: allow to build for nativesdk
This is a requirement to build optee-os with a Yocto generated SDK.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-04-17 12:30:26 +02:00
Hector Palacios 222a91f213 libubootenv: add fall-back function to read HWID from nvmem
The HWID is populated on the device tree by the boot loader.
This can be used as a key modifier when encrypting the U-Boot
environment. Some old U-Boot versions however, did not populate
the HWID on the device tree. When updating firmware from an
old version to a new one, the library may not be able to read
the HWID from the DT and then be unable to unencrypt the
environment.

This patch implements a fall-back function to read the HWID
directly from the nvmem node (sysfs). Implementation has been
done for ccimx6 family only, where this case of old U-Boot
can happen.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://onedigi.atlassian.net/browse/DEL-8444
2023-04-17 08:48:52 +02:00
Gabriel Valcazar 7a77130550 imx-digi-base: add dummy MULTIUBI_BUILD value to fix Vigiles builds
Commit 32dd3d59c250f916115b339c29aa4dbfe50a3235 in poky breaks i.MX platform
builds when "vigiles" is inherited. While we wait for a fix in the community,
work around this issue by setting a dummy default value in the MULTIUBI_BUILD
variable.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2023-04-11 17:25:00 +02:00
Hector Bujanda b3bd2014d4 ccx: fix some outdated files so implementation matches 'cctags api’ repository
1)
CcxTagControlData struct in CORE/HDD/inc/CcxTagDefs.h had some fields missing compared
with 'cctags api’ which was producing CCX_TAG_DRVR_RSP_ERR_CTRL_SIZE.

2)
Then CCX_TAG_DRVR_RSP_ERR_PACKET_SIZE aroused because following paddings:
	CCX_TAG_MPDU_HEADER_PAD_SIZE = 2
	CCX_TAG_CONTENT_HEADER_PAD_SIZE = 3
where producing wrong alignements and sizes between the 'cctags api’ and the driver.

With changes in this commit, master branch of ‘CCxTagTest’ repository compiled
out of source code gets on well with 'cctags api’ repository and with qca driver in
both dey-2.4 and dey4.0.
Packets in the air match 100% in content in both dey-2.4 and dey4.0.

https://onedigi.atlassian.net/browse/DEL-8446

Signed-off-by: Hector Bujanda <hector.bujanda@digi.com>
2023-04-11 12:59:52 +02:00
Javier Viguera 951789093f meta-digi-dey: remove dead code (udev-cache)
This was removed from Poky long ago:

https://git.yoctoproject.org/poky/commit/?id=44f550f392e231b7fbd1e29da3f59d6c9dd7f472

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-04-03 18:39:35 +02:00
Javier Viguera 1d793ac4aa dey-image-installer: add USB driver installation script for ccimx93
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-04-03 18:39:35 +02:00
Javier Viguera 0f2f513f8b ccimx93: add more device tree overlays
Second ethernet and MikroE click board overlays.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-04-03 18:39:35 +02:00
Tatiana Leon 3912f76f59 ccimx8m: ccmp1: cc6ul: cloudconnector: update store certificates in '/etc/ssl/certs'
Cloud Connector configuration file sets:
  * 'edp12.devicecloud.com' as the URL to connect to (this end point uses client
    certificates)
  * '/mnt/data' as the directory to store downloaded certificates, now that
    this is also available in emmc platforms (see
    62d937df42)

This commit:

  * reverts a0842cbcfd to keep
    'edp12.devicecloud.com' URL that uses certificates for ccimx8m platforms.

  * reverts fd94f10c0b since now the cloud connector
    configuration file sets '/mnt/data' as the place to store downloaded
    certificates, so no need to modify it for ccmp1 platforms.

  * It also configures '/etc/ssl/certs' as the certificates directory for cc6ul
    devices. Although by default, these devices are connecting to
    'remotemanager.digi.com' that not uses certificates, we prefer to use an
    existing directory in that setting. See commit
    063a946e7c.

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-03 14:44:35 +02:00
Tatiana Leon dba8dbdab4 dualboot: change the way to determine if device is using nand or emmc
'environment' partition is not available in the ccmp15.

The solution suggested is read the "/proc/mounts" and check if the 'rootfs' is
'ubifs' mounted.

Related to commits 7c07b15370 and
678eaaf0fc4ce74e67682387e3465eb29659bd47

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-03 14:44:35 +02:00
Tatiana Leon eca521f505 dualboot: update-firmware: get current active system not using U-Boot variable
This commit adds a new function to get the active system in a dualboot device
without using 'active_system' U-Boot variable.
This way the script always knows the real active system even when the variable
'active_system' has the value of the next boot active system, for example, after
performing a 'update-firmware --swap-active-system'.

https://onedigi.atlassian.net/browse/DEL-8399

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-03 14:44:35 +02:00
Tatiana Leon ccc4680924 dualboot: update-firmware: new option to swap active system ('--swap-active-system')
This allows to remove the script 'on-the-fly-swap-partition.sh'.

https://onedigi.atlassian.net/browse/DEL-8399

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-03 14:44:35 +02:00
Tatiana Leon 1b17e8f657 dualboot: update-firmware: new script option ('-s')
This option combined with '-a' ('--active') only prints the active block: a or b

The purpose an output to be consumed by other scripts or programs.

https://onedigi.atlassian.net/browse/DEL-8399

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-03 14:44:35 +02:00
Tatiana Leon 556bda6d57 dualboot: update-firmware: update the check of nand or emmc system
Check the second ('/') and third ('ubifs') field of 'rootfs' entry in
'/proc/mounts' as the first one ('rootfs_a' or 'rootfs_b') may be changed by
custormers:

    root@ccmp15-dvk:~# cat /proc/mounts
    ubi0:rootfs_b / ubifs rw,relatime,assert=read-only,ubi=0,vol=5 0 0
    [...]

https://onedigi.atlassian.net/browse/DEL-8399

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-03 14:44:35 +02:00
Tatiana Leon 006138e134 dualboot: update-firmware: rework the script to use functions and avoid repetitions
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-03 14:44:35 +02:00
Tatiana Leon e37d52ebd7 dualboot: update-firmware: add '--no-reboot' option to avoid the reboot of the system
This is required for the firmware update using Digi Remote Manager. The reboot
is commanded by the server, it that does not happen the update process is not
ended for DRM.

https://onedigi.atlassian.net/browse/DEL-8399

Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-03 14:44:35 +02:00
Tatiana Leon d7f9cfb718 dualboot: update-firmware: add long options to the tool usage
Signed-off-by: Tatiana Leon <Tatiana.Leon@digi.com>
2023-04-03 14:44:35 +02:00
Hector Palacios 40d5207400 update URL of NXP recipes from codeaurora to Github
Codeaurora was retired on April 2023.
Fix bbappends to point to their new location on Github.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-04-03 11:53:49 +02:00
Arturo Buzarra b00bddb73f meta-digi-dey: bump distro version to 4.0-r3
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2023-03-31 11:15:31 +02:00
David Escalona 62d937df42 e2fsprogs: extend recipe to format data partition on first boot for block based devices
Signed-off-by: David Escalona <david.escalona@digi.com>
2023-03-27 17:36:32 +02:00
David Escalona bf88deb602 mount_digiparts.sh: add unit running check for systemd devices
For devices running 'systemd', the mount process is done through 'systemd-mount', which
spawns a system unit. Trying to mount the partition again throws an error stating that a
unit with the same name is already running. To avoid it, check if the unit is already
spawned before mounting the partition and, if so, just restart the unit.

Signed-off-by: David Escalona <david.escalona@digi.com>
2023-03-27 17:36:32 +02:00
Isaac Hermida 060e2f4fe1 ccimx93-dvk.conf: include WiFi and BT features support
https://onedigi.atlassian.net/browse/DEL-8346
2023-03-27 16:34:06 +02:00
Isaac Hermida 66fb6e55c1 ccimx93: iw612: add bluetooth support
The bluetooth FW for the IW612 is loaded together with WiFi FW, so there
is not BT FW file as in our other products.
In order to use the BT, it is a requirement to load the WiFi FW, so
ensure that the service is started after the load of the system
modules.

https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-03-27 16:34:06 +02:00
Isaac Hermida 38831535fb ccimx93: iw612: add WiFi support
https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-03-27 16:34:06 +02:00
Isaac Hermida 4200b2f06a add nxp-wlan-sdk and kernel-module-nxp-wlan NXP verbatim copies
add a verbatim copy of those recipes as they are provided by nxp in langdale-6.1.1-1.0.0

https://onedigi.atlassian.net/browse/DEL-8346

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-03-27 12:53:40 +02:00
Hector Palacios a7833a380c README: fix cc6ul supported platforms
- Add missing PNs and order list as per Digi website.
- Remove SBC Express, which is not available for purchase.

Reported-by: Leonid Makhnovskiy <leonid.makhnovskiy@digi.com>
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
(cherry picked from commit 4f1bbf4d2d)
2023-03-23 11:15:35 +01:00
Francisco Gil 800e875397 pulseaudio: keep the PID file in headless system
Without the PIDfile pulseaudio is not reliable.

https://onedigi.atlassian.net/browse/DEL-8429
https://onedigi.atlassian.net/browse/DEL-6795

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-03-23 07:58:18 +01:00
Hector Palacios 4f1bbf4d2d README: fix cc6ul supported platforms
- Add missing PNs and order list as per Digi website.
- Remove SBC Express, which is not available for purchase.

Reported-by: Leonid Makhnovskiy <leonid.makhnovskiy@digi.com>
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2023-03-22 17:11:02 +01:00
Javier Viguera c01c394806 meta-digi: rework distro features configuration
Instead of changing POKY_DEFAULT_DISTRO_FEATURES, do the distro features
configuration directly in the DISTRO_FEATURES variable. Also, add a couple
of variables (MACHINE_DISTRO_FEATURES_ADD/REMOVE) that allow machines
for extra tweaking the distro features.

While on it, clean up some distro features:

  - pulseaudio: already added by DISTRO_FEATURES_BACKFILL
  - bluez5, splashscreen, initrd, gplv3: not used (dead code)

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-03-22 11:46:53 +01:00
Isaac Hermida c30b947408 kernel-module-qualcomm: add script to load the wlan module
In rare cases, the wlan module may fail to load. In this scenario, forcing the
MMC driver to rebind the interface resolves the issue, making the WLAN module
load more reliably.
This only affects to modules where the qca chip is connected through the
MMC interface.

https://onedigi.atlassian.net/browse/DEL-8361

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2023-03-22 10:46:19 +01:00
Javier Viguera d76bb3ac2c machine: restrict udev extra rules to systemd or udevd device managers
There are other device managers (e.g. mdev) that do not understand those
udev rules, so do not install them unconditionally.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2023-03-21 17:05:15 +01:00
Francisco Gil 1560472f66 pulseaudio: keep the PID file in headless system
Without the PIDfile pulseaudio is not reliable.

https://onedigi.atlassian.net/browse/DEL-8429
https://onedigi.atlassian.net/browse/DEL-6795

Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
2023-03-21 15:14:53 +01:00
Hector Palacios 661f59967c trustfence: add function to generate a PKI tree if it doesn't exist
The stand-alone signing script 'trustfence-sign-artifact.sh' checks
if a valid PKI tree exists (by checking the existance of four SRK
files) and if they don't, it calls trustfence-gen-pki.sh (which is
a wrapper over different generators (for HAB or AHAB) to create one.

Recipes such as 'dualboot' or 'recovery-initramfs' may need to call
openssl functions over the PKI tree. These recipes do not currently
generate the PKI tree; they expect it to be already in place.
This might not be the case if the trustfence-sign-artifact.sh script
has not been called yet.

Originally, a fake dependency on virtual/kernel recipe was made to
force it, but it doesn't quite work since the calling only happens
on deploy() while regular DEPENDS doesn't wait for this task.
If the PKI does not exist, a recipe that requires the PKI tree will
fail.

The solution is to create a function on the trustfence.bbclass that
allows any recipe to check for the existance of a PKI tree and
generate it if it doesn't exist. This is repeated inside the
trustfence-sign-artifact.sh, but it needs to be in both places
because this script must work stand-alone.

The generation of the PKI tree takes some seconds so this commit
adds a lock dir to prevent race conditions when called from
different recipes.

It also removes the fake dependency on virtual/kernel and adds a
dependency on trustfence-cst-native (which is the recipe that
provides the PKI generation tool).

Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://onedigi.atlassian.net/browse/DEL-8430
(cherry picked from commit 6a8bf7afff)
2023-03-21 13:36:58 +01:00