Commit Graph

566 Commits

Author SHA1 Message Date
Tatiana Leon c1709e4fd3 meta-digi: revert revisions to AUTOREV
Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-28 18:54:25 +02:00
Tatiana Leon 28bc61a089 meta-digi: update revisions for dey-2.2-r1.1
Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-28 18:20:52 +02:00
Tatiana Leon 38740f9a04 trustfence: get bytes from the console passphrase to feed the hash method
In Python 3, feeding string objects into hash method is not supported. Hashes
work on bytes, not on characters.

So we use 'encode()' on the passphrase to get the bytes object.

See:
 * https://docs.python.org/3/howto/pyporting.html#text-versus-binary-data
 * https://docs.python.org/3/library/hashlib.html#module-hashlib

This commit fixes build failures as:

Exception: TypeError: Unicode-objects must be encoded before hashing

https://jira.digi.com/browse/DEL-3984

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-27 10:38:13 +02:00
Sebastian Pastor da6e2198b1 sysinfo: Add information about I/O Expander if present
Print the HW and FW versions for the I/O Expander in the CC6UL SBC platform.

https://jira.digi.com/browse/DEL-3958

Signed-off-by: Sebastian Pastor <sebastian.pastor@digi.com>
2017-03-24 18:42:23 +01:00
Javier Viguera 846f07b7ac meta-digi: change Freescale references to NXP
Mostly in config templates and readme files.

https://jira.digi.com/browse/DEL-3263

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-22 19:58:32 +01:00
Tatiana Leon f9194019b6 recovery init: detach 'update' MTD device from UBI if volume is not found
If the volume is not found, the partition cannot be wiped since it is attached.

Remove 'update' UBI device in:
 * mdev automount script if volume is not found
 * recovery init script before formatting 'update' partition

https://jira.digi.com/browse/DEL-3962

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-22 15:03:24 +01:00
Javier Viguera c7da3e532c meta-digi-dey: disable ICU support for ccimx6ul
ICU support was not included in the rootfs in previous DEY versions
but it's included now through runtime dependences of 'harfbuzz' and
'libical'.

The support is not strictly needed, as ICU is a library for Unicode
support for applications:

http://site.icu-project.org/home

This commit disables ICU support directly for 'harfbuzz' and adds a
patch for 'libical' that allows to disable it. Notice that it's only
disabled for the CC6UL, as the CC6 has no rootfs space problems.

Only the 'libicudata' library is 25MB:

25M  /usr/lib/libicudata.so.57.1

https://jira.digi.com/browse/DEL-3854

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-21 12:10:21 +01:00
Salvador Penalva 1e2ee0589f meta-digi-dey: support for old FWs of Telit HE910
The unlock retries feature from the Telit plugin does not work properly with
old versions of the Telit HE910 firmware. This has been fixed in upstream
commit: fbb607f0c25be3a4bb8692ee48445cf437345b6c

Signed-off-by: Salvador Penalva <salvador.penalva@digi.com>

https://jira.digi.com/browse/DEL-3863
2017-03-20 19:37:54 +01:00
Salvador Penalva 65a17c522c Revert "meta-digi-dey: Add fix to return correct error code."
This reverts commit 3123085e72.

we revert this commit because the patch was already applied on mm-1.6.4

Signed-off-by: Salvador Penalva <salvador.penalva@digi.com>
2017-03-20 19:37:54 +01:00
Mike Engel 3bb5312662 meta-digi-dey: Add mdev support into recovery ramdisk.
This commit adds mdev support into the recovery ramdisk to
mount/unmount storage devices for the firmware up tool.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>

https://jira.digi.com/browse/DEL-3692
2017-03-20 17:08:55 +01:00
Tatiana Leon 5888479c75 cellularifupdown: redirect udhcpc output to '/dev/null'
Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-20 14:47:21 +01:00
Tatiana Leon b0171be93a busybox: disable '-n' udhcpc option from ifupdown
udhcpc's '-n' option means 'Exit if lease is not obtained'.

We want to keep udhcp client alive if lease is not obtained, so when it is
possible, an IP is assigned.

https://jira.digi.com/browse/DEL-3821

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-20 14:47:21 +01:00
Tatiana Leon 113deb8046 meta-digi-arm: launch udhcp client in background to reduce the boot time
udhcpc options added to 'network/interfaces':
 * '-S' to log to syslog too.
 * Redirect the output to '/dev/null' not to show messages of the tool running
   in background (for example when executing 'ifup').
 * '&' to send the udhcp client to background.

https://jira.digi.com/browse/DEL-3821

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-20 14:47:21 +01:00
Alex Gonzalez fd7239da8a meta-digi-dey: Add LDFLAGS to do_compile override
This is to avoid the following QA error:

ERROR: fbtest-1.0-r0 do_package_qa: QA Issue: No GNU_HASH in the elf binary: '/usr/local/ssd/dey-2.2/workspace/ccimx6ulstarter/tmp/work/cortexa7hf-neon-dey-linux-gnueabi/fbtest/1.0-r0/packages-split/fbtest/usr/bin/fbtest' [ldflags]
ERROR: fbtest-1.0-r0 do_package_qa: QA run found fatal errors. Please consider fixing them.
ERROR: fbtest-1.0-r0 do_package_qa: Function failed: do_package_qa
ERROR: Logfile of failure stored in: /usr/local/ssd/dey-2.2/workspace/ccimx6ulstarter/tmp/work/cortexa7hf-neon-dey-linux-gnueabi/fbtest/1.0-r0/temp/log.do_package_qa.6755
ERROR: Task (/usr/local/ssd/dey-2.2/sources/meta-digi/meta-digi-dey/recipes-digi/fbtest/fbtest.bb:do_package_qa) failed with exit code '1'

Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
2017-03-17 19:15:27 +01:00
Alex Gonzalez 7ee00c1ae8 meta-digi-dey: recipes-connectivity: bluez5: Allow to override baudrate
Reviewing the patches while updating the QCA firmware to a new release,
I encountered this patch. On the original PR it says:

"Do not use hcitattach to reconfigure the baudrate but set it directly in the
Bluetooth FW file; this save us from some syncronism problems if we are not
using HW flow control."

Current spins of the module already use hw flow control. Also, not allowing
hciattach to override the baudrate does not seem right to me. It would be
enough with passing a 3M baudrate to hciattach to match the firmware
default.

Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
2017-03-17 19:15:27 +01:00
Mike Engel 3123085e72 meta-digi-dey: Add fix to return correct error code.
This commit fixes an issue with ModemManager to return the correct
error code when an invalid QMI command is send to the modem.

There are two ways to get the UIM/SIM status, one with the "DMS"
service that works on most devices from 2015 and earlier, and a
new way with the "UIM" service that works on many 2015+ devices.
Perhaps the EC21 is new enough that it requires the UIM service,
but ModemManager doesn't recognize the error code that it's returning.
There are two ways to get the UIM/SIM status, one with the "DMS"
service that works on most devices from 2015 and earlier, and a
new way with the "UIM" service that works on many 2015+ devices.
Perhaps the EC21 is new enough that it requires the UIM service,
but ModemManager doesn't recognize the error code that it's returning.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>

https://jira.digi.com/browse/DEL-3748
2017-03-16 12:55:19 +01:00
Mike Engel a48e66c618 meta-digi-dey: Added libqmi patch to DMS version miss match.
This commit fixes an issue with the Quectel EC21/EC25 due to a wrong
reported DMS version which will cause ModemManager not to read the
SIM card.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>

https://jira.digi.com/browse/DEL-3748
2017-03-16 12:55:19 +01:00
Javier Viguera 3877b2a59f suspend: bring bluetooth interface down and up on suspend
https://jira.digi.com/browse/DEL-3858

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-15 19:01:06 +01:00
Javier Viguera 33073a1589 meta-digi-dey: enhance BT interface initialization script
Implement:

* support to start, stop and restart interface
* states machine and retries system to recover from command failures
* overall simplification and code clean-up

https://jira.digi.com/browse/DEL-3858

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-15 19:01:06 +01:00
Sebastian Pastor 294880ddac dey-examples: adc_sample: add I/O Expander ADCs to the available interfaces.
Signed-off-by: Sebastian Pastor <sebastian.pastor@digi.com>
2017-03-15 17:21:05 +01:00
David Escalona 00d22c3d7e swu-sign: do not expand private sign key in TrustFence class
- Trying to set the complete SWU packages signature key in the
  TrustFence class was causing a build error when keys were not
  yet generated. To avoid this, set only the key wildcard in the
  TrustFence class and expand the variable in the SWU packages
  recipes, when keys already exist.

https://jira.digi.com/browse/DEL-3913

Signed-off-by: David Escalona <david.escalona@digi.com>
2017-03-15 12:02:17 +01:00
David Escalona e3ce215f67 recovery-initramfs: do not generate TrustFence keys in this recipe
- Instead of trying to generate the TrustFence keys in this recipe
  when they are not present, depend on the 'virtual/kernel' to
  ensure they are already generated. This solves a concurrency problem
  when two recipes try to generate TrustFence keys at the same time.

https://jira.digi.com/browse/DEL-3913

Signed-off-by: David Escalona <david.escalona@digi.com>
2017-03-15 12:02:17 +01:00
Tatiana Leon f510a438df trustfence-initramfs: do not boot non-encrypted rootfs if encryption is enabled
Allowing to boot a non-encrypted rootfs when encryption is enable is a security
hole: if an attacker can somehow write (offline) to the media, he could flash a
custom unencrypted rootfs and break into the system.

If the system is configured to use encryption, only encrypted rootfs will boot.
Trying to boot a non-encrypted rootfs will fail and power off the device.

https://jira.digi.com/browse/DEL-3829

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 19:19:33 +01:00
Tatiana Leon d441f8401e trustfence-initramfs: remove support for encrypted rootfs installation
The recovery ramdisk already contains functionality for encrypted rootfs
installation. The goal is to centralize all this functionality in the recovery
ramdisk.

https://jira.digi.com/browse/DEL-3829

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 19:19:33 +01:00
Tatiana Leon c4bd0534e2 recovery-utils: add support to set the rootfs encryption key
Internal recovery-utils.git SHA1: 283f6e0768c0

https://jira.digi.com/browse/DEL-3857

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 18:01:02 +01:00
Tatiana Leon d7da8794f1 recovery init: add rngd to increase the quantity of entropy
Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 17:39:09 +01:00
Tatiana Leon 00d30ee9a0 recovery init: cc6ul: set rootfs enc flag when setting a new key
For CC6UL, when setting a new key, an "enc" flag must be added to the rootfs in
the "mtdparts" U-Boot variable.

After that a reboot is needed, so the recovery command must be modified to
remove the encryption key and proceed with the rest of commands in the next
boot.

When updating the firmware, a format of the rootfs partition is always
performed, independently if a new encryption key has just been configured.

In case only the encryption key is being configured, we also need to reboot to
format the rootfs properly.

https://jira.digi.com/browse/DEL-3685

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 17:39:09 +01:00
Tatiana Leon 3cb44334c6 swu-images: cc6ul: add pre-install script to remove enc flag
For CC6UL, when not using rootfs encryption, the "enc" flag must be removed from
the "mtdparts" U-Boot variable.

https://jira.digi.com/browse/DEL-3685

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 17:39:09 +01:00
Tatiana Leon 0a64ff89e4 swu-images: cc6: add pre-install script to open the virtual dev
For CC6, when using rootfs encryption, the encrypted device must be opened
before trying to update.

https://jira.digi.com/browse/DEL-3664
https://jira.digi.com/browse/DEL-3665

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 17:39:09 +01:00
Tatiana Leon 96d7211a71 recovery init: format rootfs partition (block devices) when setting a new key
https://jira.digi.com/browse/DEL-3277

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 17:39:09 +01:00
Tatiana Leon 4085bc8904 recovery init: allow several operations at once (update, key, wipe)
Allow to perform several recovery operations at the same time and set the right
order for them:
 1. New encrypted key
 2. Firmware update
 3. Wipe update partition

https://jira.digi.com/browse/DEL-3277
https://jira.digi.com/browse/DEL-3685

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 17:39:09 +01:00
Tatiana Leon 976d79db9c swupdate: define variables for flash paths and volume names
Software update recipes ('core-image-base-swu' and 'dey-image-qt-swu') are able
to set default or customized values for:
 * In the CC6, the proper path for:
    * linux partition (default to '/dev/mmcblk0p1')
    * rootfs partition (default to '/dev/mmcblk0p3' if no encrypted, always
      '/dev/mapper/cryptroot' otherwise)
 * In the CC6UL, the proper volume name for
    * linux partition (default to 'linux')
    * rootfs partition (default to 'rootfs')

https://jira.digi.com/browse/DEL-3666
https://jira.digi.com/browse/DEL-3686

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-14 17:39:09 +01:00
Mike Engel b180a3e0b1 meta-digi-dey: Added check if wlan1 interface already exist.
This commit verifies that the wlan1 interface is not already created
and will skip creating the virtual interface if it already exist.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>

https://jira.digi.com/browse/DEL-3917
2017-03-14 13:20:10 +01:00
Javier Viguera 54bf7a0059 meta-digi-dey: fix bluetooth interface initialization
With the upgrade to Morty, there is a new bootscript that is provided
by Poky. This bootscript is just launching the generic bluetooth daemon,
but it's not doing any hardware initialization.

The fix is to split the hardware initialization to a different
bootscript 'bluetooth-init' and launch it also on boot.

https://jira.digi.com/browse/DEL-3855

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-13 11:20:13 +01:00
Tatiana Leon 4b6b4ecc5f dey-examples: cloudconnector: use Remote Manager references instead of Device Cloud
https://jira.digi.com/browse/DEL-3683
https://jira.digi.com/browse/DEL-3793

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-03-10 21:49:40 +01:00
Mike Engel f8237f6c7a meta-digi-dey: add libmbim runtime dependency
If you try to use libmbim (the API is used at least by mbim-network,
mbimcli and ModemManager applications) you get the following error:

 ModemManager: Error converting string: Conversion from character
 set 'utf-8' to 'utf-16le' is not supported

In order to solve this we need to integrate glibc gconv UTF16le library
in the build (and its dependencies).

Signed-off-by: Mike Engel Mike.Engel@digi.com

https://jira.digi.com/browse/DEL-3830
2017-03-10 16:24:45 +01:00
Mike Engel aa0c2fb886 ccimx6ul: Changed concurrent mode setup script.
This commit changes the concurrent mode script to enable always the
AP interface through the wireless device but will warn the use
if the virtual MAC addresses used are the default once.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>

https://jira.digi.com/browse/DEL-3900
2017-03-10 09:44:25 +01:00
Gabriel Valcazar 42ac6ea6c2 busybox: remove libdigi dependency
The flash_eraseall busybox utility is not used in the ccimx6 and ccimx6ul
platforms. Its corresponding patch (and the library it depends on) can be
removed from the busybox recipe.

https://jira.digi.com/browse/DEL-1320

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2017-03-07 17:32:34 +01:00
Mike Engel 19563821d2 ccim6ul_sbc: Add wireless concurrent as default setup
This commit adds the wireless concurrent mode as a default
configuration to the CC6UL machine.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>

https://jira.digi.com/browse/DEL-3818
2017-03-07 17:20:12 +01:00
David Escalona 319576805a swupdate: add sign and hash support to swupdate packages generation
- Enabled signing support while generating the swupdate
  packages for 'core-image-base' and 'dey-image-qt'. The
  signing support is only enabled when 'TUSTFENCE_SIGN=1'
  and requires the recipe to set the private key that will
  be used to generate the signature.
- Enabled hash support while generating the swupdate
  packages for 'core-image-base' and 'dey-image-qt'. The
  hash support requires the sw-description files to include
  a new line for each image and/or file that will be added
  to the update package. The hash is automatically calculated
  and replaced in the sw-description files.

https://jira.digi.com/browse/DEL-3774

Signed-off-by: David Escalona <david.escalona@digi.com>
2017-03-07 17:04:21 +01:00
David Escalona 68430b1297 swupdate: execute swupdate with verification within trustfence images
- While trying to update the system using signed swupdate packages, the
  swupdate binary requires a new parameter (-k) to specify the location
  of the public key that will be used to verify the update package. At
  the moment there is no way to check if a package is signed or not, so
  we asume that the existence of the public key in the recovery initramfs
  is enough to determine that we want to update the system using signed
  packages.

https://jira.digi.com/browse/DEL-3775

Signed-off-by: David Escalona <david.escalona@digi.com>
2017-03-07 17:04:21 +01:00
David Escalona 6362b99205 swupdate: add public key to the recovery initramfs
- The swupdate binary included in the recovery partition when the
  images to build are trustfence enabled performs a verification
  of the swupdate package. For this verification to suceed, it is
  mandatory to provide to the swupdate binary the public key that
  will be used to verify the swupdate package. This public key must be
  included in the recovery initramfs only when 'TRUSTFENCE_SIGN=1'.

https://jira.digi.com/browse/DEL-3772

Signed-off-by: David Escalona <david.escalona@digi.com>
2017-03-07 17:04:21 +01:00
David Escalona 7222c1d5bb swupdate: enable sign/verify support in swupdate when using trustfence
- The 'sign/verify' feature of swupdate can only be enabled/disabled at
  compile time, it cannot be configured at run time.
- The 'sign/verify' defconfig file is only used  when the images to
  build are configured with 'TRUSTFENCE_SIGN=1'
- This change implies that all swupdate packages generated will have a
  hash for the images to install and will be verified. Sign support is
  only enabled for trustfence images.

https://jira.digi.com/browse/DEL-3773

Signed-off-by: David Escalona <david.escalona@digi.com>
2017-03-07 17:04:21 +01:00
David Escalona 2f7b062d46 swupdate: rename swupdate recipe bbappend to append to the 2017.01 version
- In Jethro, swupdate recipe was using 'swupdate_git.bb' as the main recipe to
  build. In morty that recipe has been disabled and the '2017.01' one is used
  instead, so we have to append to this new recipe by renaming our existing one.
- Our bbappend will now point to the same SHA1 that is being used, so we can
  remove the SRCREV.
- The new code already includes the progress client patch, so it has been removed.

Signed-off-by: David Escalona <david.escalona@digi.com>
2017-03-07 17:04:21 +01:00
Alex Gonzalez fe21367ccf meta-digi-dey: hostapd: clean configuration file
There is now a WLAN user guide with configuration examples so there is
no need to pollute the default file with comments.

Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-06 17:37:17 +01:00
Javier Viguera 55ba548d61 trustfence: add 'expand' parameter to getVar calls
Starting with Yocto 2.1, the 'expand' parameter of 'getVar' function is
mandatory. See:

http://www.yoctoproject.org/docs/2.2.1/ref-manual/ref-manual.html#migration-2.1-expand-parameter-to-getvar-and-getvarflag-now-mandatory

This fixes build failures as:

Exception: TypeError: getVar() missing 1 required positional argument: 'expand'

https://jira.digi.com/browse/DEL-3834

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-01 18:06:36 +01:00
Javier Viguera 16815b1b80 dey-image-recovery-initramfs: force image type to 'cpio'
This recipe is expected to create just an initramfs image, so force the
image FSTYPE with a python anonymous function, so there is no way to
change/append/override it from any other configuration file.

This prevents build failures due to circular dependences if for example
you add:

IMAGE_FSTYPES_append = " recovery.vfat"

to your project's local.conf.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-01 16:56:53 +01:00
Javier Viguera 14d3f5e83c packagegroup-core-x11-sato: fix gst-player package name
The package name in Yocto 2.2 has lost the '-bin' suffix.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-01 15:32:11 +01:00
Javier Viguera 05ca6d3c78 packagegroup-dey-gstreamer: fix override for CC6UL
As of DEY-2.0 "mx6" was an override value for CC6, but not for the
CC6UL, so we used it to restrict the packages to be installed only in
the CC6.

Now in DEY-2.2 "mx6" is also a correct override value for the 6UL
family, so correct the override to prevent those gstreamer packages to
be installed in 6UL machines.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-03-01 15:27:51 +01:00
Javier Viguera f74a7b0edf morty migration: update matchbox session startup
https://jira.digi.com/browse/DEL-3451

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-02-28 19:46:03 +01:00