| Age | Commit message (Collapse) | Author |
|
Signed-off-by: Tom Rini <[email protected]>
|
|
Add support for booting from an MMC card.
Signed-off-by: Stefan Roese <[email protected]>
Signed-off-by: Henrik Nordström <[email protected]>
Signed-off-by: Ian Campbell <[email protected]>
Reviewed-by: Marek Vasut <[email protected]>
Cc: Tom Cubie <[email protected]>
Reviewed-by: Tom Rini <[email protected]>
|
|
|
|
In case of multilib-enabled toolchains if default architecture differ from
the one examples are being built for linker will fail to link example object
files with libgcc of another (non-compatible) architecture.
Interesting enough for years in main Makefile we used CFLAGS/c_flags for this
but not for examples.
So fixing it now.
Signed-off-by: Alexey Brodkin <[email protected]>
Cc: Masahiro Yamada <[email protected]>
Cc: Tom Rini <[email protected]>
Cc: Wolfgang Denx <[email protected]>
Acked-by: WOlfgang Denk <[email protected]>
Acked-by: Masahiro Yamada <[email protected]>
|
|
|
|
Conflicts:
boards.cfg
Conflicts were trivial once u-boot-arm/master boards.cfg was
reformatted (commit 6130c146) to match u-boot/master's own
reformatting (commit 1b37fa83).
|
|
In SPL framework, SPL uses u-boot.img to load u-boot.bin.
Here,
u-boot.img = uImage header + u-boot.bin
To use OF control with a separate devicetree,
u-boot.dtb must be placed right after u-boot.bin.
In this case, u-boot-dtb.bin is generally used.
Here,
u-boot-dtb.bin = u-boot.bin + u-boot.dtb
We need u-boot-dtb.img to use both SPL framework
and separate OF control at the same time.
u-boot-dtb.img = uImage header + u-boot-dtb.bin
For example, Zynq boards already define all of
- CONFIG_SPL
- CONFIG_OF_CONTROL
- CONFIG_OF_SEPARATE
So, the support of u-boot-dtb.img is urgent.
Signed-off-by: Masahiro Yamada <[email protected]>
Cc: Michal Simek <[email protected]>
Acked-by: Simon Glass <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
|
|
The commits
commit b7b5f1a16ca66dfdd817e7339f0e263a5b9f2758
Author: Albert ARIBAUD <[email protected]>
da850evm, da850_am18xxevm: convert to CONFIG_SPL_MAX_FOOTPRINT
and
commit e7497891e34efe5cb2b3a3dc7c6c096c012ede28
Author: Albert ARIBAUD <[email protected]>
cam_enc_4xx: convert to CONFIG_SPL_MAX_FOOTPRINT
replaced CONFIG_SPL_MAX_SIZE by CONFIG_SPL_MAX_FOOTPRINT. However,
CONFIG_SPL_MAX_SIZE is used in the Makefile for padding the SPL
when preparing an u-boot.ais image. By removing CONFIG_SPL_MAX_SIZE
said commits broke the ais image of the da850evm and cam_enc_4xx
configurations.
This patch converts the u-boot.ais target to use CONFIG_SPL_PAD_TO
instead of CONFIG_SPL_MAX_SIZE for padding the SPL and adds
a #define CONFIG_SPL_PAD_TO where it is required.
Signed-off-by: Christian Riesch <[email protected]>
Reported-by: Tom Taylor <[email protected]>
Cc: Sudhakar Rajashekhara <[email protected]>
Cc: Heiko Schocher <[email protected]>
Cc: Albert ARIBAUD <[email protected]>
|
|
Trivial fix.
Signed-off-by: Michal Simek <[email protected]>
|
|
Using __DATE__, __TIME__ would make the build non-deterministic.
If the code needs to refer to build date/time, use U_BOOT_DATE and
U_BOOT_TIME in include/generated/timestamp_autogenerated.h instead.
This commit has been imported from Linux Kernel,
which should be applied to U-Boot too:
commit fe7c36c7bde12190341722af69358e42171162f3
Author: Josh Triplett <[email protected]>
Date: Mon Dec 23 13:56:06 2013 -0800
Makefile: Build with -Werror=date-time if the compiler supports it
GCC 4.9 and newer have a new warning -Wdate-time, which warns on any use
of __DATE__, __TIME__, or __TIMESTAMP__, which would make the build
non-deterministic. Now that the kernel does not use any of those
macros, turn on -Werror=date-time if available, to keep it that way.
The kernel already (optionally) records this information at build time
in a single place; other kernel code should not duplicate that.
Signed-off-by: Josh Triplett <[email protected]>
Signed-off-by: Michal Marek <[email protected]>
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
Signed-off-by: Tom Rini <[email protected]>
|
|
Conflicts:
drivers/net/Makefile
(trivial merge)
|
|
|
|
This reverts commit a8b993eb81c142a439c24b871a2317f765fe5397.
Commit a8b993eb claims it fixes u-boot.lds rule by replacing
$(call if_changed) with $(call filechk).
But the problem had already been fixed by commit 395e60cd
a few days before commit a8b993eb was posted.
There is no reason to apply commit a8b993eb. What is worse is
$(call filechk) is too strong to fix the problem and looks weird.
Date of the two patches:
[1] commit 395e60cdc292dc0183c6867d34b43f14a373df55
Author: Masahiro Yamada <[email protected]>
AuthorDate: Wed Apr 9 20:10:43 2014 +0900
Commit: Tom Rini <[email protected]>
CommitDate: Fri Apr 11 10:08:42 2014 -0400
replaces $(call if_changed) -> $(call if_changed_dep)
[2] commit a8b993eb81c142a439c24b871a2317f765fe5397
Author: Jon Loeliger <[email protected]>
AuthorDate: Tue Apr 15 16:09:37 2014 -0500
Commit: Tom Rini <[email protected]>
CommitDate: Fri Apr 18 16:14:16 2014 -0400
replaces $(call if_changed) -> $(call filechk)
A conflict must have happened when applying [2], but somehow it was
applied, sadly.
Signed-off-by: Masahiro Yamada <[email protected]>
Cc: Jon Loeliger <[email protected]>
Cc: Andreas Bießmann <[email protected]>
Cc: Tom Rini <[email protected]>
|
|
Objective of this target to have concatenate binary having
- SPL binary in PBL command format
- U-boot binary
Signed-off-by: Prabhakar Kushwaha <[email protected]>
Reviewed-by: York Sun <[email protected]>
|
|
|
|
Prior to this patch, the top-level linker script u-boot.lds
used a simple $(call if_changed) check when generated.
That mechanism misses cases where a possible include file
change induces a change in the u-boot.lds too.
This patch converts it to a stronger check using ($call filechk)
that will also notice differences in file contents and
will catch changes due to pre-processing as well.
Signed-off-by: Jon Loeliger <[email protected]>
|
|
Like Linux Kernel, this commit provides environment variables
KCPPFLAGS, KAFLAGS and KCFLAGS, which are useful to pass
additional options.
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
This commit imports Kbuild-related updates
from v3.14 to v3.15-rc1.
- commit 3d3d6b8474204b6819688c9800774d52d370a538
kbuild: LLVMLinux: Adapt warnings for compilation with clang
- commit 61163efae02040f66a95c8ed17f4407951ba58fa
kbuild: LLVMLinux: Add Kbuild support for building kernel with Clang
- commit 79192ca8ebd9a25c583aa46024a250fef1e7766f
scripts: objdiff: detect object code changes between two commits
- commit 1c9e70a55b088d97a59241744fe459409d0c3582
kbuild: create a build directory automatically for out-of-tree build
- commit a03fcb50e816a69acffb13b5e56db75063aeba8a
kbuild: remove redundant '.*.cmd' pattern from make distclean
- commit 13338935f1574a2dcd1c891461b0dcc42f8cff42
kbuild: move "quote" to Kbuild.include to be consistent
- commit bfdfaeae500a3b194b73b01e92a8034791a58b7f
kbuild: specify build_docproc as a phony target
- commit f4d4ffc03efc864645b990e1d579bbe1b8e358a4
kbuild: dtbs_install: new make target
- commit 1e64ff42ea3d8d2fc8aa71f9717b3c1cb6c2f893
Kbuild, lto: Disable LTO for asm-offsets.c
- commit ccbef1674a1579842c7dbdf554efca85d2cd245a
Kbuild, lto: add ld-version and ld-ifversion macros
- commit ae63b2d7bdd9bd66b88843be0daf8e37d8f0b574
scripts/tags.sh: Ignore *.mod.c
- commit e36aaea28972c57a32a3ba5365e61633739719b9
kbuild: Fix silent builds with make-4
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
k2hk EVM is based on Texas Instruments Keystone2 Hawking/Kepler
SoC. Keystone2 SoC has ARM v7 Cortex-A15 MPCore processor. Please
refer the ti/k2hk_evm/README for details on the board, build and other
information.
This patch add support for keystone architecture and k2hk evm.
Signed-off-by: Vitaly Andrianov <[email protected]>
Signed-off-by: Murali Karicheri <[email protected]>
Signed-off-by: WingMan Kwok <[email protected]>
Signed-off-by: Sandeep Nair <[email protected]>
|
|
Signed-off-by: Tom Rini <[email protected]>
|
|
In some use cases, SPL linker script was not updated even when
it should be.
For instance,
$ make tricoder_config all
[ build complete ]
... modify include/configs/tricoder.h
$ make
spl/u-boot-spl.lds should be updated in this case, but it wasn't.
To fix this problem, linker scripts generation should be handled
by $(call if_changed_dep,...) rather than by $(call if_changed,...).
Signed-off-by: Masahiro Yamada <[email protected]>
Reported-by: Andreas Bießmann <[email protected]>
Tested-by: Andreas Bießmann <[email protected]>
|
|
Conflicts:
arch/arm/cpu/arm926ejs/mxs/Makefile
include/configs/trats.h
include/configs/trats2.h
include/mmc.h
|
|
This patch adds the groundwork for generating signed BootStream, which
can be used by the HAB library in i.MX28. We are adding a new target,
u-boot-signed.sb , since the process for generating regular non-signed
BootStream is much easier. Moreover, the signed bootstream depends on
external _proprietary_ _binary-only_ tool from Freescale called 'cst',
which is available only under NDA.
To make things even uglier, the CST or HAB mandates a kind-of circular
dependency. The problem is, unlike the regular IVT, which is generated
by mxsimage, the IVT for signed boot must be generated by hand here due
to special demands of the CST. The U-Boot binary (or SPL binary) and IVT
are then signed by the CST as a one block. But here is the problem. The
size of the entire image (U-Boot, IVT, CST blocks) must be appended at
the end of IVT. But the size of the entire image is not known until the
CST has finished signing the U-Boot and IVT. We solve this by expecting
the CST block to be always 3904B (which it is in case two files, U-Boot
and the hand-made IVT, are signed in the CST block).
Signed-off-by: Marek Vasut <[email protected]>
Cc: Stefano Babic <[email protected]>
|
|
Conflicts:
arch/arm/cpu/arm926ejs/mxs/mxsimage.mx23.cfg
arch/arm/cpu/arm926ejs/mxs/mxsimage.mx28.cfg
Signed-off-by: Stefano Babic <[email protected]>
|
|
This reverts commit 53e6b14e037c9f72e6d03244c32d8d597e2e0234.
Patch does not merge anymore with u-boot-arm and must be rebased.
Signed-off-by: Stefano Babic <[email protected]>
|
|
Signed-off-by: Stefano Babic <[email protected]>
|
|
Signed-off-by: Tom Rini <[email protected]>
|
|
This patch adds the groundwork for generating signed BootStream, which
can be used by the HAB library in i.MX28. We are adding a new target,
u-boot-signed.sb , since the process for generating regular non-signed
BootStream is much easier. Moreover, the signed bootstream depends on
external _proprietary_ _binary-only_ tool from Freescale called 'cst',
which is available only under NDA.
To make things even uglier, the CST or HAB mandates a kind-of circular
dependency. The problem is, unlike the regular IVT, which is generated
by mxsimage, the IVT for signed boot must be generated by hand here due
to special demands of the CST. The U-Boot binary (or SPL binary) and IVT
are then signed by the CST as a one block. But here is the problem. The
size of the entire image (U-Boot, IVT, CST blocks) must be appended at
the end of IVT. But the size of the entire image is not known until the
CST has finished signing the U-Boot and IVT. We solve this by expecting
the CST block to be always 3904B (which it is in case two files, U-Boot
and the hand-made IVT, are signed in the CST block).
Signed-off-by: Marek Vasut <[email protected]>
Cc: Stefano Babic <[email protected]>
|
|
Prior to Kbuild, U-Boot could build under tools/ directory
withour configuring for a specific board.
That feature was lost when switching to Kbuild.
This patch revives it again by adding a make target "tools-only".
Usage:
$ make tools-only
Neither board configuration nor cross compiler are required to
build host tools.
Signed-off-by: Masahiro Yamada <[email protected]>
Suggested-by: Alexey Brodkin <[email protected]>
Cc: Simon Glass <[email protected]>
Cc: Tom Rini <[email protected]>
Acked-by: Alexey Brodkin <[email protected]>
|
|
"make clean", "make clobber", "make mrproper" and "make distclean"
missed to clean-up some files when they were run with
O=<some_dir> option.
Signed-off-by: Masahiro Yamada <[email protected]>
Reported-by: Wolfgang Denk <[email protected]>
|
|
Prior to Kbuild, the build system created a build directory,
when it did not exist, for out-of-tree build.
This feature was dropped when we switched to Kbuild
because many of lines in makefiles were copied from Linux Kernel.
(In Linux Kernel, we have to create a build directory by ourselves
before starting build.)
That feature seems worth reviving for less typing
even if our code and Linux Kernel diverge.
Signed-off-by: Masahiro Yamada <[email protected]>
Suggested-by: Simon Glass <[email protected]>
Acked-by: Simon Glass <[email protected]>
Tested-by: Simon Glass <[email protected]>
|
|
U-Boot uses the 'mkimage' tool to produce various image types,
not only uImage image type. Rename the invocation name from
UIMAGE to MKIMAGE.
The following command was used to do the replacement:
git grep 'quiet_cmd_mkimage.* = UIMAGE' | cut -d : -f 1 | \
xargs -i sed -i "s@\(quiet_cmd_mkimage\)\(.*\) = UIMAGE @\1\2 = MKIMAGE@" {}
Signed-off-by: Marek Vasut <[email protected]>
Cc: Tom Rini <[email protected]>
Cc: Masahiro Yamada <[email protected]>
Acked-by: Masahiro Yamada <[email protected]>
|
|
The tools "buildman" and "patman" are written in Python.
When we run them, "*.pyc" files are created under
tools/buildman, tools/patman directories.
They should be cleaned up by "make distclean".
Signed-off-by: Masahiro Yamada <[email protected]>
Cc: Tom Rini <[email protected]>
Acked-by: Simon Glass <[email protected]>
|
|
These variable are no longer used.
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
Prior to Kbuild, $(OBJTREE) was used for pointing to the
top of build directory with absolute path.
In Kbuild style, $(objtree) is used instead.
This commit renames OBJTREE to objtree and delete the
defition of OBJTREE.
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
Prior to Kbuild, $(TOPDIR) or $(SRCTREE) was used for
pointing to the top of source directory.
(No difference between the two.)
In Kbuild style, $(srctree) is used for instead.
This commit renames SRCTREE to srctree and deletes the
defition of SRCTREE.
Note that SRCTREE in scripts/kernel-doc, scripts/docproc.c,
doc/DocBook/Makefile should be keep.
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
Prior to Kbuild, $(TOPDIR) or $(SRCTREE) was used for
pointing to the top of source directory.
(No difference between the two.)
In Kbuild style, $(srctree) is used instead.
This commit renames TOPDIR to srctree and delete the
defition of TOPDIR.
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
Non-empty $(KBUILD_SRC) means out-of-tree build.
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
Pull out "$(SRCTREE)/" from CONFIG_SYS_KWD_CONFIG
and push it into the top Makefile.
Signed-off-by: Masahiro Yamada <[email protected]>
Cc: Michael Walle <[email protected]>
Cc: Simon Guinot <[email protected]>
Cc: Dave Purdy <[email protected]>
Cc: Stefan Herbrechtsmeier <[email protected]>
Cc: Luka Perkov <[email protected]>
Cc: Valentin Longchamp <[email protected]>
Cc: Jason Cooper <[email protected]>
Cc: Siddarth Gore <[email protected]>
Cc: Prafulla Wadaskar <[email protected]>
Cc: Eric Cooper <[email protected]>
Cc: Suriyan Ramasami <[email protected]>
|
|
Pull out "$(SRCTREE)/" from CONFIG_SYS_FSL_PBL_PBI
and CONFIG_SYS_FSL_PBL_RCW and push it into the top Makefile.
Signed-off-by: Masahiro Yamada <[email protected]>
Cc: York Sun <[email protected]>
Cc: Poonam Aggrwal <[email protected]>
Cc: Valentin Longchamp <[email protected]>
|
|
Signed-off-by: Masahiro Yamada <[email protected]>
Cc: Fabio Estevam <[email protected]>
Cc: Otavio Salvador <[email protected]>
Cc: Lauri Hintsala <[email protected]>
Acked-by: Marek Vasut <[email protected]>
|
|
Signed-off-by: Tom Rini <[email protected]>
|
|
include/generated/version_autogenerated.h was not correctly
generated on the parallel build (with -j option).
Signed-off-by: Masahiro Yamada <[email protected]>
Reported-by: Andreas Bießmann <[email protected]>
|
|
"checkgcc4" is used only for PowerPC.
Move it to arch/powerpc/config.mk.
To make sure gcc is new enough before beginning build,
run "checkgcc4" during "archprepare".
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
"checkthumb" makes sense only for ARM architecture.
Move it to arch/arm/config.mk.
To make sure gcc supports THUMB mode before beginning build,
run "checkthumb" during "archprepare".
Signed-off-by: Masahiro Yamada <[email protected]>
|
|
Kbuild brought about many advantages for us but a significant
performance regression was reported by Simon Glass.
After some discussions and analysis, it turned out
its main cause is in $(call cc-option,...).
Historically, U-Boot parses all config.mk
(arch/*/config.mk and board/*/config.mk)
every time descending into subdirectories.
That means cc-options are evaluated over and over again.
$(call cc-option,...) is useful but costly.
So we want to evaluate them only in ./Makefile
and spl/Makefile and export compiler flags.
This commit changes the build system as follows:
- Modify scripts/Makefile.build to not include config.mk
Instead, add $(PLATFORM_CPPFLAGS) to asflags-y, ccflags-y,
cppflags-y.
- Export many variables
Going forward, Kbuild will not parse config.mk files
when it descends into subdirectories.
If we want to set variables in config.mk and use them
in subdirectories, they must be exported.
This is the list of variables to get exported:
PLATFORM_CPPFLAGS
CPUDIR
BOARDDIR
OBJCOPYFLAGS
LDFLAGS
LDFLAGS_FINAL
(used in nand_spl/board/*/*/Makefile)
CONFIG_STANDALONE_LOAD_ADDR
(used in examples/standalone/Makefile)
SYM_PREFIX
(used in examples/standalone/Makefile)
RELFLAGS
(used in examples/standalone/Makefile)
- Delete CPPFLAGS
This variable has been replaced with PLATFORM_CPPFLAGS
- Copy gcclibdir from example/standalone/Makefile
to arch/sparc/config.mk
The reference in CONFIG_STANDALONE_LOAD_ADDR must be
resolved before it is exported.
Signed-off-by: Masahiro Yamada <[email protected]>
Reported-by: Simon Glass <[email protected]>
Acked-by: Simon Glass <[email protected]>
Tested-by: Simon Glass <[email protected]> [on Sandbox]
Tested-by: Stephen Warren <[email protected]> [on Tegra]
|
|
Before this commit, USE_PRIVATE_LIBGCC was defined in
arch-specific config.mk and referenced in
arch/$(ARCH)/lib/Makefile.
We are not happy about parsing config.mk again and again.
We have to keep the same behavior with a different way.
By adding "CONFIG_" prefix, this macro appears
in include/autoconf.mk, include/spl-autoconf.mk.
(And treating USE_PRIVATE_LIBGCC as CONFIG macro
is reasonable enough.)
Tegra SoC family defined USE_PRIVATE_LIBGCC as "yes"
in arch/arm/cpu/arm720t/tegra*/config.mk,
whereas did not define it in arch/arm/cpu/armv7/tegra*/config.mk.
It means Tegra enables PRIVATE_LIBGCC only for SPL.
We can describe the same behavior by adding
#ifdef CONFIG_SPL_BUILD
# define CONFIG_USE_PRIVATE_LIBGCC
#endif
to include/configs/tegra-common.h.
Signed-off-by: Masahiro Yamada <[email protected]>
Cc: Tom Warren <[email protected]>
Cc: Simon Glass <[email protected]>
Acked-by: Stephen Warren <[email protected]>
|
|
config.tmp is never generated
Signed-off-by: Masahiro Yamada <[email protected]>
Cc: Michal Simek <[email protected]>
Acked-by: Michal Simek <[email protected]>
|
|
U-Boot has compelled all boards to have
board/${BOARD}/ or board/${VENDOR}/${BOARD}/ directory.
Sometimes it does not seem suitable for some boards,
for example Sandbox. (Is it a board?)
And arcangel4 board has nothing to compile
under the board directory.
This commit makes the build system more flexible:
If '<none>' is given to the 6th column (=Board name) of boards.cfg,
Kbuild will not descend into the board directory.
Signed-off-by: Masahiro Yamada <[email protected]>
|