As per Yocto 2.4, do_image_<type>[depends] has replaced IMAGE_DEPENDS_<type>.
The previous trick to propagate *boot* dependencies from *boot.[vfat|ubifs]*
is no longer needed.
https://jira.digi.com/browse/DEL-5518
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
When parsing the recipe, a warning is shown because the tarball is only found
in the downloads folder. However this is expected as it cannot be distributed.
As a workaround, add the tarball to the SRC_URI variable only when Trustfence
is active. That way the warning is not shown in all other cases.
This was incorrectly removed in commit 14fc51147f.
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
U-Boot has been able to boot kernel zImage for a long time so make this
the default kernel image.
For the CC6 we still want to use uImage for compatibility reasons.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-5237
Prevents loading the spidev module at boot time to avoid
the undesired warning message from driver.
https://jira.digi.com/browse/DEL-4748
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit re-adds the imx-gpu-g2d recipe that was removed
from the imx-gpu-viv v6 driver.
https://jira.digi.com/browse/DEL-5234
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit adds the recipe to update the GPU driver
to the latest version.
https://jira.digi.com/browse/DEL-5234
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit adds the recipe to update the Vivante GPU
driver to the latest version and refresh patches.
https://jira.digi.com/browse/DEL-5082
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit adds the defconfig for the platform ccimx6qpsbc
to the kernel v4.9 and modifies the recipe.
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit modifies different recipes to support the new platform
ccimx6qpsbc and adapt it to maintain the support to ccimx6sbc.
https://jira.digi.com/browse/DEL-5082
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This commit includes ccimx6qpsbc platform in the recipe and adds
U-Boot scripts for deploying and booting the system.
https://jira.digi.com/browse/DEL-5082
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Add initial support for Digi's ConnectCore 6 QuadPlus SBC.
The ccimx6qp platform has the QCA6564 chip instead of the
other Atheros chips and included the Atmel ECC508A cryptographic
chip.
https://jira.digi.com/browse/DEL-5082
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
The patch is needed to match the API kernel changes. This fixes:
zc.c:68:44: error: passing argument 7 of 'get_user_pages_remote' from incompatible pointer type [-Werror=incompatible-pointer-types]
(unsigned long)addr, pgcount, write, 0, pg, NULL);
^~
In file included from zc.c:28:0:
kernel-source/include/linux/mm.h:1276:6: note: expected 'struct vm_area_struct **' but argument is of type 'struct page **'
long get_user_pages_remote(struct task_struct *tsk, struct mm_struct *mm,
^~~~~~~~~~~~~~~~~~~~~
zc.c:63:8: error: too many arguments to function 'get_user_pages_remote'
ret = get_user_pages_remote(
^~~~~~~~~~~~~~~~~~~~~
In file included from zc.c:28:0:
kernel-source/include/linux/mm.h:1276:6: note: declared here
long get_user_pages_remote(struct task_struct *tsk, struct mm_struct *mm,
^~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
https://jira.digi.com/browse/DEL-5081
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
CC6 PS_ASIC_class_1.pst MD5SUM be8766069eed652449682d9006dd6ecd
https://jira.digi.com/browse/DEL-5057
Signed-off-by: Francisco Gil <francisco.gilmartinez@digi.com>
The current value only allows partitions of up to 8 MiB, which is not
enough for the 0x04 variant (which uses a linux partition of 24 MiB by
default).
This new value allows for up to 32 MiB (assuming 128 KiB erase block size).
Also add comments explaining the -c value and maximum partition sizes
supported.
https://jira.digi.com/browse/DEL-4971
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
After the 'ccardimx28js' platform removal, these variables and machine
features are not used anymore, so remove them.
https://jira.digi.com/browse/DEL-4771
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
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>
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>
At the point this script is running from udev (the system log is not yet
available), so to avoid debug messages from qualcomm wireless module
reduce the console log level.
https://jira.digi.com/browse/DEL-4570
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
This is required to be able to use the whole RootFS partition which is
512 MiB in the 0x04 CC6UL SOM variant.
The old value only allowed to manage partitions of up to 256 MiB, this new
value allows for up to 1 GiB (assuming 128 KiB erase block size).
https://jira.digi.com/browse/DEL-4567
Signed-off-by: Jose Diaz de Grenu <Jose.DiazdeGrenu@digi.com>
At the point this script is run (from udev) the system log is not yet
available, so use the kernel log buffer instead.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Use the same udev script that loads the qualcomm wireless module to
create the 'wlan1' virtual interface.
https://jira.digi.com/browse/DEL-4453
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Udev comes with a bunch of generic rules for the hardware. One of them:
/lib/udev/rules.d/80-drivers.rules
is able to load the qualcomm wireless module.
At the same time our new rule is needed, so it prepares the firmware
before the module is loaded.
Both rules running collide with following error message:
udevd[181]: '/etc/udev/scripts/qualcomm.sh' [184] terminated by signal 1 (Hangup)
So to fix this, we rename the specific rule so it's parsed later, and
then we use the hard assignation '=' instead of '+=' to override the
values that come from the previous parsed rule.
Also clean-up a bit the 'qualcomm.sh' script and the modprobe file,
given that now we know the standard drivers rule won't run for this
interface.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
NetworkManager is not able to detect and manage the wireless interface
until is actually created, so let udev load the kernel module and create
the interface on boot.
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
The new fw-4.bin (v3.4.0.236) with md5sum e2fc33daba2c35fe2c4f62492a44f8b6
was used to pass RED (Radio Equipment Directive) certification on the CC6
module.
https://jira.digi.com/browse/DEL-4512
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
A mechanism was introduced in U-Boot to dynamically locate the environment
copies within a NAND partition, skipping bad blocks and making full use of
the partition blocks.
To trigger this mechanism in Linux tools (fw_printenv/fw_setenv) the
configuration file /etc/fw_env.config must have both copies entries
pointing to the same offset.
This commit substitutes the hardcoded configuration file for CC6UL with a
stub and generates one on an RPM post-script basing on:
- Supplied DEY variables (with default values per platform):
- UBOOT_ENV_OFFSET: starting offset of the environment within the
partition.
- UBOOT_ENV_SIZE: size of each copy of the environment.
- UBOOT_ENV_RANGE: size in the partition that the environment copies may
occupy, starting from UBOOT_ENV_OFFSET. If undefined, the whole
partition is used.
- Calculated values:
- NAND Erase block size
- Number of blocks available for the environment copies
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-4256
This library adds support to use the Atmel CryptoAuth device available
in the ConnectCore 6UL.
https://jira.digi.com/browse/DEL-4284
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
This is a Consumer dual-core 1GHz, 4GB eMMC, 1GB DDR3, 0/+70C variant
without bluetooth, no wireless, no kinetis.
https://jira.digi.com/browse/DEL-4280
Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Since 30c253e108 the module is compiled from a repository which already
includes the patches, so we can remove them from DEY.
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
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>
This commit adds support to read the GPU reserved memory
from the DT.
Signed-off-by: Mike Engel <Mike.Engel@digi.com>
https://jira.digi.com/browse/DEL-3868
These new US and world board data files contain new settings updated
with the latest certification results including the 2 dB power reduction
from DVT.
md5sums:
a5635e39aaaa220094e0d07f7a4f4567 bdwlan30_US.bin
cabebad84a6afc1c2a7d795d31dda480 bdwlan30_World.bin
https://jira.digi.com/browse/CC6UL-740
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Variant 0x04 has wireless and must select the '-wb' device tree.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-4100
Add support to build U-Boot for variants with 1GB DDR3.
Add support in U-Boot install firmware script to select the
U-Boot artifact to use basing on variant.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DEL-3970
The firmware configuration and the driver configuration are part of the
driver repository. Stop duplicating the content in meta-digi so they
are updated with the driver itself.
https://jira.digi.com/browse/DEL-4021
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
- The IVT table address inside the kernel image must be aligned at 0x1000
bytes. The calculation of this offset was not working when the kernel image
size was multiple of 0x1000 bytes. In this case the IVT table was moved an
extra offset of 0x1000 bytes, causing U-Boot to fail to validate the image
as the IVT table was not in the expected location.
This fix uses the same offset calculation algorithm as U-Boot, ensuring both,
the sign script and U-Boot will look for the IVT at the same address.
https://jira.digi.com/browse/DEL-3972
Signed-off-by: David Escalona <david.escalona@digi.com>
These new US and world board data files contain new settings updated
with the latest certification results.
md5sums:
386475740ad0e41f4387eebdf2931c16 bdwlan30_US.bin
d349985b51353f430183f1bf9f6d90d1 bdwlan30_World.bin
https://jira.digi.com/browse/DEL-3950
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
This will allow to get the package from a premirror in case it is not
already downloaded in the DL_DIR.
https://jira.digi.com/browse/DEL-3051
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
This allows to override the console using the local.conf.
https://jira.digi.com/browse/DEL-2856
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
The main purpose is to improve our kits usability. This way users do not need
to follow the steps in the documentation to change from static to DHCP IPs.
https://jira.digi.com/browse/DEL-3821
Signed-off-by: Tatiana Leon <tatiana.leon@digi.com>
The amount of patches to this driver maintained in meta-digi is
substantial, so we are moving to a git repository release model.
https://jira.digi.com/browse/DEL-3710
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
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>
- Instead of using a different boot script when booting from linux
and from recovery, merge them into one script that checks the
boot source.
https://jira.digi.com/browse/DEL-3836
Signed-off-by: David Escalona <david.escalona@digi.com>
Seems that this is needed for the bluetooth interface to work. Without
this options, the interface is not able to initialice (hciattach command
fails).
https://jira.digi.com/browse/DEL-3855
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
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
Loading firmware by userspace helpers has been deprecated from device
managers (like udev, eudev, etc). Firmware loading is supposed to be
performed by the kernel.
This fixes the loading of an external kernel module (qualcomm wlan.ko)
that was failing to load because of a missing firmware file.
In that case the kernel was requesting the firmware load from userspace:
ar6k_wlan mmc0:0001:1: Direct firmware load for qsetup30.bin failed with error -2
ar6k_wlan mmc0:0001:1: Falling back to user helper
The device manager we are using in DEY-2.2 (eudev) does not support
firmware loading and is not giving an error return value to the kernel
either, so at one point the kernel throws an oops:
Hardware name: Freescale i.MX6 Ultralite (Device Tree)
task: 88228000 ti: 88cbe000 task.ti: 88cbe000
PC is at 0x7f183758
LR is at request_firmware+0x38/0x40
pc : [<7f183758>] lr : [<802f80bc>] psr: 600f0013
sp : 88cbfdb8 ip : 00000000 fp : 88644c00
r10: 0000dac0 r9 : 88cbfefc r8 : 0000000c
r7 : 00007d08 r6 : 88cbfde4 r5 : 88644ea2 r4 : 00000005
r3 : 88cbfde4 r2 : 00000080 r1 : 00000000 r0 : fffffff5
and the wireless driver is not loaded.
https://jira.digi.com/browse/DEL-3856
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Patches added in 'meta-swupdate' (backported from U-Boot) broke our
layer. We also had those patches, so remove them and make sure the
rest or our patches are applied after the ones from 'meta-swupdate'
by using an anonymous python function instead of appending to the
SRC_URI variable.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The way the kernel artifacts are generated has change as of Yocto 2.2.
Also some of the variables (e.g. KERNEL_IMAGE_SYMLINK_NAME) have changed
their default values.
Thus the trustfence_sign function needed some tweaks to continue working
properly.
https://jira.digi.com/browse/DEL-3834
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
KERNEL_IMAGE_BASE_NAME and KERNEL_IMAGE_SYMLINK_NAME default values have
changed in Yocto 2.2, so now this appended command is failing because
it's translated to:
ln -sf -4.1-r0.2-ccimx6ulstarter-20170216122147.bin ccimx6ulstarter
which fails with:
ln: invalid option -- '4'
Just remove it, because we don't need that symlink anymore. New U-Boot's
'zimage' and 'uimage' environment variables have default values ending in
'.bin' which is what Yocto provides.
https://jira.digi.com/browse/DEL-3451
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
* Transfer dependences from base types 'boot' and 'recovery' to the
actual image types 'boot.vfat', 'boot.ubifs', 'recovery.vfat' and
'recovery.ubifs' using IMAGE_TYPEDEP variable.
* Now the images are created in a per image recipe deploy directory
(IMGDEPLOYDIR), so use that instead of the final DEPLOY_DIR_IMAGE.
* Remove manual creation of symbolic links and let Poky create them. For
this, we need to remove the default 'rootfs' image suffix using the
imgsuffix variable flag for the corresponding do_image_* functions.
https://jira.digi.com/browse/DEL-3451
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
As of Yocto 2.2, the way to generate images has changed. Now the image
fstypes have a basetype and then conversion types that define functions
that apply sequentially.
So implement the TrustFence initramfs sign process as a conversion type
of the base initramfs type (cpio).
This fixes following build issue:
mv: cannot stat ‘dey-image-recovery-initramfs-ccimx6ulstarter-20170220152625.rootfs.cpio.gz.u-boot’
https://jira.digi.com/browse/DEL-3451
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
meta-fsl-arm is no longer used for Morty release. Now the community
support is implemented in 'meta-freescale' layer.
https://jira.digi.com/browse/DEL-3451
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
These new US and world board data files contain new calibration settings
updated with the latest certification results.
md5sums:
bdwlan30_US.bin: f2c414adb682a8cd95e72593fad7fa08
bdwlan30_World.bin: 12e2bae1a871e2a3dfa6ded0ee675c09
Signed-off-by: Alex Gonzalez <alex.gonzalez@digi.com>
Tweaked to maintain the u-boot and linux revisions to AUTOREV instead of
the fixed SHA1s from the tag.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
Protect the invocation of the _scan_done() callback function with the
global lock to avoid that it is called while the module is being unloaded
and the data structures have been freed.
Additionally, the commit also adds a patch to reduce the log level of the
driver that is logging some annoying messages.
https://jira.digi.com/browse/DEL-3607https://jira.digi.com/browse/DEL-3393
Signed-off-by: Pedro Perez de Heredia <pedro.perez@digi.com>
Refresh the patches with GIT so they apply cleanly using "git am".
Otherwise they fail with:
Applying: openssl_helper: use /dev/urandom as seed source
error: corrupt patch at line 16
Patch failed at 0003 openssl_helper: use /dev/urandom as seed source
Applying: hab4_pki_tree.sh: usa a random password for the default PKI generation
warning: keys/hab4_pki_tree.sh has type 100755, expected 100644
Notice that they were not failing in Yocto, as it does not use "git am"
to apply patches, but it's better to have the patches correctly done.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
On a CC6, the 'env default -a' command deletes the 'soc_family' variable
that is used on the U-Boot boot scripts to configure the name of the
device tree file to load.
Then if we try to boot into recovery directly (without a reset) because
the variable is not available, it fails to compose the correct name for
the fdt, and gives the error:
reading uImage--ccimx6sbc-id129.dtb
** Unable to read file uImage--ccimx6sbc-id129.dtb **
Force a reset, so the 'soc_family' variable is available again and the
correct fdt_file is loaded.
While on it, add some blank lines to the 'recovery reboot' message, so
it's easier to read.
Signed-off-by: Javier Viguera <javier.viguera@digi.com>
The caam encryption check was only done from fw_env_write and fw_env_read
functions, which are not called when using the functions exported as a library.
Move the check_caam_encryption() call to fw_env_open(), which is called from
all code paths. A similar check for AES encryption cannot be moved because it
requires the AES key as an argument.
https://jira.digi.com/browse/DEL-3616
Signed-off-by: Diaz de Grenu, Jose <Jose.DiazdeGrenu@digi.com>
NAND partitions may have pre-existing UBI volume information
and that will tell U-Boot to use 'ubiwrite' to keep UBI wear
leveling information instead of erasing the NAND partition
beforehand. Given that the UBI support in U-Boot is not
particularly complete and stable, and specially if the NAND
partition table has been changed, this could result into
problems during the UBI volume initialization or during the
update process. To prevent such problems it is better that
the NAND partitions are erased.
This loses the UBI wear leveling information but provides
a more reliable deployment install script.
Signed-off-by: Hector Palacios <hector.palacios@digi.com>
https://jira.digi.com/browse/DUB-718
Modify patch to clean compiler warning:
warning: passing argument 1 of 'sysfs_mmcboot_set_protection' discards
'const' qualifier from pointer target type
Signed-off-by: Javier Viguera <javier.viguera@digi.com>