26 Feb, 2014
7 commits
-
This commit avoids generating ./SPL twice.
- Fist time descending to spl/
- Second time as a prerequisite of u-boot-with-spl.imx,
u-boot-with-nand-spl.imx.Signed-off-by: Masahiro Yamada
-
Signed-off-by: Masahiro Yamada
-
Signed-off-by: Masahiro Yamada
-
Signed-off-by: Masahiro Yamada
-
Signed-off-by: Masahiro Yamada
-
Signed-off-by: Masahiro Yamada
Acked-by: Simon Glass -
Rename OBJCFLAGS to OBJCOPYFLAGS beforehand to use
"cmd_objcopy" in scripts/Makefile.lib in an upcoming commit.Signed-off-by: Masahiro Yamada
24 Feb, 2014
1 commit
-
Commit 6825a95 (kbuild: use Linux Kernel build scripts)
changed the behavior of linkage when USE_PRIAVATE_LIBGCC
is defined as "yes".
(It dropped arch/arm/lib/eabi_compat.o from the
target library.)Affected boards are all Tegra boards.
This commit gets back the same behavior as before Kbuild series.
Signed-off-by: Masahiro Yamada
Cc: Tom Warren
Cc: Tom Rini
20 Feb, 2014
9 commits
-
This commit refactors rules of directory descending
and defines u-boot-dirs and u-boot-all-dirs.
(We will need u-boot-all-dirs when using
scripts/Makefile.clean)Additionally, rename LIBS-y to libs-y.
Signed-off-by: Masahiro Yamada
-
Before this commit, {spl,tpl}-autoconf.mk was always generated
at the top Makefile even if SPL(TPL) build was not selected.This commit moves the build rule of {spl,tpl}-autoconf.mk
from the top Makefile to spl/Makefile.
It prevents unnecessary {spl,tpl}-autoconf.mk from being
generated.Signed-off-by: Masahiro Yamada
-
This commit changes the location of include directives
of board configuration files.The purpose of this change is:
- Slim down $(TOPDIR)/config.mk
- Prevent $(TOPDIR)/Makefile from including the same
configuration file twice
- Do not include include/config.mk multiple times
because ARCH, CPU, BOARD, VENDOR, SOC are exportedBefore this commit:
- include/autoconf.mk was included from $(TOPDIR)/Makefile
and $(TOPDIR)/config.mk
(This means $(TOPDIR)/Makefile included include/autoconf.mk twice)- include/{spl,tpl}-autoconf.mk was included from $(TOPDIR)/config.mk
- include/config.mk was included from $(TOPDIR)/Makefile
and $(TOPDIR)/config.mk
(This means $(TOPDIR)/Makefile included include/config.mk twice)After this commit:
- include/autoconf.mk is included from $(TOPDIR)/Makefile
and $(TOPDIR)/scripts/Makefile.build- include/{spl,tpl}-autoconf.mk is included from $(TOPDIR)/spl/Makefile
and $(TOPDIR)/scripts/Makefile.build- include/config.mk is included from $(TOPDIR)/config.mk and
$(TOPDIR)/spl/MakefileSigned-off-by: Masahiro Yamada
-
Now we are ready to switch over to real Kbuild.
This commit disables temporary scripts:
scripts/{Makefile.build.tmp, Makefile.host.tmp}
and enables real Kbuild scripts:
scripts/{Makefile.build,Makefile.host,Makefile.lib}.This switch is triggered by the line in scripts/Kbuild.include
-build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build.tmp obj
+build := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.build objWe need to adjust some build scripts for U-Boot.
But smaller amount of modification is preferable.Additionally, we need to fix compiler flags which are
locally added or removed.In Kbuild, it is not allowed to change CFLAGS locally.
Instead, ccflags-y, asflags-y, cppflags-y,
CFLAGS_$(basetarget).o, CFLAGS_REMOVE_$(basetarget).o
are prepared for that purpose.Signed-off-by: Masahiro Yamada
Tested-by: Gerhard Sittig -
This commit changes the working directory
where the build process occurs.Before this commit, build process occurred under the source
tree for both in-tree and out-of-tree build.That's why we needed to add $(obj) prefix to all generated
files in makefiles like follows:
$(obj)u-boot.bin: $(obj)u-bootHere, $(obj) is empty for in-tree build, whereas it points
to the output directory for out-of-tree build.And our old build system changes the current working directory
with "make -C " syntax when descending into the
sub-directories.On the other hand, Kbuild uses a different idea
to handle out-of-tree build and directory descending.The build process of Kbuild always occurs under the output tree.
When "O=dir/to/store/output/files" is given, the build system
changes the current working directory to that directory and
restarts the make.Kbuild uses "make -f $(srctree)/scripts/Makefile.build obj="
syntax for descending into sub-directories.
(We can write it like "make $(obj)=" with a shorthand.)
This means the current working directory is always the top
of the output directory.Signed-off-by: Masahiro Yamada
Tested-by: Gerhard Sittig -
Some flags are used for SPL (and TPL) build only.
This commit moves them from config.mk to spl/Makefile.Signed-off-by: Masahiro Yamada
-
This commit adjusts some files to use Kbuild.include.
- Use cc-option defined in Kbuild.include
(Delete cc-option in config.mk)
- Use cc-version defined in
(Delete cc-version in config.mk)
- Move binutils-version and dtc-version to Kbuild.include
by analogy to cc-versionThis commit also adds srctree (same as SRCTREE)
to use Kbuild scripts.Signed-off-by: Masahiro Yamada
-
Some Samsung boards have their own tools under board/samsung//tools/.
This commit refactor more makefiles with "hostprogs-y".Signed-off-by: Masahiro Yamada
-
Before this commit, makefiles under tools/ directory
were implemented with their own way.This commit refactors them by using "hostprogs-y" variable.
Several C sources have been added to wrap other C sources
to simplify Makefile.
For example, tools/crc32.c includes lib/crc32.cSigned-off-by: Masahiro Yamada
19 Feb, 2014
1 commit
-
Add spl_sata to read a fat partition from a bootable SATA
drive.Signed-off-by: Dan Murphy
Reviewed-by: Roger Quadros
25 Jan, 2014
1 commit
-
Add SPL support to be able to detect a USB Mass Storage device
connected to a USB host. Once a USB Mass storage device is detected
the SPL will load the u-boot.img from a FAT partition to target address.Signed-off-by: Dan Murphy
22 Jan, 2014
1 commit
-
Using the TPL method for nand boot by sram was already
supported. Here add some code for mpc85xx ifc nand boot.- For ifc, elbc, esdhc, espi, all need the SPL without
section .resetvec.
- Use a clear function name for nand spl boot.
- Add CONFIG_SPL_DRIVERS_MISC_SUPPORT to compile the fsl_ifc.c
in spl/Makefile;Signed-off-by: Po Liu
Acked-by: Scott Wood
Reviewed-by: York Sun
14 Jan, 2014
1 commit
-
Some targets will build fine but not boot if sections .hash and
.got.plt are not present in the binary. Add them back.Also, Exynos machines require .machine_param section in SPL.
Add it.Signed-off-by: Albert ARIBAUD
Tested-by: Rajeshwari S Shinde
10 Jan, 2014
1 commit
-
Bringing in the MMC tree means that CONFIG_BOUNCE_BUFFER needed to be
added to include/configs/exynos5-dt.h now.Conflicts:
include/configs/exynos5250-dt.hSigned-off-by: Tom Rini
30 Dec, 2013
1 commit
-
When variable size SPL is used, the BL1 expects the SPL to be
encapsulated differently: instead of putting the checksum at a fixed
offset in the SPL blob, prepend the blob with a header including the
size and the checksum.The enhancements include
- adding a command line option, '--vs' to indicate the need for the
variable size encapsulation
- padding the fixed size encapsulated blob with 0xff instead of random
memory contents
- do not silently truncate the input file, report error instead
- no need to explicitly closing files/freeing memory, this all happens
on exit; removing cleanups it makes code clearer
- profuse commenting
- modify Makefile to allow enabling the new feature per boardSigned-off-by: Vadim Bendebury
Signed-off-by: Rajeshwari S Shinde
Acked-by: Simon Glass
Signed-off-by: Minkyu Kang
16 Dec, 2013
1 commit
-
Convert like follows:
CPU mpc83xx -> CONFIG_MPC83xx
CPU mpc85xx -> CONFIG_MPC85xx
CPU mpc86xx -> CONFIG_MPC86xx
CPU mpc5xxx -> CONFIG_MPC5xxx
CPU mpc8xx -> CONFIG_8xx
CPU mpc8260 -> CONFIG_8260
CPU ppc4xx -> CONFIG_4xx
CPU x86 -> CONFIG_X86
ARCH x86 -> CONFIG_X86
ARCH powerpc -> CONFIG_PPCSigned-off-by: Masahiro Yamada
13 Dec, 2013
4 commits
-
Signed-off-by: Masahiro Yamada
-
Before this commit, output files under tpl/ directry
were not ignored.
This commit fixes this problem.And we have only one source file under spl/ directory:
spl/MakefileSo, we can describe .gitignore more simply.
Signed-off-by: Masahiro Yamada
-
Signed-off-by: Masahiro Yamada
-
Some editors such as Emacs can highlight source files.
But their parser algorithm is not perfect.If you use one double-quotation alone, some editor cannot
handle it nicely and mark source lines as a string by mistake.It is preferable to use two double-quotations as a pair.
Signed-off-by: Masahiro Yamada
26 Nov, 2013
1 commit
-
Freescale DDR driver has been used for mpc83xx, mpc85xx, mpc86xx SoCs.
The similar DDR controllers will be used for ARM-based SoCs.Signed-off-by: York Sun
18 Nov, 2013
4 commits
-
Signed-off-by: Masahiro Yamada
Cc: Simon Glass
Acked-by: Simon Glass -
Signed-off-by: Masahiro Yamada
-
Signed-off-by: Masahiro Yamada
-
Signed-off-by: Masahiro Yamada
01 Nov, 2013
6 commits
-
We have converted all makefiles needed to build $(LIBS).
Until this commit we used to grep switch so that U-Boot style
and Kbuild style makefiles coexist.
But we do not need any more.Goint forward, use always Kbuild style Makefile when adding
a new MakefileSigned-off-by: Masahiro Yamada
-
This patch moves S5PC, EXYNOS specific directory entries
from the toplevel Makefile to arch/arm/cpu/armv7/Makefile
using Kbuild descending feature.Signed-off-by: Masahiro Yamada
Cc: Minkyu Kang -
This patch moves OMAP specific directory entries
from the toplevel Makefile and spl/Makefile
to arch/arm/cpu/armv7/Makefile using Kbuild descending feature.Signed-off-by: Masahiro Yamada
Cc: Tom Rini -
This patch moves Tegra specific directory entries
from the toplevel Makefile and spl/Makefile
to arch/arm/cpu/*/Makefile using Kbuild descending feature.Signed-off-by: Masahiro Yamada
Cc: Tom Warren -
Multiple targets are included in arch/arm/imx-common/Makefile
In order to refactor it,
we need to tweak Makefile and spl/Makefile.Signed-off-by: Masahiro Yamada
-
Every makefile in sub directories has common lines
at the top and the bottom.
This commit pushes the common parts into script/Makefile.build.Going forward sub-makefiles only need to describe this part:
COBJS := ...
COBJS += ...
SOBJS := ...But using obj-y is preferable to prepare for switching to Kbuild.
The conventional (non-Kbuild) Makefile style is still supported.
This is achieved by greping the Makefile before entering into it.
U-Boot conventional sub makefiles always include some other makefiles.
So the build system searches a line beginning with "include" keyword
in the makefile in order to distinguish which style it is.
If the Makefile include a "include" line, we assume it is a conventional
U-Boot style. Otherwise, it is treated as a Kbuild-style makefile.With this tweak, we can switch sub-makefiles
from U-Boot style to Kbuild style little by little.obj-y := foo/
syntax (descending into the sub directory) is not supportd yet.
It will be implemented in the upcomming commit.Signed-off-by: Masahiro Yamada
Cc: Simon Glass
Cc: Tom Rini
20 Sep, 2013
1 commit
-
We may need to access the PMIC code in SPL, when we have power set.
Signed-off-by: Tom Rini