Commit Graph

152 Commits

Author SHA1 Message Date
Ricardo Martincoski
f65a435e45 boot/*/Config.in: re-wrap help text
... to follow the convention <tab><2 spaces><62 chars>.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-04-01 08:06:37 +02:00
Ricardo Martincoski
f96b4b9e57 boot/*/Config.in: fix attributes order
... to follow the convention: type, default, depends on, select, help.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-04-01 08:06:37 +02:00
Ricardo Martincoski
c9f6e1a329 boot/*/*.mk: fix code style
Use only one space before backslash.
Indent with tabs.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-04-01 07:54:59 +02:00
Stefan Becker
f437bf547c uboot: fix build for older uboot source trees
The change in commit bf73334232 only works
for newer uboot source trees. Add a check that scripts/dtc/libfdt
directory exists before making this change.

[Peter: add comment explaining why]
Signed-off-by: Stefan Becker <chemobejk@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-12 23:50:17 +01:00
Thomas Petazzoni
bf73334232 uboot: fix build when libfdt-devel is installed system-wide
When libfdt-devel is installed system-wide, the build of U-Boot host
programs currently fails with lots of:

  HOSTCC  tools/aisimage.o
In file included from tools/../include/../lib/libfdt/libfdt.h:10:0,
                 from tools/../include/libfdt.h:1,
                 from tools/fdt_host.h:11,
                 from tools/imagetool.h:24,
                 from tools/aisimage.c:8:
/usr/include/libfdt_env.h:70:30: error: conflicting types for ‘fdt64_t’
 typedef uint64_t FDT_BITWISE fdt64_t;
                              ^~~~~~~
In file included from <command-line>:0:0:
././include/libfdt_env.h:19:16: note: previous declaration of ‘fdt64_t’ was here
 typedef __be64 fdt64_t;
                ^~~~~~~
In file included from ././include/libfdt_env.h:12:0,
                 from <command-line>:0:
/usr/include/libfdt_env.h:90:24: error: expected ‘)’ before ‘x’
 static inline uint32_t fdt32_to_cpu(fdt32_t x)
                        ^

This commit adds a fixup in the U-Boot code to fix this problem. The
fixup is equivalent to applying upstream commit
http://git.denx.de/?p=u-boot.git;a=commitdiff;h=e0d20dc1521e74b82dbd69be53a048847798a90a,
but we can't use a patch for the uboot package, since people are using
arbitrary versions.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-10 23:50:44 +01:00
Peter Korsgaard
0bf80e4bcd uboot: ensure host includes are searched before system default includes
Commit baae5156ce (uboot: use local fdt headers) changed the uboot logic
to pass the host include directories with -idirafter instead of -I, so
include files local to u-boot would be preferred over host includes.

This unfortunately breaks configurations using
BR2_TARGET_UBOOT_NEEDS_OPENSSL on hosts with incompatible openssl headers
installed in the system default include directories as explained here:

http://lists.busybox.net/pipermail/buildroot/2018-March/214651.html

The problem is that -idirafter directories gets added to the very end of the
search order, AFTER the system default directories.

Instead use -isystem which causes the directories to be added after -I but
before the system default directories.  With this in place, the include
directories of u-boot will first be scanned, followed by the host includes
and finally the system default include directories.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2018-03-02 00:12:43 +01:00
Thomas De Schampheleire
b15a7a62d3 uboot: revert "uboot: use local libfdt.h"
This reverts commit 3a6573ccee.

It is no longer necessary after solving the problem differently.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-25 22:40:22 +01:00
Thomas De Schampheleire
baae5156ce uboot: use local fdt headers
After commit b8c3e94173 ("package/dtc: qemu system build need libfdt")
changed the dtc install target from 'install-bin' to 'install', uboot
compilation failures occurred because libfdt related headers were now
suddenly taken from output/host/include rather than from the uboot sources
itself.

Commit 3a6573ccee ("uboot: use local libfdt.h") solved this by patching
one specific uboot source file, tools/fdtgrep.c, to replace '<...>'-style
includes by '"..."'-style includes.

However, depending on the uboot version, this may not be enough: there may
be other references to fdt header files. In particular taking into account
that it is not uncommon to have vendor-provided uboot trees which have
custom changes.

The root of the problem is that the uboot.mk file passes the host compiler
as follows:
	UBOOT_MAKE_OPTS += \
		...
		HOSTCC="$(HOSTCC) $(HOST_CFLAGS)" \
		...
where HOST_CFLAGS contains the string '-I$(HOST_DIR)/include'
The uboot makefiles then use constructs of the form:
	$(CC) $(CPPFLAGS) $(CFLAGS) .....
where CPPFLAGS may contain -I references pointing to local directories.

On the expanded compiler command-line, Buildroot's '-I$(HOST_DIR)/include'
is thus present _before_ any -I to local directories, and thus takes
precedence.  And that becomes a problem for header files present both
locally as in the Buildroot host directory, which is the case for libfdt.

To fix this problem without having to patch u-boot sources, use '-idirafter'
rather than '-I' to pass the Buildroot host include directory. '-idirafter'
is basically the same thing, but adds the specified directory at the end
of the include precedence chain, rather than at the beginning.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-02-25 22:40:17 +01:00
Jörg Krause
1b069b2224 uboot: bump to version 2018.01
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2018-01-12 22:45:24 +01:00
Yann E. MORIN
c9b6604fa7 package/uboot: detect missing user-supplied environment source files
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>
2017-12-14 06:37:13 +01:00
Yegor Yefremov
fc144ee4eb boot: uboot: fix typo
Replace "depend" with "depends".

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-12-08 14:32:02 +01:00
Jagan Teki
2c4809e608 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>
2017-12-08 13:37:49 +01:00
Jagan Teki
3573221078 uboot: Use BR2_TARGET_UBOOT_SPL_NAME for TPL name
Since the BR2_TARGET_UBOOT_SPL_NAME option accepts a space-separated
list of binaries, the same option can be reuses for TPL binaries as
well. This commit updates the string and help text to indicate that
the same option can be used for SPL and TPL.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-23 22:39:55 +01:00
Fabio Estevam
b75d54d18e uboot: bump to version 2017.11
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-11-15 23:12:28 +01:00
Matt Weber
3a6573ccee uboot: use local libfdt.h
Use of libfdt.h by u-boot is currently using
the <system-path>.

Jan submitted the following upstream
https://patchwork.ozlabs.org/patch/833760/

Resolves a failure like this one observed on uboot-tools
http://autobuild.buildroot.net/results/347cde4b5c0e6ca76d354396385be4ec1294da73

[Peter: only sed if file exists]
CC: Jan Kundrát <jan.kundrat@cesnet.cz>
CC: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-11-06 21:25:31 +01:00
Peter Korsgaard
ec5ceae930 u-boot: add option to specify config fragments
U-Boot nowadays also uses kconfig, so we can handle config fragments like we
do for barebox/busybox/linux.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2017-10-06 18:44:18 +02:00
Fabio Estevam
081f6826e8 uboot: bump to version 2017.09
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-09-12 22:10:56 +02:00
Jörg Krause
14b1b5b54e uboot: bump to version 2017.07
Add a new config option BR2_TARGET_UBOOT_NEEDS_PYLIBFDT for U-Boot
targets, like sunxi, needing the Python libfdt library.

Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks>
[Thomas: drop bogus selects on BR2_PACKAGE_HOST_{PYTHON,SWIG}.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-21 22:43:36 +02:00
Max Filippov
3a0a020a2e uboot: apply xtensa overlay
Xtensa core configuration must be added to U-Boot before it can be
built for that xtensa CPU variant. Extract configuration files from the
xtensa overlay as is done for other packages that need to be configured
for a specific xtensa core.

Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-09 17:03:45 +02:00
Arnout Vandecappelle
0f9c0bf3d5 Globally replace $(HOST_DIR)/usr/bin with $(HOST_DIR)/bin
Since things are no longer installed in $(HOST_DIR)/usr, the callers
should also not refer to it.

This is a mechanical change with
git grep -l '$(HOST_DIR)/usr/bin' | xargs sed -i 's%$(HOST_DIR)/usr/bin%$(HOST_DIR)/bin%g'

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-07-05 15:19:29 +02:00
Thomas Petazzoni
c40e673c5c uboot: add support for generating U-Boot boot scripts
More and more of our defconfigs need to generate a U-Boot boot
script. It's a simple call to mkimage, but we already have 12
instances of this logic in board/, and there are patch series waiting
in patchwork adding 3 more boards that need this.

So let's add an option in the U-Boot package to generate such a boot
script image easily.

Note that we assume a single script needs to be generated, and the
output file name is boot.scr. The only platform for which it seems to
not be the case are the Boundary Devices platforms: they generate two
boot scripts, 6x_bootscript and 6x_upgrade, but they are anyway
installed inside TARGET_DIR, not BINARIES_DIR.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-06-22 13:02:47 +02:00
Arnout Vandecappelle
13cd441572 uboot: exclude from hash check except for latest version
Instead of excluding the hash specifically for the custom tarball and
custom version cases, exclude it always except in the one case where
we do have a hash: the latest version.

This simplifies the code a little because soon we will add hash checks
for git as well, so we also need an exclusion in that case.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-06-11 14:15:13 +02:00
Fabio Estevam
d704045a14 boot/uboot: bump to version 2017.05
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-05-23 15:41:48 +02:00
Christian Stewart
b7f095920a uboot: fix target uboot defconfig warning
The warning currently reads:

  No board defconfig name specified, check your
  BR2_TARGET_UBOOT_DEFCONFIG setting.

It should read:

  No board defconfig name specified, check your
  BR2_TARGET_UBOOT_BOARD_DEFCONFIG setting.

Signed-off-by: Christian Stewart <christian@paral.in>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-04-22 15:05:50 +02:00
Michael Trimarchi
61038e36b6 uboot: qstrip BR2_TARGET_UBOOT_CUSTOM_DTS_PATH
We need to avoid failing of copy of custom dts using cp -f <>
command. So, just qstrip the variable as is done for other
configuration options.

Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
Tested-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-04-08 15:29:01 +02:00
James Balean
4f50f4928c Add out-of-source U-Boot device tree support
Similaly to Linux, this patch adds the ability to copy in and build
out-of-source device tree sources during a U-Boot build.

Signed-off-by: James Balean <james@balean.com.au>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-04-05 22:29:23 +02:00
Rahul Bedarkar
af31c309e7 boot, linux, package: use SPDX short identifier for GPLv2/GPLv2+
We want to use SPDX identifier for license strings as much as possible.
SPDX short identifier for GPLv2/GPLv2+ is GPL-2.0/GPL-2.0+.

This change is done by using following command.
find . -name "*.mk" | xargs sed -ri '/LICENSE( )?[\+:]?=/s/\<GPLv2\>/GPL-2.0/g'

Signed-off-by: Rahul Bedarkar <rahulbedarkar89@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-04-01 15:16:38 +02:00
Jagan Teki
ab1131d559 uboot: improve BR2_TARGET_UBOOT_SPL_NAME help text
SPL is the name used for spl on i.MX6, so update the same on
BR2_TARGET_UBOOT_SPL_NAME help text.

Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Michael Trimarchi <michael@amarulasolutions.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
[Thomas: rewrap Config.in help text.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-14 23:38:39 +01:00
Fabio Estevam
626aac0d1b boot/uboot: bump to version 2017.03
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-03-14 07:18:15 +01:00
Lionel Flandrin
9ee5978a91 u-boot: add support for full image socfpga mkpimage
On older SoCFPGA SoCs, there was not enough SRAM to fit the entire
U-Boot, so a SPL model was used. The SPL was therefore the binary that
had to be "prepared" to be loaded by the ROM code using the mkpimage
tool.

With newer SoCFPGA SoCs, there is enough SRAM to fit the entire U-Boot,
and therefore the ROM code directly loads U-Boot. In this case, it's the
real U-Boot image (not the SPL) that needs to be prepared using
mkpimage.

This code adds support for the newer SoCFPGA SoCs, by adjusting the
mkpimage related logic to apply on the SPL if an SPL is enabled, or on
the full U-Boot image otherwise.

Signed-off-by: Lionel Flandrin <lionel@svkt.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-05 22:28:21 +01:00
Lionel Flandrin
fff0732af0 u-boot: add an option to generate u-boot-dtb.bin
Signed-off-by: Lionel Flandrin <lionel@svkt.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2017-03-05 22:25:49 +01:00
Fabio Estevam
07f606df6f boot/uboot: bump to version 2017.01
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2017-01-09 21:14:19 +01:00
Danomi Manchego
f61583fc2e uboot: fix custom patch dir legacy handling
Commit 3e3fef39e7 added new and improved
patch handling, with BR2_TARGET_UBOOT_PATCH.  This was in addition to
the existing BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR option, that only
handled directories.

Later, commit 21b25d28fc moved the old
BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR to legacy options.  But on the way,
bad things happened:

* The original option was a string, while the one added to Config.in.legacy
is a bool.  This results in a warning from defconfigs that actually define
the old BR2_TARGET_UBOOT_CUSTOM_PATCH_DIR (because a string is not a valid
value for a bool), but it does not result in the legacy option being
selected.  Consequently, BR2_LEGACY is not selected either.

* The advice at the top of Config.in.legacy to add a hidden WRAP option
to select BR2_LEGACY was not heeded.

* The advice at the top of Config.in.legacy to use the old string
option as the default for the new string option was not heeded.  In
this case, the variable was not just renamed, as the old option
supported directories only, while the new one supports files too.
But since the old option is a subset of the new option, it can still
be used to set a useful default.

So, this mod turns the legacy option back to a string, adds a hidden
bool WRAP option to set BR2_LEGACY when the string is non emoty, and
uses the legacy option to set the default for the new option.

Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-12-20 09:33:48 +01:00
Peter Korsgaard
8852f08eed Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-12-01 22:29:56 +01:00
tiago.brusamarello
bf5487e21e uboot: support -b option for mkenvimage
When generating the environment image the target endianess should
be taken in account for CRC calculation purposes. For big endian
targets the -b flag should be passed to the mkenvimage tool.

Signed-off-by: Tiago Brusamarello <tiago.brusamarello@datacom.ind.br>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-11-30 16:10:30 +01:00
Fabio Estevam
ce7b0b8dfb boot/uboot: bump to version 2016.11
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-11-14 22:52:01 +01:00
Yann E. MORIN
2e29db7d97 package/uboot: define help commands when using Kconfig
Expose the Kconfig-related help commands when U-Boot uses the Kconfig
configuration. Like others (like Linux, barebox, busybox), only expose
menuconfig, not all the configurators.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-11-01 14:51:15 +01:00
Thomas Petazzoni
02e11d02f4 uboot: add option to optionally depend on host-openssl
Some U-Boot board configurations have CONFIG_FIT_SIGNATURE=y. In this
case, when U-Boot builds its tools, it requires OpenSSL support on the
host system.

Since we clearly don't want to unconditionally depend on host-openssl,
we introduce a new option to explicitly enable the dependency on
host-openssl. This is exactly identical to the existing
BR2_TARGET_UBOOT_NEEDS_DTC, for the dependency on host-dtc. It is
therefore the responsibility of the user to enable this option if his
board configuration uses CONFIG_FIT_SIGNATURE=y.

Necessary to fix bug #9316.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-20 23:31:09 +02:00
Fabio Estevam
55a481bec1 boot/uboot: Call 'make all' unconditionally
Since commit fad58cefa4 ("boot/uboot: allow to build multiple U-Boot
images") the installation of SPL binary fails.

For example, when building the mx6cubox_defconfig target we see:

  LD      u-boot
  OBJCOPY u-boot-nodtb.bin
  COPY    u-boot.bin
  MKIMAGE u-boot.img
>>> uboot 2016.09.01 Installing to target
>>> uboot 2016.09.01 Installing to images directory
cp -dpf /home/fabio/buildroot/output/build/uboot-2016.09.01/u-boot.bin /home/fabio/buildroot/output/images/
cp -dpf /home/fabio/buildroot/output/build/uboot-2016.09.01/u-boot.img /home/fabio/buildroot/output/images/
cp -dpf /home/fabio/buildroot/output/build/uboot-2016.09.01/SPL /home/fabio/buildroot/output/images/
cp: cannot stat '/home/fabio/buildroot/output/build/uboot-2016.09.01/SPL': No such file or directory

Instead of calling 'make all' only for the BR2_TARGET_UBOOT_FORMAT_DTB_IMG
case, call 'make all' unconditionally so that the SPL target can also
be installed.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-10-07 22:35:48 +02:00
Alexey Brodkin
6a4e0314a4 u-boot: Fix building for ARC700
With newer ARC toolchain obsolete -marcXXX were finally deperecated
and so compiler throws errors now about unknown option.

Solution is as simple as switching to more generic -mcu-XXX
options. Which we do. Unfortunately that change in upstream U-Boot [1]
happened right after v2016.09 was released an so we need to have that fix
for v2016.07 which is mentioned in axs10x defconfigs and for the latest
U-Boot release v2016.09 (which is selected by default if no defconfig is
used).

Once we deprecate either U-Boot version in U-Boot corresponding patch
should be removed essentially.

[1] http://git.denx.de/?p=u-boot.git;a=commit;h=7c8d81605302e7d7fdd3e7d8eb69302bddc64a2c

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Thomas: handle the U-Boot bump to 2016.09.01.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-25 23:24:27 +02:00
Fabio Estevam
55a7965273 boot/uboot: bump to version 2016.09.01
2016.09.01 is a bugfix release, so bump to this version.

Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-25 23:14:47 +02:00
Petr Kulhavy
fad58cefa4 boot/uboot: allow to build multiple U-Boot images
Sometimes it is desired to build multiple U-boot images. E.g. one to
save into flash memory and one for serial load. So far this was not
possible.

This change allows to select any combination of the target formats. They
are all copied to the image folder.

Signed-off-by: Petr Kulhavy <brain@jikos.cz>
[Thomas:
 - Handle the BR2_TARGET_UBOOT_FORMAT_BIN, which wasn't handled, and
   therefore u-boot.bin was not copied when
   BR2_TARGET_UBOOT_FORMAT_BIN=y.
 - Rename UBOOT_BIN to UBOOT_BINS, since it can now contain multiple
   values.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-17 19:24:12 +02:00
Fabio Estevam
7f111de1fb boot/uboot: bump to version 2016.09
Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-09-12 22:40:15 +02:00
Fabio Estevam
f0fa2d1890 boot/uboot: bump to version 2016.07
Signed-off-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-07-12 10:48:08 +02:00
Thomas Petazzoni
61c26cc817 boot/uboot: fix missing closing parenthesis
There was a typo in commit
b05ff12b6c ("uboot: install multiple spl
images"), leading to a missing closing parenthesis. This commit fixes
this typo.

Fixes bug #9086

Reported-by: Jebodiah Sensai <dkaplan65@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-06 21:06:45 +02:00
Jason Abele
b05ff12b6c uboot: install multiple spl images
For some platforms, there are multiple generated spl images.  Extend
BR2_TARGET_UBOOT_SPL_NAME to allow these multiple images to be installed
after uboot build completes.

For example, the NextThingCo C.H.I.P. uses two binaries from uboot,
spl/sunxi-spl.bin and spl/sunxi-spl-with-ecc.bin.

Signed-off-by: Jason Abele <jason@nextthing.co>
[Maxime:
 - Add foreach loop for general case and mkpimage
 - Use firstword for zynq case]
Signe-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>

Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-05 17:30:12 +02:00
Thomas Petazzoni
1c2eb2684f boot/uboot: fix build of old U-Boot versions
Since commit 0dca644e44 ("boot/uboot: fix
missing host-openssl for i.MX28 target"), we pass HOSTCFLAGS/HOSTLDFLAGS
in the environment of U-Boot when building. This is needed to allow
U-Boot to find the OpenSSL headers/libraries when they are
needed. Unfortunately, this breaks the build with old U-Boot versions as
the U-Boot Makefiles were not designed to have HOSTCFLAGS passed in,
which causes some important CFLAGS from the U-Boot build system to be
ignored.

As suggested by Arnout, we pass the HOST_CFLAGS inside HOSTCC directly,
which allows to pass the CFLAGS without overriding the internal U-Boot
CFLAGS.

Tested with an old U-Boot (2012.10), and a modern U-Boot in a
configuration that needs OpenSSL.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-07-05 12:06:47 +02:00
Zakharov Vlad
41a077d2b1 uboot: Use "mdbtrick" target when building elf for ARC
By default position independent executables (PIE) are generated
when building U-Boot elf target. MetaWare debugger doesn't support
PIE (position-independent executable).

In order to allow MDB load and run U-Boot elf, we need to do a
special trick, called "mdbtrick".

This special build target is used to fake generated U-Boot elf by:
    1. Reset PIE flag in ELF header
    2. Strip all debug information from elf

Signed-off-by: Zakharov Vlad <vzakhar@synopsys.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-06-12 21:40:19 +02:00
Peter Korsgaard
577021e81b Merge branch 'next'
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2016-06-01 17:55:16 +02:00
Cam Hutchison
0542bb79e8 uboot: Support multiple environment source files
Allow multiple file names to be listed in
BR2_TARGET_UBOOT_ENVIMAGE_SOURCE, concatenating them in the order
listed.

This allows the bulk of the environment to be shared across multiple
boards using a common environment file with board-specific values
supplied in a secondary environment source file.

Signed-off-by: Cam Hutchison <camh@xdna.net>
[Thomas: adjust indentation in the .mk file.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2016-05-31 22:59:35 +02:00