The country region is programmed in the OTP bits. Based on that value we need
to load the firmware file for the specific country region.
https://jira.digi.com/browse/DEL-2774
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
We are including two firmware files: one for setting the country to US and the
other one to set it to the World Wide Roaming region (SKU 0060).
https://jira.digi.com/browse/DEL-2774
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
TRUSTFENCE_SIGN can be defined to "0" to explicitly disable uImage sign and
encryption.
https://jira.digi.com/browse/DEL-2803
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
This device tree file corresponds to StarterBoard with ID=129
which corresponds to smart part number CC-WMX6UL-START.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
The correct U-Boot branch to be used with dey-2.0/master is v2015.04/master, as
it contains the latest development changes (just like dey-2.0/master).
This reverts commit 728619a5bc.
After commit b0a766eafc8 in the U-Boot repository, both signed and
encrypted images will be generated. Copy both of them to the deploy folder
https://jira.digi.com/browse/DUB-642
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
This allows to automatically create a secure PKI tree without user
interaction.
https://jira.digi.com/browse/DUB-618
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
NXP Code signing Tool for the High Assurance Boot library is needed for
signing and encrypting different artifacts (U-Boot image, uImage, ...).
As the CST cannot be included in DEY, the user needs to download the
tarball and add it to the recipe folder.
https://jira.digi.com/browse/DUB-618
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
To build the CC6UL boot image, the u-boot and linux images need to be
already deployed. Also the native mtd-utils package needs to be
available in the sysroot.
Make all this dependences explicit for deterministic reproducibility.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
U-Boot environment on the CC6UL NAND is located at partition /dev/mtd1:
- original copy is located at offset 0 in the partition
- redundant copy is located 1 erase block (128K) after the original copy
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-2552
At the moment there is no support for rootfs encryption for the CC6UL,
so there is not a ramdisk in the boot image. But with the initial
addition of TF support, the u-boot boot script was being on-the-fly
updated for TF regardless of the platform, making the CC6UL unable to
boot when TF was enabled.
This commit fixes the problem, by just changing the u-boot boot script
when TF is enabled only for the CC6.
https://jira.digi.com/browse/DEL-2754
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
builds.
When building multiple u-boots they get compiled externally into a
directory named after machine defconfigs.
Once there is a directory with the same name as a defconfig it is not
possible to run the defconfig make target.
Fixes https://jira.digi.com/browse/DEL-2644
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
builds.
When building multiple u-boots they get compiled externally into a
directory named after machine defconfigs.
Once there is a directory with the same name as a defconfig it is not
possible to run the defconfig make target.
This change should be only temporary until it gets upstream.
Fixes https://jira.digi.com/browse/DEL-2644
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
When Trustfence is enabled, this adds a dependence on the TF initramfs,
so it's built and added to the boot image.
It also modifies the u-boot boot script on the fly, to boot correctly
using the Trustfence initramfs.
https://jira.digi.com/browse/DEL-2278
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The external module revision has been upgraded in meta-fsl-arm, thus
refresh the patches so they apply cleanly.
https://jira.digi.com/browse/DEL-2305
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The size of the destination partition (linux) is around 14MiB so the
max-leb-cnt must be reduced compared to the one used for the rootfs
partition.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-2697
This creates a UBIFS file with the kernel, device tree files, and U-Boot
bootscripts generated by Digi Embedded Yocto.
The resulting image can be then programmed into the boot (linux) partition.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-2697
- boot.txt
Sets the device tree filename basing on the SOM variant read from
the HWID and boots from NAND.
- install_linux_fw_sd
Deploys a full system (as generated by Digi Embedded Yocto) from
a FAT formatted micro SD card into the NAND flash.
The u-boot-dey recipe is now fully shared by ccimx6 and ccimx6ul platforms
so we can remove the platform-specific appends.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
The setting of 'bootcmd' in the script was done using single quotes, which
doesn't expand variables. As a consequence the following variables must
be defined again (during the execution of the second part of the script):
- mmcdev
- INSTALL_LINUX_FILENAME
- INSTALL_ROOTFS_FILENAME
This patch changes the single quotes with double quotes, so that these
variables are expanded during the setting of 'bootcmd' with the values
assigned at the begining of the installation script (notice these are
not dynamically generated so there is no risk to expand them).
At the same time we need to escape with a backslash:
- double quotes containing strings
- variables that we don't want to expand (like the return value $?)
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
- Add semi-colons to instructions inside 'setenv' commands
- Remove semi-colons in instructions where they are not needed (for
consistency with the rest of instructions)
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
By default the driver was being compiled with debug messages. Disabled it
but leave the option there so it can be enabled by user.
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
This commit will add the cryptodev module to the CC6UL kernel to use
the CAAM from user space through this device.
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
https://jira.digi.com/browse/DEL-2719
Do not compile the kernel for supporting the static regulatory domain
but force the system to do that by using crda.
https://jira.digi.com/browse/DEL-2539
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
The root filesystem can have installed the busybox modprobe implementation or
the kmod modprobe implementation.
Check the version installed and compound the modprobe arguments.
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Add recipe kernel-module-qualcomm to compile kernel module externally with all
the patches for kernel 4.1.15.
https://jira.digi.com/browse/DEL-2653
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
We compile those modules as built in to avoid a mismatch
between the current kernel version and the wlan.ko module.
https://jira.digi.com/browse/DEL-2653
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
This function is deprecated in favor of bb.utils.contains. The same
change has been done in other layers.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The CC6UL does not support booting from SD card, so it does not make
sense to create a SDCARD image by default.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
There are several possible values for TRUSTFENCE_UBOOT_ENV_DEK:
* Not defined: if the trustfence support is not included.
Should not include the feature.
* 32 characters: when defining a valid key.
Should include the feature.
* "0": when explicetily disabling the feature.
Should not include the feature
* <other>: Invalid value, should trigger the error.
This commits fixes the logic so that 'None' (no defined) is taken as a valid
value.
Signed-off-by: Jose Diaz de Grenu de Pedro <Jose.DiazdeGrenudePedro@digi.com>
https://jira.digi.com/browse/DEL-2603
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Signed-off-by: Jose Diaz de Grenu de Pedro <Jose.DiazdeGrenudePedro@digi.com>
Implement the set of TRUSTFENCE_ macros to configure each secure boot feature
available in U-Boot.
https://jira.digi.com/browse/DUB-570
Signed-off-by: Jose Diaz de Grenu de Pedro <Jose.DiazdeGrenudePedro@digi.com>
This enables the Cryptographic Accelerator and Assurance Module (CAAM).
https://jira.digi.com/browse/DEL-2502
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This daemon (rngd) feeds random data from hardware device to kernel
entropy pool.
https://jira.digi.com/browse/DEL-2501
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This module is the interface between user-space (openssl, gnutls) and
the hardware cryptographic acceleration support (CAAM).
This commit installs the module in the rootfs and configures it so it is
loaded on boot.
https://jira.digi.com/browse/DEL-2501
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This enables the Cryptographic Accelerator and Assurance Module (CAAM).
https://jira.digi.com/browse/DEL-2502
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Adding some early initial support as a copy of ccimx6 files.
https://jira.digi.com/browse/DEL-2529
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Used ccimx6ul_defconfig from v4.1/master repository.
The defconfig file will live under module folder and not specific platform
folder because it will be the same for other ccimx6ul platforms.
https://jira.digi.com/browse/DEL-2381https://jira.digi.com/browse/DEL-2529
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
COMPATIBLE_MACHINE is a regular expression, so we need to update the current
pattern for ccimx6 due to it will also match with ccimx6ul.
Signed-off-by: Isaac Hermida <isaac.hermida@digi.com>
Use LAYERDEPENDS to configure the layer dependences for meta-digi-arm
and meta-digi-dey.
https://jira.digi.com/browse/DEL-1129
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Old versions of u-boot 'v2013.0x' have a bug in the shell's test command
that makes structures like:
if test "${not-existing}" = "0x01"; then ...
if test -z "${not-existing}"; then ...
to fail when the checked variable does not exist.
So implement workarounds in the updater script to overcome this problem.
This is needed because the script may be used in modules with an old
pre-installed u-boot.
https://jira.digi.com/browse/DEL-2231
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The install script allows for an easy deployment of the DEY firmware
artifacts into the eMMC of the ConnectCore 6 by using a micro SD card.
The install script:
- updates U-Boot
- resets the U-Boot environmnet to default values
- formats the User Data partition of the eMMC
- installs the firmware images (linux and rootfs partitions)
- resets/starts the system
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-2192
The canonical symlinks created by poky's U-Boot class in u-boot.inc for
the different U-Boot configs are in the form:
u-boot.imx-<config>
u-boot-<machine>.imx-<config>
These symlinks have the .imx file extension hidden in the middle of the
file name, which looks ugly.
For DEY, remove these unused symlinks and generate new ones in the form:
u-boot-<config>.imx
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-2192
There are different SBC boards IDs each one having a different
device tree file in the form imx6X-ccimx6sbc-idZZZ.dtb, where:
X is the CPU family (q=Quad/Dual, dl=DualLite/Solo).
ZZZ is the board ID number.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-2160
As the plan is to use the same git objects (SHA1) in the internal and
github repos, also remove that internal/external SRCREV infrastructure.
https://jira.digi.com/browse/DEL-2205
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Carrier board version is determined by U-Boot variable $board_id
which will be defined if a board ID has been burned on certain
OTP bits.
Use the value in this variable to create the $fdt_file variable
using the suffix "-id${board_id}" to point to the device tree
file that matches that board ID.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-2160
That's the u-boot configuration used by variants 0x07 and 0x09, which
have been cancelled and are no longer supported by DEY.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
After the merge of the kernel's stability patches, the driver
uses the include for Freescale BSP beyond 3.14.28.
Despite having applied the kernel stability patches and having
a kernel version beyond 3.14.28, we still use Freescale's BSP
for 3.14.28, so let's keep the busfreq include for any 3.14.x
version.
This patch may need to be reverted if the BSP is moved to a
newer one by Freescale.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
ARCH is not a documented variable in yocto, use the documented
TARGET_ARCH instead.
https://jira.digi.com/browse/DEL-2032
Signed-off-by: Jose Diaz de Grenu de Pedro <Jose.DiazdeGrenudePedro@digi.com>
This commit adds the minimum GPU frequency patch to the community
Vivante GPU driver repository.
https://jira.digi.com/browse/DEL-1969
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Now that the MX5 platforms have been removed the only value for
WPA_DRIVER is 'nl80211' (used by Atheros wireless driver), so there is
no need to have a platform specific value.
Just initialize the value in the init-ifupdown recipe with a weak
assignment so it can be override from the project's local.conf.
https://jira.digi.com/browse/DEL-1890https://jira.digi.com/browse/DEL-1969
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
These tools are part of the official FSL gst1.0 plugin. Add then to the
MACHINE_GSTREAMER_1_0_PLUGIN variable so they get added to the rootfs.
https://jira.digi.com/browse/DEL-1890
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
For the moment, disable the built-in GPU kernel driver as there is a
mismatch between the driver version and the user-space GPU libraries.
Use the external module maintained by the community.
https://jira.digi.com/browse/DEL-1890https://jira.digi.com/browse/DEL-1926
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
ERROR: u-boot-dey: md5 data is not matching for file://Licenses/README;md5=0507cd7da8e7ad6d6701926ec9b84c95
ERROR: u-boot-dey: The new md5 checksum is c7383a594871c03da76b3707929d2919
https://jira.digi.com/browse/DEL-1890
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Also remove QT4 phonon patches and qtmediaplayer demo as they depend on
gstreamer-0.10.
https://jira.digi.com/browse/DEL-1890
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This synchronizes the machine configuration files with the latest
changes in meta-fsl-arm for yocto 2.0
https://jira.digi.com/browse/DEL-1890
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
ccimx51js and ccimx53js are not supported in this version of DEY.
Support for those platforms is in previous versions of DEY.
https://jira.digi.com/browse/DEL-1890
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
That commit disables CONFIG_FIRMWARE_IN_KERNEL which is needed by IMX
SDMA driver and maybe other drivers.
An example of functionality failing without that enabled is the audio
over HDMI.
While on it configure the atheros driver as module. Otherwise the kernel
tries to load the firmware from user-space before the rootfs being
mounted, giving error messages on boot:
ath6kl: No "atheros,board-id" property on wireless node.
ath6kl: Failed to get board file ath6k/AR6003/hw2.1.1/bdata.bin (-2), trying to find default board file.
ath6kl: Failed to get default board file ath6k/AR6003/hw2.1.1/bdata.SD31.bin: -2
ath6kl: Failed to init ath6kl core
ath6kl_sdio: probe of mmc3:0001:1 failed with error -2
https://jira.digi.com/browse/DEL-1858
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This is an atheros proprietary package that contains the athtestcmd and
wmiconfig applications.
Neither of them are currently used.
https://jira.digi.com/browse/DEL-1878
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Disable firmware loading from user-space (udev) as the kernel is able to
load the firmware directly.
https://jira.digi.com/browse/DEL-1858
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Split the ATH6KL firmware files to a different recipe and package so
they can be used regardless of what driver we are using (the external
module or the upstream driver).
Reuse the 'firmware-atheros' recipe which was creating a package with
bluetooth firmware, to create the package with wireless firmware as
well.
Also remove 'ccimx6' as compatible machine for the external atheros
module, as the module does not even compile with the kernel version we
are using (3.14).
https://jira.digi.com/browse/DEL-1858
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Which wireless module to use belongs more to the machine config files in
the BSP layer, than to the generic wireless packagegroup.
https://jira.digi.com/browse/DEL-1858
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This synchronizes the machine configuration files with the latest
changes in meta-fsl-arm for yocto 1.8
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
There is only one u-boot supported for each platform, so there is no
need to explicitly set the u-boot preferred version.
As a result it was needed to rework the nvram recipe which was using the
removed PREFERRED_VERSION_u-boot-dey variable.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
* Move kernel configuration fragments to 2.6.35 recipe (that's the only
kernel version using them)
* Move compile-time dependences to common include linux-dey.inc
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
There is only one kernel supported for each platform, so there is no
need to explicitly set the kernel preferred version.
Also:
* Remove IS_KERNEL_2X variable which is no longer needed.
* Simplify jenkins build script, now that we do not need to build two
kernel versions for ccardimx28.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Instead of creating a new recipe for u-boot fw-utils (fw_printenv) just
bbappend the recipe in Poky.
https://jira.digi.com/browse/DEL-1829
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
* Merge u-boot-dey-rev_2015.04.inc into the recipe. There is no need to
split the recipe, as there is no other recipe using this u-boot code.
* Update uboot configurations to the new format '_defconfig'. Also add
the new 2GB variant.
* Remove PREFERRED_VERSION_u-boot-dey for CC6, as there is only one
version available for this platform.
https://jira.digi.com/browse/DEL-1829
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
https://jira.digi.com/browse/DEL-1734
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
(cherry picked from commit 35a78b13f72963205dc1ae1e05ee851ca6cc4f28)
This is a Consumer quad-core 1.2GHz, 4GB eMMC, 2GB DDR3, -20/+85C variant
with bluetooth and wireless, no kinetis.
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Linux 3.10 is still available via project's local.conf.
PREFERRED_VERSION_linux-dey = "3.10"
KERNEL_DEVICETREE = "..."
https://jira.digi.com/browse/DEL-1748
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Platform defconfig corresponds to sha1 'e1506ff' in the kernel.
At this point linux-3.10 continues to be the default, some device-tree
files were renamed and the external atheros module does not compile with
linux-3.14, so to use this kernel with dey-1.8, following lines are
needed in the project's local.conf:
PREFERRED_VERSION_linux-dey = "3.14"
KERNEL_DEVICETREE = " \
imx6dl-ccimx6sbc-wb.dtb \
imx6dl-ccimx6sbc-w.dtb \
imx6q-ccimx6sbc.dtb \
imx6q-ccimx6sbc-wb.dtb \
imx6q-ccimx6sbc-wb-ldo-bypass.dtb \
imx6q-ccimx6sbc-w.dtb \
"
MACHINE_FEATURES_remove = "wifi"
https://jira.digi.com/browse/DEL-1748
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Now each platform is only supported in one kernel version, so there is
no need to have multiple alsa config files per linux kernel version.
https://jira.digi.com/browse/DEL-1747
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The 'resize2fs' command we use to resize the filesystem on first boot
has been moved from standard 'e2fsprogs' package to its own
'e2fsprogs-resize2fs', so this is the one we need to include now.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Also remove kernel configuration fragments for kernel 3.10. This is not
needed for 3.10 as all the configuration is done via device-trees.
https://jira.digi.com/browse/DEL-1695
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
(cherry picked from commit b0031915f1c7f3eeba680161827e78bbac9eebb4)
This is a regression introduced in a74363c. The MOD_VARIANT variable was
not correctly set because in kernel 2.6.35 there is no device-tree
support.
The fix is to get the module variant from the sysfs as a fallback for
old kernels.
https://jira.digi.com/browse/DEL-1694
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
(cherry picked from commit 6357d71152c38c4713fc534b78b6c2993b201aa8)
The following section configures the Audio Data Path to Voice Over UART.
//Audio - Audio main config
[H:S]0041
[H:S]0004
[H:A]01 00 00 00
The syntax is explained in the AR3002 2.2 Tag definition 1.0 document from
Qualcomm/Atheros.
Other audio sections are removed as they are not being used.
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Adapt u-boot bootscript after latest changes in 'mmcdev' variable
semantics. Now the boot media device is stored in 'mmcbootdev' variable.
Also set the device tree filename depending on the hardware variant.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Support new memory chips for 'ccardimx28js'.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
(cherry picked from commit b7d108c35f6a26a78a4fbab399fd2c0878976a67)
Some CC6 variants have wireless but not bluetooth. Those variants need a
different calibration file.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
(cherry picked from commit a74363cf4a9b239edf9d628f84fe7e88002c0f5c)
Add post-installation script that runs on first boot to reconfigure the
u-boot environment depending on the media (EMMC,SD) the target is
booting from.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
(cherry picked from commit 8486d120355d80ea8ad5864596c8486a1d3c0db2)
This is needed in the context of CC6 variants 0x7 and 0x9 (EMMC-less).
Changes:
* Do not use 'meta-fsl-arm' image generation class: removed include and
override SDCARD generation function
* Use same VFAT boot image for EMMC and SD card. The u-boot bootscript
has been adapted to be able to boot Linux from both SD and EMMC.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
(cherry picked from commit 8b8456b8fd90facd92dfc87632effa582ca60475)
This will allow in following commit to use the same VFAT boot image for
EMMC and SD. Until now we were creating different boot images for EMMC
and SD card images.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
(cherry picked from commit 13e9ec7608d42430c2a01a728d030752a71f7948)
Use Yocto's UBOOT_CONFIG new functionality to select the u-boot
configuration to build.
https://jira.digi.com/browse/DEL-1584
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Remove the current DEY variants support and framework for CC6 because in
following commits we will add support for all *hardware* variants in
just one set of DEY images for CC6.
https://jira.digi.com/browse/DEL-1569
Signed-off-by: Javier Viguera <javier.viguera@digi.com>