Commit graph

1261 commits

Author SHA1 Message Date
Heiko Schocher
435199f380 arm, davinci: add support for new spl framework
Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Scott Wood <scottwood@freescale.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2011-11-03 22:56:25 +01:00
Simon Glass
b5728756e8 sandbox: Adjust Makefile so that standalone/api are not built
The check for sandbox architecture is too early in the Makefile, so
standalone and api are built regardless. This moves the check until
after autoconf.mk has been read.

This fixes a build breakage.

Signed-off-by: Simon Glass <sjg@chromium.org>
2011-11-03 22:34:57 +01:00
Wolfgang Denk
cca4e4aec1 Reduce build times
U-Boot Makefiles contain a number of tests for compiler features etc.
which so far are executed again and again.  On some architectures
(especially ARM) this results in a large number of calls to gcc.

This patch makes sure to run such tests only once, thus largely
reducing the number of "execve" system calls.

Example: number of "execve" system calls for building the "P2020DS"
(Power Architecture) and "qong" (ARM) boards, measured as:
	-> strace -f -e trace=execve -o /tmp/foo ./MAKEALL <board>
	-> grep execve /tmp/foo | wc -l

	Before: After:	Reduction:
==================================
P2020DS 20555	15205	-26%
qong	31692	14490	-54%

As a result, built times are significantly reduced, typically by
30...50%.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Andy Fleming <afleming@gmail.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Cc: Albert Aribaud <albert.aribaud@free.fr>
cc: Graeme Russ <graeme.russ@gmail.com>
cc: Mike Frysinger <vapier@gentoo.org>
Tested-by: Graeme Russ <graeme.russ@gmail.com>
Tested-by: Matthias Weisser <weisserm@arcor.de>
Tested-by: Sanjeev Premi <premi@ti.com>
Tested-by: Simon Glass <sjg@chromium.org>
Tested-by: Macpaul Lin <macpaul@gmail.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-11-03 20:44:58 +01:00
Chandan Nath
f0f4b5ff50 ARM:AM33XX: Added timer support
This patch adds timer support for AM33xx platform.

Signed-off-by: Chandan Nath <chandan.nath@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
2011-10-27 21:56:36 +02:00
Simon Glass
2c0f79e44b fdt: Add support for a separate device tree (CONFIG_OF_SEPARATE)
This adds support for an FDT to be build as a separate binary file called
u-boot.dtb. This can be concatenated with the U-Boot binary to provide a
device tree located at run-time by U-Boot. The Makefile is modified to
provide this file in u-boot-dtb.bin.

Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-26 21:39:26 +02:00
Simon Glass
bbb0b128c3 fdt: Add support for embedded device tree (CONFIG_OF_EMBED)
This new option allows U-Boot to embed a binary device tree into its image
to allow run-time control of peripherals. This device tree is for U-Boot's
own use and is not necessarily the same one as is passed to the kernel.

The device tree compiler output should be placed in the $(obj)
rooted tree. Since $(OBJCOPY) insists on adding the path to the
generated symbol names, to ensure consistency it should be
invoked from the directory where the .dtb file is located and
given the input file name without the path.

This commit contains my entry for the ugliest Makefile / shell interaction
competition.

Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-26 21:38:59 +02:00
Mike Frysinger
4c34b2a090 autoconf.mk.dep: use target cflags, not host
The current autoconf.mk.dep rule uses the host cflags when executing the
target compiler (which includes target header files).  We don't want to
mix the target compiler and host compiler flags, so change it to CFLAGS.
Otherwise we get things like -pedantic which the U-Boot source code does
not build with.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-10-22 01:20:09 +02:00
Joel A Fernandes
4e4b21bd4e Makefile: Remove MLO on make clean
SPL builds could leave an MLO which is an mkimage of type omapimage
Make sure its deleted on make clean/distclean

Signed-off-by: Joel A Fernandes <joelagnel@ti.com>
2011-10-22 01:17:15 +02:00
Che-liang Chiou
349e83f071 examples: api: allow build with private libgcc
The examples/api is not configured with USE_PRIVATE_LIBGCC.  This makes
building examples/api break on certain boards that do not/cannot use the
public libgcc.

Nevertheless, this patch has to also touch the top-level Makefile to fix
this problem because the current top-level Makefile does not specify
libgcc as a prerequisite of examples/api, and explicitly builds
examples/api _before_ libgcc.

For testing this patch, I added the following to configs/seaboard.h and
ran demo.bin on a Seaboard.

+#define CONFIG_API
+#define CONFIG_SYS_MMC_MAX_DEVICE 2
+#define CONFIG_CMD_NET
+#define CONFIG_NET_MULTI

Signed-off-by: Che-Liang Chiou <clchiou@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-10-22 00:40:06 +02:00
stany MARCEL
f6ef7428ed ColdFire: Clean Makefile _config rules
Remove unused mkdir, and add missing ones.

Signed-off-by: Stany MARCEL <stany.marcel@novasys-ingenierie.com>
2011-10-19 00:35:05 +08:00
stany MARCEL
96d94385a7 ColdFire: Move boards with simple _config rules to boards.cfg
Signed-off-by: Stany MARCEL <stany.marcel@novasys-ingenierie.com>
2011-10-19 00:34:57 +08:00
stany MARCEL
327474f854 ColdFire: Merge differentiated linking files into a sigle one by board
The spa, stm, int, 32 and 16 linking files are identical so there is
no need to differentiate them. A single lds file is now used, and
_config rule are simplified.

Signed-off-by: Stany MARCEL <stany.marcel@novasys-ingenierie.com>
2011-10-19 00:13:39 +08:00
Simon Glass
efb2172ece Move timestamp and version files into 'generated' subdir
There is a rather subtle build problem where the build time stamp is not
updated for out-of-tree builds if there exists an in-tree build which
has a valid timestamp file. So if you do an in-tree build, then an
out-of-tree build your timestamp will not change.

The correct timestamp_autogenerated.h lives in the object tree, but it
is not always found there. The source still lives in the source tree and
when compiling version.h, it includes timestamp_autogenerated.h. Since
the current directory is always searched first, this will come from the
source tree rather than the object tree if it exists there. This affects
dependency generation also, which means that common/cmd_version.o will not
even be rebuilt if you have ever done an in-tree build.

A similar problem exists with the version file.

This change moves both files into the 'generated' subdir, which is already
used for asm-offsets.h. Then timestamp.h and version.h are updated to
include the files from there.

There are other places where these generated files are included, but I
cannot see why these don't just use the timestamp.h and version.h headers.
So this change also tidies that up.

I have tested this with in- and out-of-tree builds, but not SPL. I have
looked at various other options for fixing this, including sed on the dep
files, -I- and -include flags to gcc, but I don't think they can be made
to work. Comments welcome.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-10-17 23:57:00 +02:00
Simon Glass
86eb49b3e5 sandbox: Makefile changes to build sandbox architecture
At this point U-Boot will build and run on x86 under Linux.

The idea is to define a new architecture called 'sandbox', alongside ARM
and x86. This runs natively on Linux to suit the host machine. All
hardware access is either omitted or emulated.

The purpose of this system is to test the bulk of the non-hardware-specific
U-Boot code. We can mock the SPI flash, GPIOs, UART and keyboard, then test
that U-Boot behaves as we wish.

Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17 23:56:59 +02:00
Simon Glass
4750884306 Adjust dependency rules to permit per-file flags
The dependency rules are currently done in a shell 'for' loop. This does not
permit Makefile variables to adjust preprocessor flags as is done with normal
compile flags, using the CFLAGS_path/file.o syntax.

This change moves the dependency generation into the Makefile itself, and
permits a CPPFLAGS_path/file.o to adjust preprocessor flags on a file or
directory basis.

The CPPFLAGS_... variable is also folded into CFLAGS during the build.

Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17 23:56:59 +02:00
Simon Glass
711523958f sandbox: Disable standalone/API support
This is not useful on the sandbox architecture since we can simply link all
our code with U-Boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
2011-10-17 23:56:57 +02:00
Loïc Minier
a76406fb05 Safer timestamp_autogenerated.h generation
Generate timestamp_autogenerated.h as safely as version_autogenerated.h.

Cc: patches@linaro.org
Signed-off-by: Loïc Minier <loic.minier@linaro.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-10-06 20:20:15 +02:00
Loïc Minier
249b53a612 Build timestamp_autogenerated.h without config
Tools such as mkimage include version information but are
config-agnostic; build timestamp_autogenerated.h even when config.mk
isn't generated to fix "make tools" build failure:
gcc [...] -o mkimage.o mkimage.c -c
In file included from include/version.h:27:0, from mkimage.c:26:
include/timestamp.h:27:37: fatal error: timestamp_autogenerated.h: No
such file or directory

Cc: patches@linaro.org
Signed-off-by: Loïc Minier <loic.minier@linaro.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
2011-10-06 20:19:42 +02:00
Stefano Babic
cc9abfe4ce Makefile: remove mx31pdk exception
An entry in the main Makefile for the mx31pdk board is not
necessary, and the board is added to boards.cfg as all
other targets.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Wolfgang Denk <wd@denx.de>
2011-10-05 22:03:09 +02:00
Stefano Babic
646ad9e705 Makefile: drop imx31_phycore from general Makefile
Signed-off-by: Stefano Babic <sbabic@denx.de>
2011-10-05 22:03:09 +02:00
Stefano Babic
34f4f042f7 Makefile: remove tx25 exception
An entry in the main Makefile for the tx25 board is not
necessary, and the board is added to boards.cfg as all
other targets.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Wolfgang Denk <wd@denx.de>
2011-10-05 22:03:09 +02:00
York Sun
d29d17d7ba powerpc/mpc83xx: Migrate from spd_sdram to unified DDR driver
Unified DDR driver is maintained for better performance, robustness and bug
fixes. Upgrading to use unified DDR driver for MPC83xx takes advantage of
overall improvement. It requires changes for board files to customize
platform-dependent parameters.

To utilize the unified DDR driver, a board needs to define CONFIG_FSL_DDRx
in the header file. No more boards will be accepted without such definition.

Note: the workaround for erratum DDR6 for the very old MPC834x Rev 1.0/1.1
and MPC8360 Rev 1.1/1.2 parts is not migrated to unified driver.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2011-09-29 19:01:06 -05:00
Kumar Gala
c916d7c914 powerpc/85xx: Add support for FMan ethernet in Independent mode
The Frame Manager (FMan) on QorIQ SoCs with DPAA (datapath acceleration
architecture) is the ethernet contoller block.  Normally it is utilized
via Queue Manager (Qman) and Buffer Manager (Bman).  However for boot
usage the FMan supports a mode similar to QE or CPM ethernet collers
called Independent mode.

Additionally the FMan block supports multiple 1g and 10g interfaces as a
single entity in the system rather than each controller being managed
uniquely.  This means we have to initialize all of Fman regardless of
the number of interfaces we utilize.

Different SoCs support different combinations of the number of FMan as
well as the number of 1g & 10g interfaces support per Fman.

We add support for the following SoCs:
 * P1023 - 1 Fman, 2x1g
 * P4080 - 2 Fman, each Fman has 4x1g and 1x10g
 * P204x/P3041/P5020 - 1 Fman, 5x1g, 1x10g

Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Roy Zang <tie-fei.zang@freescale.com>
Signed-off-by: Dai Haruki <dai.haruki@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Ioana Radulescu <ruxandra.radulescu@freescale.com>
Signed-off-by: Lei Xu <B33228@freescale.com>
Signed-off-by: Mingkai Hu <Mingkai.hu@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Shaohui Xie <b21989@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
2011-09-29 19:01:05 -05:00
Wolfgang Denk
1d5e7fb403 Prepare v2011.09
Signed-off-by: Wolfgang Denk <wd@denx.de>
2011-09-29 21:11:15 +02:00
Wolfgang Denk
bc196029f5 Prepare v2011.09-rc2
Signed-off-by: Wolfgang Denk <wd@denx.de>
2011-09-22 21:58:05 +02:00
Wolfgang Denk
6ceb0135f9 Prepare v2011.09
Signed-off-by: Wolfgang Denk <wd@denx.de>
2011-09-11 21:31:04 +02:00
Stefano Babic
a4814a69d3 Makefile : fix generation of cpu related asm-offsets.h
commit 0edf8b5b2f breaks
building on a different directory with the O= parameter.
The patch wil fix this issue, generating always asm-offsets.h before
the other targets.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Matthias Weisser <weisserm@arcor.de>
CC: Wolfgang Denk <wd@denx.de>
2011-09-07 21:41:27 +02:00
Wolfgang Denk
684cad5717 Merge branch 'master' of git://git.denx.de/u-boot-coldfire
* 'master' of git://git.denx.de/u-boot-coldfire:
  ColdFire:Clean up the CONFIG_STANDALONE_LOAD_ADDR usage
  ColdFire:Add mb for 5253 dram initialization
  ColdFire:Define the DM9000 byteswap for M5253 board.
  ColdFire:Update the env settings for several boards.
  ColdFire:disable the NFS define for 52277 board.
  ColdFire:Update the timer_init since it was unified.
  ColdFire: Cleanup for partial linking and --gc-sections
  ColdFire: Update compile flags for each CPUs
  ColdFire:Fix the configuration broken for some boards.
2011-09-04 22:53:04 +02:00
Jason Jin
b823c8cda0 ColdFire:Fix the configuration broken for some boards.
Some typoes in Makefile and boards.cfg make the M54455 board
and M53017 board configuration broken.

Signed-off-by: Jason Jin <Jason.jin@freescale.com>
2011-09-04 22:46:54 +08:00
Wolfgang Denk
6ea2405489 ARM: remove broken "netstar" board
Signed-off-by: Wolfgang Denk <wd@denx.de>
2011-09-04 11:36:14 +02:00
Wolfgang Denk
716f7ade10 ARM: remove broken "edb93xx" boards
Remove edb9301, edb9302, edb9302a, edb9307, edb9307a, edb9312,
edb9315 and edb9315a boards.

Signed-off-by: Wolfgang Denk <wd@denx.de>
2011-09-04 11:36:13 +02:00
Linus Walleij
23b3ae0fe8 integrator: convert to new build system
This deletes the integrator split_by_variant.sh script and
defines a number of unique board types for the core modules
that are meaningful to support for the Integrator AP/CP, i.e.
the ones that did not just say "unsupported core module" in
split_by_variant.sh. If more core modules need to be supported
they are easy to add.

We delete all the old cruft in Makefile and MAKEALL that was
working around the old way of building boards. We create a
unique config file per board to satisfy the build system, but
they are just oneliners that include the existing
integratorap.h and integratorcp.h configs.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2011-09-03 22:40:46 +02:00
Thomas Petazzoni
5cfeec5125 atmel: Update support of board AT91SAM9M10G45-EK to new style
Based on earlier work by Alex Waterman <awaterman@dawning.com>.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-09-03 22:40:45 +02:00
Asen Dimov
eb6e608b32 make pm9g45 buildable for v2011.06 release
Signed-off-by: Asen Chavdarov Dimov <dimov@ronetix.at>
Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>

changed at91_serial_hw_init to at91_seriald_hw_init
2011-09-03 22:40:45 +02:00
Thomas Petazzoni
65b0f87a80 tny_a9260/tny_a9g20: update board to the new AT91 organization
Cc: Albin Tonnerre <tonnerrealbin@gmail.com>
CC: Gregory Hermant <gregory.hermant@calao-systems.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-09-03 22:40:44 +02:00
Thomas Petazzoni
6785c7c84a sbc35_a9g20: update board to the new AT91 organization
Cc: Albin Tonnerre <tonnerrealbin@gmail.com>
Cc: Gregory Hermant <gregory.hermant@calao-systems.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>

Removed SBC35 from MAKEALL
2011-09-03 22:40:44 +02:00
Stefano Babic
d388298a59 ARM: versatile: fix board support
Versatile board is used as example to run u-boot under qemu.
The patch fixes relocation for all versatile boards and adds
a versatileqemu target to be used under qemu.

Patch tested only under qemu, not on real boards.
Tested with QEMU emulator version 0.14.50.

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Alessandro Rubini  <rubini-list@gnudd.com>
CC: Loïc Minier <loic.minier@linaro.org>
2011-08-04 13:12:44 +02:00
Xu, Hong
cd46b0f2b9 AT91: Makes AT91SAM9263-EK build correctly against u-boot-atmel/master
Rework for AT91SAM9263-EK, makes it build again.
Based on the work for AT91SAM9260-EK.

Signed-off-by: Hong Xu <hong.xu@atmel.com>
Signed-off-by: Reinhard Meyer <uboot@emk-elektronik.de>
2011-08-03 13:00:56 +02:00
Xu, Hong
f7aea46d6a AT91: Board fix for AT91SAM9261-EK
Fix board part of AT91SAM9261-EK according to the new scheme

Signed-off-by: Hong Xu <hong.xu@atmel.com>
Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
2011-08-03 13:00:56 +02:00
Xu, Hong
21d671d0c4 AT91: Makes AT91SAM9RL-EK build correctly against u-boot-atmel/master
Rework for AT91SAM9RL-EK, makes it build again.
Based on the work for AT91SAM9260-EK.
V4: added changes to MAKEALL

Signed-off-by: Hong Xu <hong.xu@atmel.com>
Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
2011-08-03 13:00:56 +02:00
Wolfgang Denk
1902692aa0 Merge branch 'master' of git://git.denx.de/u-boot-blackfin
* 'master' of git://git.denx.de/u-boot-blackfin:
  Blackfin: jtag-console: fix timer usage
  Blackfin: switch to common display_options()
  Blackfin: serial: move early debug strings into .rodata section
  Blackfin: adi boards: also set stderr to nc with helper
  Blackfin: update anomaly lists to latest public info
  Blackfin: serial: convert to bfin_{read,write} helpers
  Blackfin: split out async setup
  Blackfin: adi boards: enable pretty flash progress output
  Blackfin: drop unused dma.h header from start code
  Blackfin: portmux: allow header to be included in assembly files
  Blackfin: cm-bf537e/cm-bf537u/tcm-bf537: enable mmc_spi support
  Blackfin: cm-bf537e/cm-bf537u/tcm-bf537: update network settings
  Blackfin: sync MMR read/write helpers with Linux
  Blackfin: gpio: optimize free path a little
  Blackfin: post: setup default CONFIG_SYS_POST_WORD_ADDR
  Blackfin: uart: fix printf warning
  Blackfin: add init.elf helper code
  Blackfin: dont reset SWRST on newer bf526 parts
  Blackfin: adi boards: enable multi serial support by default
  Blackfin: uart: add multiple serial support
  Blackfin: uart: move debug buffers into local bss
2011-08-02 21:46:53 +02:00
aneeshv
3857f8f5a5 Correct ih_os for u-boot.img
Provide appropriate '-O u-boot' while doing mkimage
for u-boot.img

Signed-off-by: Aneesh V <aneesh@ti.com>
2011-07-28 17:17:36 +02:00
Heiko Schocher
7816f2cf81 mkimage: add UBL header support for booting davinci cpus
creating an u-boot.ubl file, which contains the UBL Header
needed for booting from NAND with the RBL from TI. For more
information read doc/README.ublimage.

Signed-off-by: Heiko Schocher <hs@denx.de>
2011-07-28 16:52:41 +02:00
Horst Kronstorfer
857d9ea67a Let source cross-reference targets follow symbolic links
Tell 'find' to follow symbolic links, so that files under include/asm
and arch/$(ARCH)/include/asm/arch are added to the indexing file list.

Signed-off-by: Horst Kronstorfer <hkronsto@frequentis.com>
Acked-by: Detlev Zundel <dzu@denx.de>
2011-07-28 16:30:52 +02:00
Mike Frysinger
14ce91b115 fix unconfigured out-of-tree building of tools
Now that the tools target requires the generated version header file, we
need to make sure that the directory it writes to exists.  In a configured
tree, this is taken care of for us.  But in an unconfigured one, the dir
does not yet exist causing a build error like so:

/bin/sh: line 5: ..../u-boot_build/include/version_autogenerated.h.tmp: No such file or directory

So create the dir for this file before we attempt to generate it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-26 16:55:20 +02:00
Mike Frysinger
afd077bd14 simplify clobber behavior with out-of-tree builds
The targets/prerequisites are the same here; the rules only differ in
the recipes.  So move the if logic protection to the recipe part so we
can keep the rest the same.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-26 16:53:23 +02:00
Daniel Schwierzeck
5df2ee27db Hook SPL build-system into toplevel Makefile
Signed-off-by: Aneesh V <aneesh@ti.com>
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
2011-07-26 14:43:04 +02:00
Daniel Schwierzeck
c8f9c302c2 Extend build-system for SPL framework
Signed-off-by: Aneesh V <aneesh@ti.com>
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
2011-07-26 14:42:40 +02:00
Daniel Schwierzeck
4e0fbb98fc Use ALL-y style instead of ifeq blocks for better readability
Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
2011-07-26 14:41:43 +02:00
Mike Frysinger
fb5166ce35 Blackfin: add init.elf helper code
This creates a standalone ELF that executes just the Blackfin initcode.
This is useful for people who want to program the low level aspects of
the CPU (memory/clocks/etc...) and can easily be used with JTAG for
quick booting while developing.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2011-07-12 02:17:45 -04:00