Since 0542bb79e8 (uboot: Support multiple environment source files),
missing user-supplied environment source files is no longer detected.
This is because we cat them all, and feed the concatenation to the stdin
of mkenvimage. So, if one source file is missing, the cat exits in error,
but the compound command exits with the exit code of the last command,
which is that of mkenvimage, which happens to be happy with whatever it
is fed on its stdin, even is empty.
We fix that by creating a temporary file, that we even leave afterward
for the user to inspect.
We also move it out of the _CMDS block and into a macro of its own, so
that it is easier to write and maintain.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Cam Hutchison <camh@xdna.net> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Mario Lang [Tue, 12 Dec 2017 18:41:28 +0000 (19:41 +0100)]
lynx: new package
Signed-off-by: Mario Lang <mlang@blind.guru> Reviewed-by: Adrian Perez de Castro <aperez@igalia.com>
[Thomas: invert ncurses/slang select to avoid a circular dependency,
add BR2_USE_MMU dependency inherited from slang.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thomas Petazzoni [Tue, 12 Dec 2017 11:21:51 +0000 (12:21 +0100)]
Revert "package/cmake: bump version to 3.10.0 and add license hash"
This reverts commit 65205c2425bccb7039ca0e2caffb7c64c26805f7, which
causes too many build failures of host-cmake due to the use by CMake
of the emplace_hint C++11 method.
The Marvell U-Boot needs DTC to build, so the test case fails to build
on systems where dtc isn't available. We add
BR2_TARGET_UBOOT_NEEDS_DTC=y to make sure that we build our own DTC.
Peter Korsgaard [Mon, 11 Dec 2017 17:04:29 +0000 (18:04 +0100)]
gnupg: add host package
For E.G. post-build / post-image scripts as it generally cannot be expected
to be available on the build host and/or there are some differences in
behaviour between gnupg 1.x / 2.x.
Provide gnupg 1.x instead of 2.x, as it is simpler to build (less
dependencies) and easier to use in post-build / post-image scripts (E.G. no
gpg-agent that keeps running in the background).
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/linux-tools: fixes build of iio with 4.14+ kernels
Since Linux kernel commit [1], the build of the iio tool has been
changed to use the common Linux tools build system. The installation
directory is now given by DESTDIR, like for all other Linux tools.
We keep the INSTALL_DIR environment in the 'install' target to be
compatible with kernels older than 4.14.
Peter Seiderer [Sun, 10 Dec 2017 22:01:31 +0000 (23:01 +0100)]
qt5charts: fix qt5base widgets/gui selection
Selection of BR2_PACKAGE_QT5BASE_WIDGETS needs BR2_PACKAGE_QT5BASE_GUI too.
Fixes qt5base configure failure ([1]):
ERROR: Feature 'widgets' was enabled, but the pre-condition 'features.gui' failed.
[1] http://autobuild.buildroot.net/results/69c4385b2fd484d16f749b4cde6967f5cabea8b2
and buildroot warning:
warning: (... && BR2_PACKAGE_QT5CHARTS && ...) selects BR2_PACKAGE_QT5BASE_WIDGETS
which has unmet direct dependencies (BR2_PACKAGE_QT5 && BR2_PACKAGE_QT5BASE && BR2_PACKAGE_QT5BASE_GUI)
Signed-off-by: Peter Seiderer <ps.report@gmx.net> Acked-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Peter Korsgaard [Mon, 11 Dec 2017 21:35:36 +0000 (22:35 +0100)]
boards/zynq: use genimage to generate a bootable SD card image
[Run-time tested on ZedBoard, build-tested on the other boards]
[Peter: also add host-dosfstools / host-mtools to make vfat images] Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Luca Ceresoli [Sat, 9 Dec 2017 21:30:06 +0000 (22:30 +0100)]
boards/zynq: rename the DTB to be loaded by U-Boot
We are about to introduce genimage support for the Zynq boards. For
all of them U-Boot loads the DTB from a file named "devicetree.dtb" so
we need to rename it on the SD card image.
We could use genimage itself to rename files while creating the
image. But this would require a different genimage.cfg for each board,
leading to duplicate code.
Instead let's create a "devicetree.dtb" symlink pointing to the dtb
listed in the configuration. Currently all the Zynq-based boards have
only one DTS configured, but if one had two or more of them, the
symlink would point to the first one.
[Peter: only create symlink if dtb option is available] Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
These new tests only do build tests, but allow to quickly verify that
the ATF/U-Boot combinations for vexpress, Allwinner and Marvell
platforms all continue to build properly.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Add Marvell Armada 7k/8k SoCs support to arm-trusted-firmware package.
Marvell ATF needs two additional dependencies:
DDR training code and SCP_BL2 image.
Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
[Thomas: adjust to previous ATF changes.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
binaries-marvell: bump version, add license file and hash
Following our feedback, Marvell has added a README.md file into the
branch that contains the firmware. Thereore, this commit bumps the
version to the commit that includes the README.md file (it's the only
change, the firmware files are unmodified), updates
<pkg>_LICENSE_FILES to point to README.md, and adds the hash for this
license files.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Cc: Alexander Dahl <post@lespocky.de> Signed-off-by: Baruch Siach <baruch@tkos.co.il>
[Thomas: fix patch numbering, as noticed by Alexander Dahl.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Baruch Siach [Fri, 8 Dec 2017 07:12:56 +0000 (09:12 +0200)]
glibc: security bump to the latest 2.26 branch
List of fixes from the 2.26 branch NEWS files:
CVE-2017-15670: The glob function, when invoked with GLOB_TILDE,
suffered from a one-byte overflow during ~ operator processing (either
on the stack or the heap, depending on the length of the user name).
Reported by Tim Rühsen.
CVE-2017-15671: The glob function, when invoked with GLOB_TILDE,
would sometimes fail to free memory allocated during ~ operator
processing, leading to a memory leak and, potentially, to a denial
of service.
CVE-2017-15804: The glob function, when invoked with GLOB_TILDE and
without GLOB_NOESCAPE, could write past the end of a buffer while
unescaping user names. Reported by Tim Rühsen.
CVE-2017-17426: The malloc function, when called with an object size near
the value SIZE_MAX, would return a pointer to a buffer which is too small,
instead of NULL. This was a regression introduced with the new malloc
thread cache in glibc 2.26. Reported by Iain Buclaw.
Some systems, including Marvell Armada 7k/8k SoCs, have a separate
System Control Processor (SCP) for power management, clocks, reset
and system control. ATF Boot Loader stage 2 (BL2) loads optional
SCP_BL2 image into a platform-specific region of secure memory.
This package adds SCP_BL2 firmware for Marvell Armada 7040 and 8040 SoCs.
Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
[Thomas:
- Use "binaries-marvell" in the Config.in prompt and in the .mk file
header.
- Change the license information.
- Adjust license information: it is GPL-2.0 with the FreeRTOS
exception, and therefore can be redistributed.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This package adds Marvell Armada SoC DDR training algorithms.
This code is not built separately, it is needed as dependency
to build ATF firmware for Marvell Armada SoCs.
Signed-off-by: Sergey Matyukevich <geomatsi@gmail.com>
[Thomas:
- Remove MV_DDR_MARVELL_SRC_SYMLINK, ATF will directly pick up the
mv-ddr-marvell code from where it is.
- Use "mv-ddr-marvell" as the Config.in prompt, and in the comment
header of the .mk file.
- Add upstream URL in Config.in help text
- Adjust license information.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Jagan Teki [Sun, 3 Dec 2017 21:48:07 +0000 (22:48 +0100)]
uboot: add support for bundling ATF BL31 into U-Boot
Some ARM64 platforms (such as Allwinner A64/H5) have a boot process
where U-Boot encapsulates the BL31 part of the ARM trusted
firmware. For such platforms, we need to build ATF before U-Boot, and
pass a BL31 variable pointing to ATF bl31.bin to the U-Boot build
process.
This commit introduces a BR2_TARGET_UBOOT_NEEDS_ATF_BL31 variable to
achieve this.
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
[Thomas:
- Rename option to BR2_TARGET_UBOOT_NEEDS_ATF_BL31
- Drop changes to arm-trusted-firmware.mk, they are taken care of by
previous commits.
- Improve Config.in help text
- Add missing dependency on arm-trusted-firmware when
BR2_TARGET_UBOOT_NEEDS_ATF_BL31 is enabled.
- Use bl31.bin from $(BINARIES_DIR) instead of taking it from ATF's
build dir.]
[Peter: depend on toplevel atf option and select bl31 option. Ensure it
cannot be enabled together with ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33
as that would cause circular dependencies] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Jagan Teki <jagan@amarulasolutions.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
arm-trusted-firmware: allow to generate the BL31 image
Some platforms (e.g Allwinner ARM64) don't build a FIP image out of
ATF, but only a BL31 image, which is then encapsulated in U-Boot. This
commit adds an ATF option to build such an image.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: Jagan Teki <jagan@amarulasolutions.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
- ATF encapsulates U-Boot as the BL33, which is what is done on ARM
Juno (currently supported in Buildroot) and Marvell platforms (soon
to be supported)
- U-Boot encapsulates ATF's BL31, which is what is done on Allwinner
ARM64 platforms.
Until now we were assumming the former was always the case, but
obviously it isn't. Therefore, this patch adds an option that allows
to explicitly tell ATF that it encapsulates U-Boot as its BL33.
We adapt the only defconfig that uses ATF so that it enables this
option as appropriate.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
arm-trusted-firmware: add option to enable/disable building FIP image
Currently, our arm-trusted-firmware unconditionally builds a FIP
(Firmware Image Package). While this is often needed on platforms
where ATF encapsulates U-Boot, it is not the case on some other
platforms where it's U-Boot that encapsulates parts of ATF.
In order to prepare the support for the later platforms, we make
building the FIP image optional, and update the only defconfig we have
that uses ARM Trusted Firmware.
Note: we considered adding a "default y" here to preserve backward
compatibility, but there really isn't any default that is sane:
whether a FIP image needs to be built or not is purely platform
specific.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Reviewed-by: Sergey Matyukevich <geomatsi@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Yann E. MORIN [Mon, 4 Dec 2017 20:43:31 +0000 (21:43 +0100)]
arch/arm: default to Cortex-A53 for AArch64
Since we re-organised the list of cores (in 52d500aa35) and introduced
some new cores (in e9960da6ec, d632d9e5a9, 6317a199ec), the default for
AArch64 was accidently changed from A53 to A35.
So, restore the default to A53 for AArch64.
Reported-by: daggs <daggs@gmx.com> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: daggs <daggs@gmx.com> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Johan Oudinet [Wed, 6 Dec 2017 14:47:53 +0000 (15:47 +0100)]
flann: Disable find package for HDF5
The HDF5 package is used by flann for testing purpose only and is
not part of buildroot packages. However, if present in the host, it will
be used and trigger the unsafe header/library path used in
cross-compilation error.
Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>