Commit Graph

720 Commits

Author SHA1 Message Date
Mike Engel bba0c0d795 libsoc: Remove platform board.conf files
This commit removes the platform board.conf files from
libsoc.

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

https://jira.digi.com/browse/DEL-5096
2017-10-10 13:15:51 +02:00
Mike Engel a5cfaa921d cellular: Enable IPV6 support.
This commit enables the IPV6 support that is necessary for the
XBee Cellular LTE Cat1 modem.

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

https://jira.digi.com/browse/DEL-4839
2017-10-04 15:48:16 +02:00
Tatiana Leon 7d2a07cf2f dey-image: create an sdk/toolchain dey version file with params to identify it
This commit creates a new file called 'dey-version-${REAL_MULTIMACH_TARGET_SYS}'
(for example, 'dey-version-cortexa7hf-neon-dey-linux-gnueabi') at the same level
as 'version-${REAL_MULTIMACH_TARGET_SYS}',
'site-config-${REAL_MULTIMACH_TARGET_SYS}', and
'environment-setup-${REAL_MULTIMACH_TARGET_SYS}' files.

The file contains the following parameters:
   * Machine. The name of the platform the toolchain was built for (ccimx6sbc,
     ccimx6ulsbc, ccimx6ulstarter).
   * Version: A versioning system for the generated toolchains. Currently is the
     distro version followed by the timestamp on which the current build started.
   * Image: The name of the image that triggered the population of the SDK
     (core-image-base, dey-image-aws, dey-image-qt-${GRAPHICAL_BACKEND})

The purpose of the 'dey-version-*' file is to be parsed by Eclipse so toolchains
can be autodetected.

This file is packaged with the rest of SDK/toolchain resources ('version-*',
'site-config-*', and 'environment-setup-*' files, and 'sysroots' directory)
when creating the SDK tarball and later the installation script.

The 'dey-version-*' file could also be created in a 'meta-environment.bbappend'
appending to the 'create_sdk_files()'. But from this recipe there is no access
to the name of the image that triggers the creation of the SDK (core-image-base,
dey-image-aws, dey-image-qt, etc.).

Currently, we are redefining 'SDK_POSTPROCESS_COMMAND' (from
'poky/meta/classes/populate_sdk_base.bbclass') to insert the generation of the
'dey-version-*' file just before creating the SDK tarball.

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

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-10-03 15:18:52 +02:00
Javier Viguera bfdd5e5bfe dnsmasq: configure package to be used by NetworkManager
NM launches 'dnsmasq' using DBus, so enable DBus support at compile
time. Also remove the symlinks in the different runlevels, so it's not
launched by the included bootscript.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-09-27 13:31:16 +02:00
Javier Viguera 84b38d75b1 networkmanager: enable the use of 'dnsmasq' server
This is needed in the context of network failover, so when one physical
interface is lost, you can still resolve the connectivity-check URL
using the local DNS cache.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-09-27 13:31:16 +02:00
Javier Viguera 9aa7c620aa Revert "networkmanager: connectivity check: set interface for DNS resolution"
The implemented patch fails when NetworkManager uses a local DNS cache
underneath (like 'dnsmasq'). To access the local DNS cache it needs to
use the loopback interface and hardcoding the physical interfaces make
the connectivity check fail.

This reverts commit c9b02d6288.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-09-27 13:31:16 +02:00
Javier Viguera c9b02d6288 networkmanager: connectivity check: set interface for DNS resolution
Use the same interface that it's being checked for the DNS resolution.

This makes connectivity check work in an scenario where the primary
interface has lost connectivity (for example ethernet) but you still
have connectivity through a secondary interface (e.g. wireless).

What happens in that case is that even though you have correct
connectivity in the secondary interface the check fails because it does
not use that secondary interface to resolve the name of the test URL.
The result is that the connectivity check assumes that this secondary
interface is also failing and it penalizes the metrics in the routing
table.

This commit uses libcurl's CURLOPT_DNS_INTERFACE to set the DNS
interface. Notice that this requires 'libcurl' to be compiled with
'--enable-ares'.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-09-20 12:07:45 +02:00
Javier Viguera f64a59ba25 curl: enable 'ares' build time option
This is required to use '--dns-interface' runtime parameter to instruct
'curl' to use a specific interface for DNS resolution.

We need this in the context of the network failover support, where
NetworkManager does the connectivity check, by trying to connect to a
configured URL through the different interfaces available, and for this
check it uses 'libcurl' underneath.

If you try to use this functionality without this build time option
enabled, you get:

curl: (4) A requested feature, protocol or option was not found built-in
in this libcurl due to a build-time decision.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-09-20 12:07:45 +02:00
David Escalona 4320f0574f libsoc: update board configuration files to fix SPI definitions
Signed-off-by: David Escalona <david.escalona@digi.com>
2017-09-15 17:25:33 +02:00
David Escalona c3459a0fdc libsoc: update board configuration files to fix pwm definitions
Signed-off-by: David Escalona <david.escalona@digi.com>
2017-09-07 17:36:36 +02:00
Tatiana Leon 1f7920f7de meta-digi-dey: add libdigiapix package
This is the Digi APIX library.

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-09-06 11:01:26 +02:00
Tatiana Leon ef46270207 libdigiapix: add Digi APIX library recipe
This library will provide a common API to access Digi hardware interfaces and/or
other features.

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

Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
2017-09-06 11:01:26 +02:00
Jose Diaz de Grenu 7ef80dd7ad hostapd: generate unique SSID for SoftAP
If two or more targets are in the same environment, all of them will
broadcast the same SSID, which may be a problem when a client wants
to connect to a specific device.

Use the last bytes of the non-virtual wireless MAC for the name of the
SSID, a random value with no hexadecimal characters is used if the MAC
is not available.
Also drop 'wpa2aes' from the SSID.

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

Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
2017-09-05 16:37:54 +02:00
David Escalona 1daf4d91d4 libsoc: extend libsoc recipe with configuration params and custom board files
https://jira.digi.com/browse/DEL-4816

Signed-off-by: David Escalona <david.escalona@digi.com>
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-09-05 14:18:26 +02:00
Javier Viguera 3f8c5bea06 libsoc: add generic recipe to build from GIT
Also configure DEY to build the GIT version of libsoc.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-09-05 14:18:26 +02:00
Javier Viguera e7adc7fe41 modemmanager: remove unnecessary dbus-glib dependence
ModemManager moved to Glib2 GDBus since some stable releases.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-09-04 14:53:36 +02:00
Jose Diaz de Grenu 2f732624fe wpa-supplicant: add p2p configuration file for cc6
https://jira.digi.com/browse/DEL-4559

Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
2017-08-30 12:34:21 +02:00
Jose Diaz de Grenu 270f890494 recovery-initramfs-init: remove parted dependency
Turns out that the busybox' fdisk applet is also able to parse the GPT
partition tables. This saves around 0.5 MiB of space.

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

Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
2017-08-29 18:15:43 +02:00
Jose Diaz de Grenu e6beba4cb0 init-ifupdown: use wlan1 for the bridging example
wlan1 is the interface used for SoftAP, so use that one instead. This also
matches with the 'Network bridging' chapter of the documentation.

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

Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
2017-08-29 18:12:33 +02:00
Jose Diaz de Grenu d7c8fa4b9a init-ifupdown: fix interfaces order
The bridge example uses the wireless interface and it assumes that it is
initialized, so it must be placed after it.

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

Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
2017-08-29 18:12:33 +02:00
Mike Engel d7889c28db DIGI_EULA: Update Digi EULA file.
Signed-off-by: Mike Engel <Mike.Engel@digi.com>

https://jira.digi.com/browse/DEL-4859
(cherry picked from commit 86000bb0bb)
2017-08-29 12:23:22 +02:00
Javier Viguera 4c5a7fd3f8 packagegroup-dey-qt: rework default installed packages
This only affects the CC6UL, where by default now 'qtsmarthome' is
installed instead of 'qtbase-examples'.

This serves two purposes:

* Remove the 'qtbase-examples' package from the CC6UL to save space.
* Use 'qtsmarthome' as a demo of a QML application running on the CC6UL
  using Qt Quick 2D Renderer.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-10 11:33:46 +02:00
Javier Viguera 64010754d0 qtsmarthome: move desktop launcher from qt5-demo-extrafiles recipe
Instead of having a recipe to add launchers for a bunch of applications
(most of them are not available anymore) move the qtsmarthome launcher
to the recipe that installs the package.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-10 11:32:44 +02:00
Javier Viguera 48ff14dc78 qtsmarthome: fix missing runtime dependence
The demo application uses 'svg' images, so at runtime it depends on
'qtsvg-plugins' package.

Also add a patch to fix a runtime warning:

  Both point size and pixel size set. Using pixel size

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-10 11:32:11 +02:00
Javier Viguera e623c365ff qt: add support for Qt Quick 2D Renderer in the CC6UL
This is an alternative software based renderer for QtQuick2
applications for hardware that doesn't have a GPU.

This is the case of the CC6UL. It does not have a GPU, so the only way
to run QML applications is using this software renderer.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-09 18:31:12 +02:00
Arturo Buzarra 9c5774ed62 bridgeifupdown: fix script to create a bridge with a wireless interface
The supplicant support for a bridge was not being managed,
then the bridge was failing when the softap was configured
with an encryption. With this change we launch a supplicant
instance with the bridge support after checking that the
/etc/network/interfaces contains the required parameters.

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2017-08-07 12:13:44 +02:00
Javier Viguera bb72455cd8 ccardimx28js removal: remove platform reference from bluez4 bootscript
https://jira.digi.com/browse/DEL-4771

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-04 17:38:30 +02:00
Javier Viguera be58e0c849 ccardimx28js removal: simplify dey-examples
https://jira.digi.com/browse/DEL-4771

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-04 17:38:30 +02:00
Javier Viguera 6a2699967c ccardimx28js removal: delete recipes not used by other platforms
https://jira.digi.com/browse/DEL-4771

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-04 17:38:30 +02:00
Isaac Hermida 4bc9e7cbd5 bluez5: port test-discovery and bluezutils.py to work with python3
https://jira.digi.com/browse/DEL-4039

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2017-08-04 10:47:17 +02:00
Javier Viguera 02547c6530 packagegroup-dey-qt: add fonts package
In the past QT package did include some fonts, but not anymore. New
versions of QT do rely on an external font package being installed in
the rootfs.

Without fonts the QT applications just show up in the screen but
obviously with no text at all.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-03 18:54:48 +02:00
Javier Viguera c62d5e1e42 qtbase: optimize libraries for size on CC6UL
This patch makes smaller libQt libraries saving some space in the CC6UL
rootfs.

Libraries size before the patch:

root@ccimx6ulsbc:~# ls -l /usr/lib/libQt*5.7.1
     22448 Aug  /usr/lib/libQt5Concurrent.so.5.7.1
   5347036 Aug  /usr/lib/libQt5Core.so.5.7.1
    508464 Aug  /usr/lib/libQt5DBus.so.5.7.1
   4419712 Aug  /usr/lib/libQt5Gui.so.5.7.1
   1367776 Aug  /usr/lib/libQt5Network.so.5.7.1
    275900 Aug  /usr/lib/libQt5OpenGL.so.5.7.1
    341688 Aug  /usr/lib/libQt5PrintSupport.so.5.7.1
     88628 Aug  /usr/lib/libQt5SerialPort.so.5.7.1
    290960 Aug  /usr/lib/libQt5Sql.so.5.7.1
    212432 Aug  /usr/lib/libQt5Test.so.5.7.1
   5306588 Aug  /usr/lib/libQt5Widgets.so.5.7.1
    894928 Aug  /usr/lib/libQt5XcbQpa.so.5.7.1
    191404 Aug  /usr/lib/libQt5Xml.so.5.7.1

Libraries size after the patch:

root@ccimx6ulsbc:~# ls -l /usr/lib/libQt*5.7.1
     18352 Aug  /usr/lib/libQt5Concurrent.so.5.7.1
   4032380 Aug  /usr/lib/libQt5Core.so.5.7.1
    303684 Aug  /usr/lib/libQt5DBus.so.5.7.1
   2867436 Aug  /usr/lib/libQt5Gui.so.5.7.1
    839428 Aug  /usr/lib/libQt5Network.so.5.7.1
    239044 Aug  /usr/lib/libQt5OpenGL.so.5.7.1
    267976 Aug  /usr/lib/libQt5PrintSupport.so.5.7.1
     59960 Aug  /usr/lib/libQt5SerialPort.so.5.7.1
    172192 Aug  /usr/lib/libQt5Sql.so.5.7.1
    171500 Aug  /usr/lib/libQt5Test.so.5.7.1
   4282740 Aug  /usr/lib/libQt5Widgets.so.5.7.1
    616420 Aug  /usr/lib/libQt5XcbQpa.so.5.7.1
    154556 Aug  /usr/lib/libQt5Xml.so.5.7.1

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-03 18:54:48 +02:00
Javier Viguera fe39b6675c Merge tag 'dey-2.2-r2.2' into dey-2.2/master
Tweaked to maintain some recipes' revisions to AUTOREV instead of the
fixed SHA1s from the tag.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-08-01 17:30:04 +02:00
Javier Viguera 2c4c4dff4a meta-digi: update revisions for dey-2.2-r2.2
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-27 18:10:28 +02:00
Javier Viguera b421fb7995 qualcomm: generalize log function to pass the log level
We need to pass different log levels depending on the message, so they
appear in the console, so generalize the 'log' function.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-27 14:05:29 +02:00
Jose Diaz de Grenu 071339a1d4 networkmanager: disable MAC spoofing for scanning
https://jira.digi.com/browse/DEL-4681

Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
2017-07-27 13:33:45 +02:00
Javier Viguera 2a7bc3717e busybox: disable 'init' for IPK package type support
Busybox's init enabled at build time collide with 'sysvinit' package.
This does not seem a problem when using RPM package manager, but using
IPK instead, the build is broken at image creation time:

Collected errors:
 * check_data_file_clashes: Package sysvinit wants to install file <...>/rcS
        But that file is already provided by package  * busybox

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-27 12:01:42 +02:00
Javier Viguera f83b5fcbe7 busybox: refresh defconfig file for version 1.24
No applet has been enabled or disabled, just the defconfig file has been
refreshed for the current busybox version 1.24.x

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-27 12:01:42 +02:00
Javier Viguera f3c5920667 ppp: remove specific DNS scripts
NetworkManager manages the 'resolv.conf' file globally, so there is no
need for pppd specific scripts for DNS.

These scripts race with NM to set DNS, leading sometimes to a scenario
where you have ethernet as the default gateway, but with DNS only
reachable via cellular.

While on it, also remove not used 'mm_cellular' configuration file.

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-26 13:32:54 +02:00
Javier Viguera 7ae81a4cdb modemmanager: allow to identify Digi XBee Cellular modems
Adding ID_MM_PHYSDEV_UID to the udev rule that manages the XBee Cellular
modems, allows to identify them when using ModemManager CLI.

Before:

~# mmcli -m 0

  -------------------------
  System   |         device: '/sys/devices/platform/soc/2100000.aips-bus/21e8000.serial'
           |        drivers: 'imx-uart'
           |         plugin: 'Telit'
           |   primary port: 'ttymxc1'
           |          ports: 'ttymxc1 (at)'
  -------------------------

After:

~# mmcli -m 0

  -------------------------
  System   |         device: 'Digi XBee Cellular'
           |        drivers: 'imx-uart'
           |         plugin: 'Telit'
           |   primary port: 'ttymxc1'
           |          ports: 'ttymxc1 (at)'
  -------------------------

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-26 12:42:55 +02:00
Javier Viguera 087f147b5d networkmanager: fix detection of slow initialization modems
Some modems (e.g. the XBee Cellular LTE Cat 1) have a long initilization
process and are not available when ModemManager tries to detect them
on boot.

For those modems schedule a rescan a bit later after NetworkManager has
been launched, so they are detected properly.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-26 11:09:28 +02:00
Javier Viguera ae6aa1ee25 meta-digi-dey: cosmetic, add missing newlines at end of file
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-25 18:25:34 +02:00
Jose Diaz de Grenu e7a7138439 networkmanager: check the PPP connection
These values configure the PPP daemon to check that the connection is
still alive (using an echo) and kill itself otherwise. On that event,
NetworkManager takes over and tries to restore the connection.

This is specially useful for modems with only one serial port, because
they are not able to signal the connectivity loss to the host (the only
data channel is used for the network data itself).

https://jira.digi.com/browse/DEL-4653
https://jira.digi.com/browse/DEL-4650

Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
2017-07-25 18:01:48 +02:00
Javier Viguera 4db64ea56d networkmanager: update package to version 1.8.2
Use the 1.8.x stable series, as it has some desired functionality (e.g.
connectivity check) and bug fixes over the default version included in
Yocto.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-25 11:28:54 +02:00
Jose Diaz de Grenu 1224d94de7 cryptoauthlib: change repository name
The name of the repository in Github is fixed, because it is a fork from
the original repository.

Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
2017-07-25 11:17:30 +02:00
Mike Engel e27257c53f meta-digi: Include package required for QT creator target debugging.
This commit includes the Python3-Json package that is required now
by QT creator python scripts when debugging an application with GDB
on the target.

Signed-off-by: Mike Engel <Mike.Engel@digi.com>
2017-07-24 18:05:08 +02:00
Isaac Hermida 2faf4ae7f4 networkmanager: do not manage any p2p interface
For P2P interfaces, some drivers (CC6UL) create auxiliar interfaces based
on the parent one, like p2p-p2p0-0.
This commit adds a p2p* pattern to the list of unmanaged devices so that
NetworkManager doesn't try to manage P2P devices.

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

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2017-07-21 15:43:11 +02:00
Isaac Hermida 28867d77b9 hostapd: remove 802.11d section
After January 01, 2015, the FCC does not allow the use of 802.11d in US.

https://www.ecfr.gov/cgi-bin/text-idx?SID=63ad9e61e7cc924b3199396521a61158&mc=true&tpl=/ecfrbrowse/Title47/47tab_02.tpl
https://apps.fcc.gov/kdb/GetAttachment.html?id=5NjjaXsjV97%2BhlMWvZ1QRw%3D%3D

https://jira.digi.com/browse/DEL-4291
https://jira.digi.com/browse/DEL-4630

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2017-07-20 11:58:31 +02:00
Isaac Hermida 6e2aafd952 networkmanager: adjust compilation options
Adjust the compilation time options to save space.

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

Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
2017-07-20 08:52:55 +02:00
Javier Viguera 1ac992bf52 dey: remove some default distro features
The removed distro features are mostly corner cases, not widely used,
and sometimes conflict with other packages serving the same purposes.

For example:

  * '3g' only adds ofono for cellular support, while we are
    using ModemManager.
  * 'nfc' adds 'neard' the NFC daemon (which at the moment we don't
    support)
  * 'zeroconf' adds 'avahi' package, but we are using NetworkManager
    instead to manage the network interfaces.
  * 'nfs' adds 'rpcbind' server, which is not needed at all to have
    an NFS mounted rootfs.

Needless to say that all those packages can be added to any image
without having the distro features enabled, or if preferred, you can add
the distro features back in the project's local.conf.

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

Signed-off-by: Javier Viguera <javier.viguera@digi.com>
2017-07-19 19:20:58 +02:00