26 Feb, 2014
1 commit
-
Rename OBJCFLAGS to OBJCOPYFLAGS beforehand to use
"cmd_objcopy" in scripts/Makefile.lib in an upcoming commit.Signed-off-by: Masahiro Yamada
20 Feb, 2014
3 commits
-
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 -
Signed-off-by: Masahiro Yamada
25 Nov, 2013
1 commit
-
Signed-off-by: Masahiro Yamada
24 Jul, 2013
1 commit
-
Signed-off-by: Wolfgang Denk
[trini: Fixup common/cmd_io.c]
Signed-off-by: Tom Rini
13 Mar, 2013
1 commit
-
Refactor linker-generated array code so that symbols
which were previously linker-generated are now compiler-
generated. This causes relocation records of type
R_ARM_ABS32 to become R_ARM_RELATIVE, which makes
code which uses LGA able to run before relocation as
well as after.Note: this affects more than ARM targets, as linker-
lists span possibly all target architectures, notably
PowerPC.Conflicts:
arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds
arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds
arch/arm/cpu/armv7/omap-common/u-boot-spl.lds
board/ait/cam_enc_4xx/u-boot-spl.lds
board/davinci/da8xxevm/u-boot-spl-da850evm.lds
board/davinci/da8xxevm/u-boot-spl-hawk.lds
board/vpac270/u-boot-spl.ldsSigned-off-by: Albert ARIBAUD
27 Nov, 2012
2 commits
-
There is nothing really NAND-specific about this file.
Signed-off-by: Scott Wood
Cc: Andy Fleming -
It's arch code and not a driver, so move it where it belongs. When it
originally went into drivers/misc there was no 8xxx CPU directory.This will make new-SPL support a little easier since we can keep the CPU
stuff together and not need to pull stuff in from drivers/misc.Signed-off-by: Scott Wood
Cc: Andy Fleming
14 Nov, 2012
1 commit
-
Commit 97b24d3d51a92cb8c0c1e1a74abf22fe1a1807a3 "common: Add symbol
handling for generic lists into Makefile" introduced build errors in many
nand_spl targets, complaining of a missing u-boot.lst. When not doing an
out-of-tree build, $(obj) expands to nothing, so GCC ended up being given
-I with no argument (or rather, -ansi was the argument). The failure
didn't show up during a -j1 build because it was picking up the non-SPL
version of u-boot.lst.Signed-off-by: Scott Wood
22 Oct, 2012
1 commit
-
This patch adds essential components for generation of the contents of
the linker section that is used by the linker-generated array. All of
the contents is held in a separate file, u-boot.lst, which is generated
at runtime just before U-Boot is linked.The purpose of this code is to especially generate the appropriate
boundary symbols around each subsection in the section carrying the
linker-generated arrays. Obviously, the interim linker code for actual
placement of the variables into the section is generated too. The
generated file, u-boot.lst, is included into u-boot.lds via the linker
INCLUDE directive in u-boot.lds .Adjustments are made in the Makefile and spl/Makefile so that the
u-boot.lds and u-boot-spl.lds depend on their respective .lst files.Signed-off-by: Marek Vasut
Cc: Joe Hershberger
Cc: Mike Frysinger
Acked-by: Joe Hershberger
Tested-by: Joe Hershberger
16 Apr, 2011
1 commit
-
Modify eLBC based platform's NAND loader Makefile to preprocess nand loader
linker script and then use it.Signed-off-by: Dipen Dudhat
CC: Scott Wood
Signed-off-by: Kumar Gala
01 Apr, 2011
1 commit
-
Commit 6dc1ece "Introduce a new linker flag LDFLAGS_FINAL" modified a
number of Makefiles in a way that broke out-of-tree builds. The
problem was that $(nandobj) was used before it got defined.Fix this.
Signed-off-by: Wolfgang Denk
Signed-off-by: Scott Wood
23 Mar, 2011
1 commit
-
commit 8aba9dceebb14144e07d19593111ee3a999c37fc
Divides variable of linker flags to LDFLAGS-u-boot and LDFLAGSbreaks the usage of --gc-section to build nand_spl. We still need linker option
--gc-section for every uboot image, not only the main one. LDFLAGS_FINAL passes
the --gc-sections to each uboot image.To get the proper linker flags, we use LDFLAGS and LDFLAGS_FINAL to replace
PLATFORM_LDFLAGS in the Makefile of each nand_spl board.Signed-off-by: Scott Wood
Signed-off-by: Haiying Wang
12 Nov, 2010
1 commit
-
Introduce a SPL specific CONFIG_SYS_TEXT_BASE_SPL define to be used by
the linker. This has similiar semantics to CONFIG_SYS_TEXT_BASE however
since SPL is a unqiue image we introduce a new variable to control its
text base address.Signed-off-by: Haiying Wang
Signed-off-by: Kumar Gala
19 Oct, 2010
1 commit
-
The change is currently needed to be able to remove the board
configuration scripting from the top level Makefile and replace it by
a simple, table driven script.Moving this configuration setting into the "CONFIG_*" name space is
also desirable because it is needed if we ever should move forward to
a Kconfig driven configuration system.Signed-off-by: Wolfgang Denk
22 Apr, 2010
1 commit
-
As discussed on the list, move "arch/ppc" to "arch/powerpc" to
better match the Linux directory structure.Please note that this patch also changes the "ppc" target in
MAKEALL to "powerpc" to match this new infrastructure. But "ppc"
is kept as an alias for now, to not break compatibility with
scripts using this name.Signed-off-by: Stefan Roese
Acked-by: Wolfgang Denk
Acked-by: Detlev Zundel
Acked-by: Kim Phillips
Cc: Peter Tyser
Cc: Anatolij Gustschin
13 Apr, 2010
3 commits
-
Signed-off-by: Peter Tyser
-
Also move lib_$ARCH/config.mk to arch/$ARCH/config.mk
This change is intended to clean up the top-level directory structure
and more closely mimic Linux's directory organization.Signed-off-by: Peter Tyser
-
The CPUDIR variable points to the location of a target's CPU directory.
Currently, it is set to cpu/$CPU. However, using $CPUDIR will allow for
more flexibility in the future. It lays the groundwork for reorganizing
U-Boot's directory structure to support a layout such as:arch/$ARCH/cpu/$CPU/* (architecture with multiple CPU types)
arch/$ARCH/cpu/* (architecture with one CPU type)Signed-off-by: Peter Tyser
27 Oct, 2009
1 commit
-
We need to source files to exist in the O= nand_spl dir when
we build out of tree.Signed-off-by: Kumar Gala
30 Sep, 2009
1 commit
-
MPC8536E can support booting from NAND flash which uses the
image u-boot-nand.bin. This image contains two parts: a 4K
NAND loader and a main U-Boot image. The former is appended
to the latter to produce u-boot-nand.bin. The 4K NAND loader
includes the corresponding nand_spl directory, along with the
code twisted by CONFIG_NAND_SPL. The main U-Boot image just
like a general U-Boot image except the parts that included by
CONFIG_SYS_RAMBOOT.When power on, eLBC will automatically load from bank 0 the
4K NAND loader into the FCM buffer RAM where CPU can execute
the boot code directly. In the first stage, the NAND loader
copies itself to RAM or L2SRAM to free up the FCM buffer RAM,
then loads the main image from NAND flash to RAM or L2SRAM
and boot from it.This patch implements the NAND loader to load the main image
into L2SRAM, so the main image can configure the RAM by using
SPD EEPROM. In the first stage, the NAND loader copies itself
to the second to last 4K address space, and uses the last 4K
address space as the initial RAM for stack.Obviously, the size of L2SRAM shouldn't be less than the size
of the image used. If so, the workaround is to generate another
image that includes the code to configure the RAM by SPD and
load it to L2SRAM first, then relocate the main image to RAM
to boot up.Signed-off-by: Mingkai Hu
Signed-off-by: Kumar Gala