Commit Graph

310 Commits

Author SHA1 Message Date
Arturo Buzarra 1d68514a50 packagegroup-dey-core: add pciutils package for platforms that support PCI
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2019-07-16 16:38:28 +02:00
Hector Palacios 65ec66b659 dey-image-installer: loop on new BOOTABLE_ARTIFACTS variable
The artifacts that must go inside the installer ZIP image are not anymore
the ones in UBOOT_CONFIG. For CC8X, the artifacts are combinations of
UBOOT_CONFIG and RAM_CONFIGS.

This commit adds a function 'get_bootable_artifacts()' to boot-artifacts class
to generate a new variable BOOTABLE_ARTIFACTS with the list of bootable
artifacts DEY produces.

The installer recipe can then simply iterate on that list, rather than
needing to calculate it by itself.

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

https://jira.digi.com/browse/DEL-6641
2019-07-12 12:49:03 +02:00
Hector Palacios e50f6c3e91 u-boot: fix the use of boot image recipe and prefix
A variable called IMAGE_BOOTLOADER was being used without distinction for
referring to two different things:
 - the recipe that builds the bootable artifacts
 - the prefix of those artifacts

The value of this is "u-boot" for most platforms, but "imx-boot" for the
CC8X based platforms.

The name of the variable is misleading, so this commit splits it into two:
 - BOOTLOADER_IMAGE_RECIPE, to refer to the recipe
 - UBOOT_PREFIX, to refer to the prefix of the bootable artifact

With the separation, the variable UBOOT_SYMLINK becomes a generic formed
one, so it is moved to digi-defaults.inc.

While on it, fix the image_types_digi.bbclass which was not making use of
the original variable to establish all the dependencies.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2019-07-12 11:04:47 +02:00
Hector Palacios c4bea6edd8 imx-boot: create symlink to default bootable U-Boot artifact
Similar to the way the u-boot recipe does, create a symlink to the default
bootable artifact.
Since they are overwritten on every loop, this requires that the default
RAM configuration is set the last on the list of RAM_CONFIGS (same
convention than the one used on UBOOT_CONFIGS).

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

https://jira.digi.com/browse/DEL-6641
2019-07-09 11:21:58 +02:00
Hector Palacios 82594d510a digi-sc-firmware: add support for all RAM memory configurations
RAM memory configurations are given by:
- RAM frequency
- RAM size
- RAM bus width

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

https://jira.digi.com/browse/DEL-6641
2019-07-08 11:58:42 +02:00
Hector Palacios ddfbb2652a ccimx8x: add DualX variants device trees and rename the QuadXPlus
With the arrival of DualX variants, the devicetree files have changed
their names to include the soc type (qxp, dx).

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

https://jira.digi.com/browse/DEL-6641
2019-07-02 11:58:05 +02:00
Hector Palacios f48767f723 ccimx8x: add support for U-Boot variant with 512MB of LPDDR4
Signed-off-by: Hector Palacios <hector.palacios@digi.com>

https://jira.digi.com/browse/DEL-6641
2019-07-02 11:58:05 +02:00
Gabriel Valcazar d2688a89ec linux: use proper version numbers for platforms still using v4.9
Even though our ccimx6 and ccimx6qp images were using Linux v4.9 sources
correctly, they were using the same recipe as our images with Linux v4.14.
Technically, both recipes are identical (save for the branch name), but each
Linux version should have its own recipe.

Also, make sure that ccimx6/ccimx6qp images are built with our version of the
linux-imx-headers recipe instead of the one in meta-freescale.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-06-06 14:14:27 +02:00
Gabriel Valcazar 6c38b38f95 Revert "imx-digi-base: disable GCCPIE by default"
Removing the flag breaks the build of the freetype package and possibly others.
Leave the flag as it is for now.

This reverts commit e4cbeafa1c.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-04-15 13:04:50 +02:00
Gabriel Valcazar e4cbeafa1c imx-digi-base: disable GCCPIE by default
This option configures gcc to use PIE by default, which is good from a security
standpoint. However, the files necessary to compile applications statically
with PIE support are missing from glibc, causing builds to fail. Said files
were removed on purpose in poky commit 472c86127ab57759588e5ec53c75ebb52667f094
because static PIE binaries apparently don't work very well when using gcc 7.x.

Instead of enabling static PIE support for glibc and risking runtime failures,
revert to our old situation and remove default PIE suport for gcc.

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-04-15 11:22:45 +02:00
Hector Palacios 2778713ef8 xbee: added new recipe for XBee hardware initialization
This recipe adds a script and a related systemd service that
configures two GPIOs (user defined, or else platform-defaults) as
output and sets them to the appropriate value for initializing the
XBee socket:
 - XBEE_SLEEP_RQ: is set low, for running the XBee
 - XBEE_RESET_N: is set low and then high, to reset the XBee

The service triggers on the condition that the UART TTY device node
pointed to by variable XBEE_UART exists.

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

https://jira.digi.com/browse/DEL-6366
2019-04-11 10:48:54 +02:00
Alex Gonzalez 9d063498c8 use-mainline-bsp: Use meta-freescale-3rdparty support
Remove the linux-v4.20 recipe and use the linux-fslc kernel recipe in
meta-freescale-3rdparty instead.

Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
2019-04-04 12:52:34 +02:00
Gonzalo Ruiz 4803dba689 dtc: use version 1.4.5 only on platforms that build U-Boot 2017.X
This version is only required to build U-Boot 2017.X, so select it as preferred
version only on those platforms that build this U-Boot (CC6 and CC6UL).

https://jira.digi.com/browse/DUB-881

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2019-03-21 15:44:54 +01:00
Gonzalo Ruiz 5f302013f9 u-boot-dey: add support for U-Boot v2018.03
This adds support for U-Boot v2018.03 for CC8X platforms only.

Create 'digi-u-boot.inc' with the common definitions for both v2017.03
and v2018.03.

https://jira.digi.com/browse/DUB-881

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2019-03-21 15:44:54 +01:00
Hector Palacios eafa8684a3 imx-gpu-viv: remove GPU driver kernel module and dependencies
The driver now builds directly from the kernel source and the
fixes are already included in the kernel tree so there is no need
to build the module externally.

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

https://jira.digi.com/browse/DEL-6460
(cherry picked from commit a0990a7e1dcd03af239efb620b83b7dee126484e)
2019-02-26 10:21:30 +01:00
Gabriel Valcazar 2d2f9fcbb0 ccimx8x: explicitly set VIRTUAL-RUNTIME_initsctiprs to "initscripts"
In Yocto 2.6, this variable is null whenever systemd is enabled. Explicitly set
this variable to keep some necessary scripts in /etc/init.d.

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-02-18 18:01:57 +01:00
Gabriel Valcazar 97e762fe9f ccimx8x: enable systemd by default
Also, remove sysvinit and add pam, which is needed by weston+systemd.

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2019-02-18 18:01:57 +01:00
Arturo Buzarra 3716f50825 thud migration: remove cryptoauth-openssl-engine from machine configuration
cryptoauth-openssl-engine is not compatible with OpenSSL v1.1.x, until
it will be supported, we disable it.

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

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2019-02-06 09:51:51 +01:00
Arturo Buzarra 3980c84605 ccimx8x: move Atmel CryptoAuth library and engine to SOM file
The cryptochip is a device included in the SOM, it is not
platform dependant.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2019-02-06 09:51:51 +01:00
Arturo Buzarra d5ba4e54e9 thud migration: update meta-digi LAYERSERIES_COMPAT to indicate support with "thud" release
https://jira.digi.com/browse/DEL-6412

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2019-02-04 14:59:46 +01:00
Hector Palacios 500d9d0481 machine: add firmware-imx-sdma for i.MX6 and i.MX8 platforms
The SDMA firmware does no longer live inside the kernel tree.
It must now be installed on the rootfs.

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

https://jira.digi.com/browse/DEL-6420
2019-01-30 11:23:06 +01:00
Arturo Buzarra bb59ed593e bsp: update firmware-imx recipe to version 8.0
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2019-01-16 11:31:00 +01:00
Arturo Buzarra 5eb88b8c5d sumo migration: meta-digi: replace the deprecated base_conditional function
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2019-01-11 13:26:44 +01:00
Arturo Buzarra 771bc38b4f sumo migration: meta-digi: add LAYERSERIES_COMPAT to indicate support with "sumo" core release
In 92c49b9b1a16dfd35444db8143bd4cae4cda70cc was introduced the LAYERSERIES_CORENAMES
and LAYERSERIES_COMPAT_<layername> with the intention of allowing layers
to indicate which versions of the core project they're compatible with.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2019-01-11 13:26:44 +01:00
Alex Gonzalez 402a222d64 meta-digi-arm: linux: use-mainline-bsp: Update to v4.20.y
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
2019-01-10 10:04:19 +01:00
Gabriel Valcazar 352dc3dd38 ccimx8x: add VPU encoder and decoder firmware
https://jira.digi.com/browse/DEL-6158

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2018-11-14 17:03:41 +01:00
Gabriel Valcazar 7f076d951b ccimx8x: modify BOOTLOADER_SEEK value for step B0 of the silicon
This breaks support for step A0 of the i.MX8X die.

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2018-11-14 17:03:41 +01:00
Arturo Buzarra b3c05fa5c5 meta-digi-arm: add support for ConnectCore 8X SBC Pro platform
https://jira.digi.com/browse/DEL-6205

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2018-10-15 09:10:04 +02:00
Alex Gonzalez ea46a81642 meta-digi-arm: use-mainline-bsp: Use community maintained gstreamer1.0
plugin

This is the same gstreamer used by meta-freescale.

Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
2018-10-09 14:57:59 +02:00
Alex Gonzalez 6a95035b3c meta-digi-arm: ccimx6ul: use-mainline-bsp: Remove imx-alsa-plugins
This package does not build with mainline kernels

Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
2018-10-09 14:57:59 +02:00
Alex Gonzalez 2eaade486f meta-digi-arm: ccimx6ul: Add support to build mainline BSP
Just add the following to the conf/local.conf file:

MACHINEOVERRIDES .= ":use-mainline-bsp"

The defconfig is the mainline imx_v6_v7_defconfig.

Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
2018-10-09 14:57:59 +02:00
Hector Palacios da13b50f42 ccimx8_sbc_express: add device tree -id129
This is the same than the default -wb variant.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2018-09-14 12:31:38 +02:00
Gabriel Valcazar ec7eded4cb ccimx8x: override SDIMG_BOOTLOADER instead of UBOOT_SYMLINK
Since we were modifying UBOOT_SYMLINK for the ccimx8x, we were generating
u-boot symlinks with imx-boot names. This also caused the imx-boot recipe to
fail during compilation, because it couldn't find the old UBOOT_SYMLINK that
we replaced.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2018-09-05 16:12:03 +02:00
Gabriel Valcazar ea48787676 ccimx8x: set bootloader variables for sdcard image creation
Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2018-09-04 18:29:02 +02:00
Gabriel Valcazar 20f9486f9a imx-digi-base: sync our machine overrides with NXP's
Some overrides that were missing (imxgpu, imxdpublit) are needed for certain
packages to build.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2018-08-17 17:56:14 +02:00
Gabriel Valcazar 5fda306e36 ccimx8x: add xwayland support
Also add gtk3+ and clutter demos that depend on wayland since they are also
included in NXP's images.

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2018-08-14 13:11:25 +02:00
Gabriel Valcazar 96ff70acbd mx8qxp: remove 'imxvpuamphion' from MACHINEOVERRIDES_EXTENDER
This syncs our MACHINEOVERRIDES with NXP's.

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2018-08-14 13:11:25 +02:00
Arturo Buzarra 1abcef9130 ccimx8x.inc: add mca-tools package by default
This package includes applications to:
- Update the MCA firmware
- Manage different MCA settings
- Configure the tamper settings

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
2018-08-01 16:06:03 +02:00
Gabriel Valcazar 77e656cf21 imx-boot: add support for the imx-boot package
This package is the combination of U-Boot and the other i.MX firmware binaries.
In our case, these binaries are: the SCFW, the ATF and the DCD.

The recipe has been ported from the meta-fsl-bsp-release repo, with a couple of
important changes:

    * Support for our platform (based on the mx8qxpa0, which uses A0-specific
      parameters for mkimage and appends the DCD explicitly)
    * Support for multiple UBOOT_CONFIG values (NXP only uses one UBOOT_CONFIG
      string per platform; so the compile, install and deploy functions had to
      be tweaked to build both 1GB and 2GB variants for our platform).

Our DCD patch used in imx-mkimage is also used, since both packages share the
same repo and imx-boot is the one responsible for generating the final,
bootable image.

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

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2018-08-01 11:26:35 +02:00
Hector Palacios fb765741a5 ccimx8x: change kernel to Image.gz and support all SOM variants in DT
U-Boot's 'dboot' command now supports uncompressing Image.gz.
This will be the default kernel image type for the CC8X.

This also changes the names of the device tree artifacts, that must be
updated on the boot script. While on it, add support for all the SOM
variants (wireless and non-wireless).

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2018-07-06 16:20:47 +02:00
Gabriel Valcazar d9b333db05 cryptochip: add cryptochip MACHINE_FEATURE in several recipes
This simplifies some dependencies and makes them more explicit.

Signed-off-by: Gabriel Valcazar <gabriel.valcazar@digi.com>
2018-07-02 10:55:11 +02:00
Gonzalo Ruiz e6cf2811c7 u-boot: add support for CC8X variants on v2017.03
CC8X variants include either 1GB or 2GB DDR. This requires
different defconfig files for each possible DDR size and so,
different U-boot binary files.

https://jira.digi.com/browse/DUB-836

Signed-off-by: Gonzalo Ruiz <Gonzalo.Ruiz@digi.com>
2018-06-22 15:32:03 +02:00
Hector Palacios 07759dc458 ccimx8x: remove imx-alsa-plugins, not supported/needed
On NXP BSP for the iMX8 this is specifically removed.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2018-06-19 10:56:05 +02:00
Hector Palacios 4768643b6e xf86-video-imx-vivante: update recipe to 6.2.4.p1.2
This includes the recipe renaming.

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

https://jira.digi.com/browse/DEL-6029
2018-06-15 11:21:29 +02:00
Hector Palacios 9650efe7e0 firmware-qualcomm: add support for QCA6574 in ConnectCore 8X
The firmware-qualcomm recipe now provides the Bluetooh and WiFi firmware
for QCA6564 (CC6UL, CC6PLUS) and QCA6574 (CC8X).

The Bluetooth firmware is the same for both chip models.

Regarding the Wifi firmware:
- If using the QCA6564, the proprietary firmware is used.
- If using the QCA6574, the recipe allows to select between the proprietary
  or the community driver (via QUALCOMM_WIFI_DRIVER), and will install the
  associated firmware. For the community driver, the firmware files have
  been copied from linux-firmware repo at SHA1 7518922bd5b9, except for
  the file 'board.bin' which needs to be substituted with the proprietary
  one by Qualcomm. Default, is to use the community driver.

The do_install() has been improved for re-using the variables with the list
of files.

The package has been renamed basing on the QCA_MODEL variable which can
be set per platform.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2018-06-12 18:22:09 +02:00
Hector Palacios 5ff8b186ce linux-dey: add support for ConnectCore 8X SBC Express
- This is an AARCH64 platform that requires to build "Image", so let's
  change KERNEL_IMAGETYPE to a weak assignment in imx-digi-base.inc
- The device tree is inside a vendor folder.
- For the moment, this platform builds from a different branch.

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

https://jira.digi.com/browse/DEL-5936
2018-06-01 17:05:00 +02:00
Hector Palacios 55af779bf6 linux-dey: use custom kernel defconfig or else the one in the Linux tree
With this patch a user can provide his own kernel 'defconfig' file by:

 - setting the variable KERNEL_DEFCONFIG to a custom kernel configuration
   file inside the kernel repository.

 - setting the variable KERNEL_DEFCONFIG to a kernel configuration file
   using the full path to the file.

 - clearing the variable KERNEL_DEFCONFIG and providing a kernel
   configuration file in the layer (in this case the file must be named
   'defconfig').

Otherwise the default platform's kernel configuration file will be taken
directly from the Linux source code tree.

Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2018-06-01 17:04:52 +02:00
Hector Palacios 624ace0055 conf: install 'imx-alsa-plugins' depending on alsa distro and machine features
Reference: e3374a33c19686f0e233a7fbccd4d5caa5085936
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
2018-05-31 12:06:59 +02:00
Hector Palacios 8af8817796 u-boot: add support for U-Boot v2017.03
This adds support for U-Boot v2017.03 for all platforms (including CC8X).

For legacy v2015.04:
  - Renames u-boot.inc as a versioned file only for v2015.04.
  - Moves boot/install scripts from versioned folder into non-versioned
    folder (since the scripts remain the same between versions).

For new v2017.03:
  - Re-uses poky's u-boot.inc in rocko for v2017.03
  - DEY recipe re-writes the do_compile for special U-Boot configuration
    required for TrustFence.
  - DEY recipe appends the do_deploy, for U-Boot scripts and deploy of
    special TrustFence artifacts.
  - Adds u-boot-dtb.xxx to UBOOT_CONFIG, required for new U-Boots.
  - Adds CC8X scripts.

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

https://jira.digi.com/browse/DEL-5936
2018-05-31 12:06:37 +02:00
Hector Palacios d981f999f0 meta-digi-arm: add support for ccimx8x SBC Express platform
Add initial support for Digi ConnectCore 8X SBC Express.
- ccimx6qp was used as reference machine from meta-digi.
- imx8qxpmek was used as a reference machine from meta-fsl-bsp-release.

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

https://jira.digi.com/browse/DEL-5936
2018-05-28 18:37:56 +02:00