project/bcm63xx/u-boot.git
13 years agomkimage: adding support for Davinci AIS image
Stefano Babic [Mon, 17 Oct 2011 00:07:43 +0000 (00:07 +0000)]
mkimage: adding support for Davinci AIS image

Some Davinci processors supports the Application
Image Script (AIS) boot process. The patch adds the generation
of the AIS image inside the mkimage tool to make possible
to generate a bootable U-boot without external tools
(TI Davinci AIS Generator).

Signed-off-by: Stefano Babic <sbabic@denx.de>
CC: Wolfgang Denk <wd@denx.de>
13 years agonet: xilinx_enet: drop unused !NET_MULTI driver
Mike Frysinger [Sun, 16 Oct 2011 20:04:13 +0000 (16:04 -0400)]
net: xilinx_enet: drop unused !NET_MULTI driver

This driver doesn't support the NET_MULTI framework, and I can't find
any boards/configs/files that reference this subdir, so punt it all.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
13 years agonet: sc589: drop unused !NET_MULTI driver
Mike Frysinger [Sun, 16 Oct 2011 10:04:12 +0000 (10:04 +0000)]
net: sc589: drop unused !NET_MULTI driver

No boards appear to use this driver, and it doesn't support NET_MULTI,
so punt the old driver.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
13 years agonet: s3c4510b_eth: drop unused !NET_MULTI driver
Mike Frysinger [Sun, 16 Oct 2011 10:04:11 +0000 (10:04 +0000)]
net: s3c4510b_eth: drop unused !NET_MULTI driver

No boards appear to use this driver, and it doesn't support NET_MULTI,
so punt the old driver.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
13 years agonet: ns9750: drop !NET_MULTI driver
Mike Frysinger [Sun, 16 Oct 2011 10:04:10 +0000 (10:04 +0000)]
net: ns9750: drop !NET_MULTI driver

Only one board uses this driver (ns9750dev), but the board doesn't seem
to have an entry to actually build it in the Makefile/boards.cfg, so just
delete net support from its board config.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
13 years agonet: enc28j60_lpc2292: drop unused !NET_MULTI driver
Mike Frysinger [Sun, 16 Oct 2011 20:04:09 +0000 (16:04 -0400)]
net: enc28j60_lpc2292: drop unused !NET_MULTI driver

Everyone seems to have converted to the new enc28j60 driver, so drop
this older one which isn't used and doesn't support NET_MULTI.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
13 years agopowerpc/lib/board.c: Call run_post(POST_ROM) before relocating
Bernhard Kaindl [Sun, 16 Oct 2011 00:07:08 +0000 (00:07 +0000)]
powerpc/lib/board.c: Call run_post(POST_ROM) before relocating

The call to run_post(POST_ROM) which can run the POST memory test
is currently called too late when gd has already been copied to DRAM.

This results in failure to boot Linux after a POST_ROM memory test
tested all RAM while gd was already relocated to DRAM due to gd being
overwritten by the POST_ROM memory test.

Support this by moving the call to run_post(POST_ROM) to run earlier,
before U-Boot has started to move data to DRAM (from late board_init_f
to early board_init_f) where DRAM is initialized, but not used yet.

This allows that an POST memory test can test the whole DRAM,
including the area where the board info struct is located.

Signed-off-by: Bernhard Kaindl <bernhard.kaindl@thalesgroup.com>
Cc: Pieter Voorthuijsen <pieter.voorthuijsen@prodrive.nl>
13 years agonet/dns.c: Fix endian conversion for big-endian in dns command
Bernhard Kaindl [Sat, 15 Oct 2011 23:59:22 +0000 (23:59 +0000)]
net/dns.c: Fix endian conversion for big-endian in dns command

net/dns.c used endian conversion macros wrongly (shorts in reply
were put swapped into CPU, and then ntohs() was used to swap it
back, which broke on big-endian).

Fix this by using the correct linux conversion macro for reading
a unaligned short in network byte order: get_unaligned_be16()
Thanks to Mike Frysinger pointing at the best macro to use.

Tested on big and little endian qemu boards (mips and versatile)

Signed-off-by: Bernhard Kaindl <bernhard.kaindl@thalesgroup.com>
Cc: Pieter Voorthuijsen <pieter.voorthuijsen@prodrive.nl>
Cc: Robin Getz <rgetz@blackfin.uclinux.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agox86: Use getenv_ulong() in place of getenv(), strtoul
Simon Glass [Thu, 13 Oct 2011 14:43:14 +0000 (14:43 +0000)]
x86: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agosparc: Use getenv_ulong() in place of getenv(), strtoul
Simon Glass [Thu, 13 Oct 2011 14:43:13 +0000 (14:43 +0000)]
sparc: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agopowerpc: Use getenv_ulong() in place of getenv(), strtoul
Simon Glass [Thu, 13 Oct 2011 14:43:12 +0000 (14:43 +0000)]
powerpc: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Stefan Roese <sr@denx.de>
13 years agomips: Use getenv_ulong() in place of getenv(), strtoul
Simon Glass [Thu, 13 Oct 2011 14:43:11 +0000 (14:43 +0000)]
mips: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agomicroblaze: Use getenv_ulong() in place of getenv(), strtoul
Simon Glass [Thu, 13 Oct 2011 14:43:10 +0000 (14:43 +0000)]
microblaze: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agom68k: Use getenv_ulong() in place of getenv(), strtoul
Simon Glass [Thu, 13 Oct 2011 14:43:09 +0000 (14:43 +0000)]
m68k: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agoblackfin: Use getenv_ulong() in place of getenv(), strtoul
Simon Glass [Thu, 13 Oct 2011 14:43:08 +0000 (14:43 +0000)]
blackfin: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agoavr32: Use getenv_ulong() in place of getenv(), strtoul
Simon Glass [Thu, 13 Oct 2011 14:43:07 +0000 (14:43 +0000)]
avr32: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agoarm: Use getenv_ulong() in place of getenv(), strtoul
Simon Glass [Thu, 13 Oct 2011 14:43:06 +0000 (14:43 +0000)]
arm: Use getenv_ulong() in place of getenv(), strtoul

This changes the board code to use the new getenv_ulong() function.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agoAdd getenv_ulong() to read an integer from an environment variable
Simon Glass [Fri, 14 Oct 2011 13:25:18 +0000 (13:25 +0000)]
Add getenv_ulong() to read an integer from an environment variable

This is not an uncommon operation in U-Boot, so let's put it in a common
function.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agocommon: fix missing function pointer relocation in fixup_cmdtable()
Daniel Schwierzeck [Tue, 18 Oct 2011 11:12:22 +0000 (11:12 +0000)]
common: fix missing function pointer relocation in fixup_cmdtable()

In commit fa28bd2eef588ec2048ccafedb2b384d5a355858 patch v1 was applied
instead of v2. This is an incremental patch to update that commit
to version 2.

Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
13 years agonet: emaclite: Move RX/TX ping pong initialization to
Michal Simek [Wed, 12 Oct 2011 23:23:22 +0000 (23:23 +0000)]
net: emaclite: Move RX/TX ping pong initialization to

Init RX/TX ping pong directly from board not in the driver.

Signed-off-by: Michal Simek <monstr@monstr.eu>
13 years agonet: emaclite: Use unsigned long for baseaddr
Michal Simek [Wed, 12 Oct 2011 23:23:21 +0000 (23:23 +0000)]
net: emaclite: Use unsigned long for baseaddr

Baseaddr should be unsigned long.

Signed-off-by: Michal Simek <monstr@monstr.eu>
13 years agoarm, post, memory: fix bug if sdram base != 0x00000000
Heiko Schocher [Thu, 6 Oct 2011 20:40:00 +0000 (20:40 +0000)]
arm, post, memory: fix bug if sdram base != 0x00000000

commit 8d3fcb5e60b6c8e1d530dbc2e2e33ec6a44670da breaks post
memory support for sdram base != 0x00000000. Fix this.

Signed-off-by: Heiko Schocher <hs@denx.de>
Cc: Valentin Longchamp <valentin.longchamp@keymile.com>
Cc: Holger Brunck <holger.brunck@keymile.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agospi/eon: add support for new EON spi flash EN25Q32B
Shaohui Xie [Tue, 27 Sep 2011 01:21:34 +0000 (01:21 +0000)]
spi/eon: add support for new EON spi flash EN25Q32B

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
13 years agocache: include asm/cache.h for ARCH_DMA_MINALIGN definition
Anton Staaf [Mon, 17 Oct 2011 23:46:13 +0000 (16:46 -0700)]
cache: include asm/cache.h for ARCH_DMA_MINALIGN definition

ARCH_DMA_MINALIGN will be used to allocate DMA buffers that are
aligned correctly.  In all current cases this means that the DMA
buffer will be aligned to at least the L1 data cache line size of
the configured architecture.  If the board configuration file
does not specify the architecture L1 data cache line size then the
maximum line size of the architecture is used to align DMA buffers.

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Ilya Yanok <yanok@emcraft.com>
Cc: Laurence Withers <lwithers@guralp.com>
13 years agox86: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:12 +0000 (16:46 -0700)]
x86: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Graeme Russ <graeme.russ@gmail.com>
13 years agomips: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:11 +0000 (16:46 -0700)]
mips: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Shinya Kuribayashi <skuribay@pobox.com>
13 years agomicroblaze: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:10 +0000 (16:46 -0700)]
microblaze: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Michal Simek <monstr@monstr.eu>
13 years agoavr32: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:09 +0000 (16:46 -0700)]
avr32: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Reinhard Meyer <u-boot@emk-elektronik.de>
13 years agosparc: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:08 +0000 (16:46 -0700)]
sparc: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Daniel Hellstrom <daniel@gaisler.com>
13 years agosh: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:07 +0000 (16:46 -0700)]
sh: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
13 years agopowerpc: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:06 +0000 (16:46 -0700)]
powerpc: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Acked-by: Stefan Roese <sr@denx.de>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Stefan Roese <sr@denx.de>
13 years agonios2: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:05 +0000 (16:46 -0700)]
nios2: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Scott McNutt <smcnutt@psyent.com>
13 years agom68k: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:04 +0000 (16:46 -0700)]
m68k: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Jason Jin <jason.jin@freescale.com>
13 years agoarm: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment
Anton Staaf [Mon, 17 Oct 2011 23:46:03 +0000 (16:46 -0700)]
arm: cache: define ARCH_DMA_MINALIGN for DMA buffer alignment

Signed-off-by: Anton Staaf <robotboy@chromium.org>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: Lukasz Majewski <l.majewski@samsung.com>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
13 years agoNS16550: trivial code clean for checkpatch
Simon Glass [Sat, 15 Oct 2011 19:14:09 +0000 (19:14 +0000)]
NS16550: trivial code clean for checkpatch

This removes most checkpatch warnings from the ns16550 driver and its
header.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agoMPC85xx: remove broken "mpq101" board
Wolfgang Denk [Sun, 23 Oct 2011 15:00:47 +0000 (17:00 +0200)]
MPC85xx: remove broken "mpq101" board

The board stopped building some time ago, and the board maintainer
agrtees to drop it - see
http://article.gmane.org/gmane.comp.boot-loaders.u-boot/112674

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Alex Dubov <oakad@yahoo.com>
Cc: Andy Fleming <afleming@gmail.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
13 years agoserial: uartlite: Fix compilation warnings
Michal Simek [Tue, 18 Oct 2011 00:22:10 +0000 (00:22 +0000)]
serial: uartlite: Fix compilation warnings

Do not setup userial_ports array as const because
in uartlite_serial_putc is out_be32 which can't write
to tx_fifo if is const.

Warning log:
serial_xuartlite.c: In function 'uartlite_serial_putc':
serial_xuartlite.c:60: warning: initialization discards qualifiers from pointer target type
serial_xuartlite.c: In function 'uartlite_serial_getc':
serial_xuartlite.c:78: warning: initialization discards qualifiers from pointer target type
serial_xuartlite.c: In function 'uartlite_serial_tstc':
serial_xuartlite.c:87: warning: initialization discards qualifiers from pointer target type

Signed-off-by: Michal Simek <monstr@monstr.eu>
13 years agohwmon: Provide dtt_init()
Dirk Eibach [Thu, 13 Oct 2011 23:23:12 +0000 (23:23 +0000)]
hwmon: Provide dtt_init()

Our boards rely on dtt for initialization of fan hardware.
dtt_init() was implemented to be called form board specific code.

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Acked-by: Heiko Schocher <hs@denx.de>
Tested-by: Heiko Schocher <hs@denx.de>
13 years agocommon: cosmetic: CONFIG_BOOTFILE checkpatch compliance
Joe Hershberger [Thu, 13 Oct 2011 13:03:48 +0000 (13:03 +0000)]
common: cosmetic: CONFIG_BOOTFILE checkpatch compliance

Remove MK_STR from places that consume CONFIG_BOOTFILE to force all definitions to be string literals.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agocommon: cosmetic: CONFIG_ROOTPATH checkpatch compliance
Joe Hershberger [Thu, 13 Oct 2011 13:03:47 +0000 (13:03 +0000)]
common: cosmetic: CONFIG_ROOTPATH checkpatch compliance

Remove MK_STR from places that consume CONFIG_ROOTPATH to force all definitions to be string literals.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agoautoconf.mk.dep: use target cflags, not host
Mike Frysinger [Wed, 12 Oct 2011 19:48:00 +0000 (19:48 +0000)]
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>
13 years agobuild: force migration away from $(AR)
Mike Frysinger [Wed, 12 Oct 2011 19:25:20 +0000 (19:25 +0000)]
build: force migration away from $(AR)

People keep adding new code that still uses $(AR) instead of
$(cmd_link_o_target), so turn it into a build time error.

We still use $(AR) locally, but we don't use $(ARFLAGS).

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
13 years agobuild: add missing $(AR)->$(cmd_link_o_target) update
Mike Frysinger [Tue, 18 Oct 2011 05:30:17 +0000 (05:30 +0000)]
build: add missing $(AR)->$(cmd_link_o_target) update

Seems people fixed their files to use libfoo.o, but didn't actually
update the creation targets to use $(cmd_link_o_target).  Update the
rest of the Makefile's found with grep.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Simon Glass <sjg@chromium.org>
13 years agoMakefile: Remove MLO on make clean
Joel A Fernandes [Wed, 12 Oct 2011 16:12:55 +0000 (16:12 +0000)]
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>
13 years agoconsolidate mdelay by providing a common function for all users
Anatolij Gustschin [Wed, 12 Oct 2011 02:31:39 +0000 (02:31 +0000)]
consolidate mdelay by providing a common function for all users

There are several mdelay() definitions in the driver and
board code. Remove them all and provide a common mdelay()
in lib/time.c.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agocheckpatch whitespace cleanups
Stephen Warren [Tue, 18 Oct 2011 11:11:49 +0000 (11:11 +0000)]
checkpatch whitespace cleanups

This avoids the following checkpatch warning in later patches:

ERROR: "(foo*)" should be "(foo *)"
ERROR: space required before the open brace '{'
ERROR: space prohibited before that close parenthesis ')'
ERROR: spaces required around that '||' (ctx:WxV)
WARNING: space prohibited between function name and open parenthesis '('
WARNING: line over 80 characters

This fixes all the white-space warnings/errors in my subsequent patch,
and within this current patch. A number of other checkpatch warnings
and errors are still present in this patch itself, but are beyond simple
whitespace fixes, so are not solved by this patch.

v2: New patch

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Simon Glass <sjg@chromium.org>
Tested-by: Simon Glass <sjg@chromium.org>
13 years agodrivers: add the support for Silicon Image SATA controller
Tang Yuantian [Fri, 7 Oct 2011 19:26:58 +0000 (19:26 +0000)]
drivers: add the support for Silicon Image SATA controller

Add the Silicon Image series PCI Express to
Serial ATA controller support, including Sil3132,
Sil3131 and Sil3124.
The SATA controller can be used to load kernel.

The features list:
- Supports 1-lane 2.5 Gbit/s PCI Express
- Supports one/two/four independent Serial ATA channels
- Supports Serial ATA Generation 2 transfer rate of 3.0 Gbit/s
- Supports LBA28 and LBA48

Signed-off-by: Tang Yuantian <b29983@freescale.com>
Signed-off-by: Aaron Williams <Aaron.Williams@cavium.com>
Tested-by: Lan Chunhe <b25806@freescale.com>
13 years agodoc/README: documents and readme for NDS32 arch
Macpaul Lin [Wed, 19 Oct 2011 20:41:11 +0000 (20:41 +0000)]
doc/README: documents and readme for NDS32 arch

Documents and READMEs for NDS32 architecture.
It patch also provides usage of SoC AG101 and board ADP-AG101.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agoadp-ag101: add board adp-ag101 support
Macpaul Lin [Wed, 19 Oct 2011 20:41:10 +0000 (20:41 +0000)]
adp-ag101: add board adp-ag101 support

Add evaluation board "adp-ag101" configuration file adp-ag101.h.
Add adp-ag101.c board config and related settings.
Add board adp-ag101 into boards.cfg

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agonds32: common bdinfo, bootm, image support
Macpaul Lin [Wed, 19 Oct 2011 20:41:09 +0000 (20:41 +0000)]
nds32: common bdinfo, bootm, image support

Add support of NDS32 to common commands bdinfo, bootm, and image format.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agonds32: standalone support
Macpaul Lin [Tue, 11 Oct 2011 22:33:20 +0000 (22:33 +0000)]
nds32: standalone support

Add standalone program related support for nds32 architecture.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agonds32/lib: add generic funcs in NDS32 lib
Macpaul Lin [Tue, 11 Oct 2011 22:33:19 +0000 (22:33 +0000)]
nds32/lib: add generic funcs in NDS32 lib

Add Makefile, board.c, interrupts.c and bootm.c functions
to nds32 architecture.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agonds32/ag101: cpu and init funcs of SoC ag101
Macpaul Lin [Tue, 11 Oct 2011 22:33:18 +0000 (22:33 +0000)]
nds32/ag101: cpu and init funcs of SoC ag101

SoC ag101 is the first chip using NDS32 N1213 cpu core.
Add header file of device offset support for SoC ag101.
Add main function of SoC ag101 based on NDS32 n1213 core.
Add lowlevel_init.S and other periphal related code.

This version of lowlevel_init.S also replace hardcode value
by MARCO defines from the GPL version andesboot for better
code quality.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agonds32/core N1213: NDS32 N12 core family N1213
Macpaul Lin [Wed, 19 Oct 2011 20:41:05 +0000 (20:41 +0000)]
nds32/core N1213: NDS32 N12 core family N1213

Add N1213 cpu core (N12 Core family) support for NDS32 arch.
This patch includes start.S for the initialize procedure of N1213.

Start procedure:
 start.S will start up the N1213 CPU core at first,
 then jump to SoC dependent "lowlevel_init.S" and
 "watchdog.S" to configure peripheral devices.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
Signed-off-by: Greentime Hu <greentime@andestech.com>
13 years agonds32: add NDS32 support into common header file
Macpaul Lin [Wed, 19 Oct 2011 20:41:04 +0000 (20:41 +0000)]
nds32: add NDS32 support into common header file

Add NDS32 support into common header file.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agonds32: add header files support for nds32
Macpaul Lin [Tue, 11 Oct 2011 22:33:15 +0000 (22:33 +0000)]
nds32: add header files support for nds32

Add generic header files support for nds32 architecture.
Cache, ptregs, data type and other definitions are included.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agocmd_bdinfo: replace print_str() with print_mhz()
Timur Tabi [Wed, 5 Oct 2011 22:08:07 +0000 (17:08 -0500)]
cmd_bdinfo: replace print_str() with print_mhz()

The print_str() helper function for cmd_bdinfo can print any string, but it
is only used to print MHz values.  Replace it with print_mhz() that takes
a number and converts it to a string internally.

Signed-off-by: Timur Tabi <timur@freescale.com>
13 years agogpio: Add PCA9698 40-bit I2C I/O port
Dirk Eibach [Mon, 3 Oct 2011 23:13:51 +0000 (23:13 +0000)]
gpio: Add PCA9698 40-bit I2C I/O port

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
13 years agoserial: pl01x: drain PL01x FIFO before baudrate change
Linus Walleij [Sun, 2 Oct 2011 11:52:52 +0000 (11:52 +0000)]
serial: pl01x: drain PL01x FIFO before baudrate change

Not draining the FIFO and waiting for the UART to be non-busy
before changing baudrate results in crap characters on the
console, so let's wait for the FIFO to drain and the last
character to be clocked out before we do that.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
13 years agoexamples: api: allow build with private libgcc
Che-liang Chiou [Mon, 17 Oct 2011 21:04:15 +0000 (21:04 +0000)]
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>
13 years agonet: dc2114x: check for apropriate command
Linus Walleij [Sun, 25 Sep 2011 21:41:14 +0000 (21:41 +0000)]
net: dc2114x: check for apropriate command

The code had two paths depending on whether the card was to be
accessed from plain memory or the IO region. However the error
path checks whether IO region was obtained - twice. Fix up the
error path according to the probable intention.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
13 years agokm/common: enable "env default" for all keymile boards
Gerlando Falauto [Thu, 22 Sep 2011 05:06:12 +0000 (05:06 +0000)]
km/common: enable "env default" for all keymile boards

Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com>
Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
13 years agoftgmac100: reset fix when supports wake on lan
Macpaul Lin [Tue, 20 Sep 2011 19:54:32 +0000 (19:54 +0000)]
ftgmac100: reset fix when supports wake on lan

This patch move the reset function from initialization to
driver register procedure.

Some embedded system supports wake on lan nowadays. On this kind of system,
the ftgmac100 will be still supplied power after the system has been
shut-down by Linux. Hence the register used by linux won't be clear
when the system has been powered-off.

The origin ftgmac100 driver in u-boot will only register
driver and functions to network stack and won't reset the ftgmac100
hardware if the network won't be used during boot-up.
This will lead ftgmac100 continue receiving packets and then might corrupt
linux kernel when booting up.

So we reorder the hardware reset function earlier to force the hardware
to be reset whether it will be used or not.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
13 years agokm/common: remove obsolete header file
Holger Brunck [Tue, 13 Sep 2011 23:06:12 +0000 (23:06 +0000)]
km/common: remove obsolete header file

This header is unneeded due to code which was removed in the
past.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
cc: Wolfgang Denk <wd@denx.de>

13 years agokm/common: fix ramfs development target
Andreas Huber [Tue, 13 Sep 2011 23:06:11 +0000 (23:06 +0000)]
km/common: fix ramfs development target

Calucations of PRAM needs to take into account the 'rootfssize'.
Memory available to the linux kernel 'mem=' is in all cases set to the total
memory size minus the pram size.

Signed-off-by: Andreas Huber <andreas.huber@keymile.com>
Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
cc: Wolfgang Denk <wd@denx.de>

13 years agokm/common: force set ethaddr only for KM kirkwood boards
Holger Brunck [Tue, 13 Sep 2011 23:06:10 +0000 (23:06 +0000)]
km/common: force set ethaddr only for KM kirkwood boards

This prevents u-boot to print out "Can't overwrite "ethaddr""
each time a powerpc board starts.

Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
cc: Wolfgang Denk <wd@denx.de>

13 years agofix compile warning for env tools
Luka Perkov [Mon, 5 Sep 2011 21:40:13 +0000 (23:40 +0200)]
fix compile warning for env tools

Patch fixes this issue:

fw_env.c: In function ‘fw_setenv’:
fw_env.c:492:5: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 3 has type ‘size_t’ [-Wformat]
fw_env.c: In function ‘flash_write_buf’:
fw_env.c:806:6: warning: format ‘%u’ expects argument of type ‘unsigned int’, but argument 3 has type ‘size_t’ [-Wformat]

Signed-off-by: Luka Perkov <lists@lukaperkov.net>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agokm_arm: enable POST for these boards
Valentin Longchamp [Fri, 2 Sep 2011 04:59:10 +0000 (04:59 +0000)]
km_arm: enable POST for these boards

The current km_arm boards have a Power-On test jumper. When this
jumper is set, this triggers some Power-On tests on the board.

This patch enables the support of this jumper for starting the
memory_regions test when the jumper is set.

Signed-off-by: Valentin Longchamp <valentin.longchamp@keymile.com>
Signed-off-by: Holger Brunck <holger.brunck@keymile.com>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
13 years agoremoved static from images in cmd_bootm.c
Simon Schwarz [Fri, 2 Sep 2011 00:50:31 +0000 (00:50 +0000)]
removed static from images in cmd_bootm.c

This removes static modifier from images variable in cmd_bootm.c.

Signed-off-by: Simon Schwarz <simonschwarzcor@gmail.com>
13 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Fri, 21 Oct 2011 21:48:46 +0000 (23:48 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

* 'master' of git://git.denx.de/u-boot-mpc85xx:
  mpc85xx: Add inline GPIO acessor functions
  powerpc/85xx: wait for alignment before resetting SERDES RX lanes (SERDES9)
  powerpc/85xx: Fix P2020DS booting
  powerpc/85xx: Update USB device tree status based on pin settings
  fdt: Add new fdt_set_node_status & fdt_set_status_by_alias helpers
  powerpc/85xx: Add support for RMan LIODN initialization
  powerpc/85xx: Update device tree handling for SRIO
  powerpc/85xx: Update setting of SRIO LIODNs
  fm: Don't allow disabling of FM1-DTSEC1
  fm-eth: Don't mark the MAC we use for MDIO as disabled in device tree

13 years agoMerge branch 'master' of git://git.denx.de/u-boot-coldfire
Wolfgang Denk [Fri, 21 Oct 2011 21:36:40 +0000 (23:36 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-coldfire

* 'master' of git://git.denx.de/u-boot-coldfire:
  ColdFire: Clean Makefile _config rules
  ColdFire: Move boards with simple _config rules to boards.cfg
  ColdFire: Fix compilation with CONFIG_SYS_DRAMSZ1 defined
  ColdFire: Merge differentiated linking files into a sigle one by board
  ColdFire: Add $(obj) before cpu lib to correct build
  ColdFire: Cleanup lds files for multiple defined symbols

13 years agoMerge branch 'master' of /home/wd/git/u-boot/master
Wolfgang Denk [Fri, 21 Oct 2011 21:35:12 +0000 (23:35 +0200)]
Merge branch 'master' of /home/wd/git/u-boot/master

* 'master' of /home/wd/git/u-boot/master:
  cosmetic: Fixup fixup_silent_linux() for checkpatch
  Correct dependency rule to fix SPL build
  Move timestamp and version files into 'generated' subdir
  sandbox: Makefile changes to build sandbox architecture
  Add generic gpio.h in asm-generic
  Adjust dependency rules to permit per-file flags
  sandbox: Use uintptr_t for 32/64-bit compatibility
  sandbox: Add basic config file
  sandbox: Add serial uart
  sandbox: Add main program
  sandbox: Add OS dependent layer
  sandbox: Force command sections to be 4-byte aligned
  sandbox: Disable standalone/API support
  sandbox: Disable built-in malloc
  sandbox: Add bootm support
  sandbox: Add board info for architecture
  sandbox: Add sandbox board
  sandbox: Add architecture lib files
  sandbox: Add cpu files
  sandbox: Add compiler defines to support a 64-bit x86_64 platform
  sandbox: Add architecture image support
  Fix use of int as pointer in image.c
  sandbox: Add architecture header files
  arm: ca9x4_ct_vxp: enable PXE BOOTP options support
  arm: ca9x4_ct_vxp: enable pxe command support
  Convert ca9x4_ct_vxp to standard env variables
  net: bootp: add PXE/RFC 4578 DHCP options support
  Add pxe command
  lib: add uuid_str_to_bin for use with bootp and PXE uuid
  README: document standard image variables
  Replace space and tab checks with isblank
  cosmetic: remove unneeded curly braces
  Add isblank
  common: add run_command2 for running simple or hush commands
  common, menu: use abortboot for menu timeout
  Add generic, reusable menu code
  DM9000:Add a byte swap macro for dm9000 io operation.
  kw_gpio: fix error in kw_gpio_direction_input
  Blackfin: bfin_spi: fix build error when DEBUG is defined
  Blackfin: define CONFIG_SYS_CACHELINE_SIZE
  video: Moving mx3fb.c to CONFIG_VIDEO
  mx31: make HSP clock for mx3fb driver available
  MX5: Make IPU display output and pixel format configurable
  VIDEO: MX5: export pix format
  VIDEO: MX5: Switch MX5 to CONFIG_VIDEO
  video: update the Freescale DIU driver to use linux/fb.h
  powerpc: cpm2 boards: update fcc register logic

13 years agompc85xx: Add inline GPIO acessor functions
Kyle Moffett [Wed, 19 Oct 2011 18:58:15 +0000 (14:58 -0400)]
mpc85xx: Add inline GPIO acessor functions

To ease the implementation of other MPC85xx board ports, several common
GPIO helpers are added to <asm/mpc85xx_gpio.h>.

Since each of these compiles to no more than 4-5 instructions it would
be very inefficient to call them out of line, therefore we put them
entirely in the header file.

The HWW-1U-1A board port which these were written for strongly prefers
to set multiple GPIOs as a single batch operation, so the API is
designed around that basis.

To assist other board ports, a small set of wrappers are used which
provides a standard gpio_request() interface around the MPC85xx-specific
functions.  This can be enabled with CONFIG_MPC85XX_GENERIC_GPIO

Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Andy Fleming <afleming@gmail.com>
Cc: Peter Tyser <ptyser@xes-inc.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 years agopowerpc/85xx: wait for alignment before resetting SERDES RX lanes (SERDES9)
Timur Tabi [Tue, 18 Oct 2011 23:44:34 +0000 (18:44 -0500)]
powerpc/85xx: wait for alignment before resetting SERDES RX lanes (SERDES9)

The work-around for P4080 erratum SERDES9 says that the SERDES receiver
lanes should be reset after the XAUI starts tranmitting alignment signals.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 years agocosmetic: Fixup fixup_silent_linux() for checkpatch
Doug Anderson [Wed, 19 Oct 2011 12:30:57 +0000 (12:30 +0000)]
cosmetic: Fixup fixup_silent_linux() for checkpatch

Signed-off-by: Doug Anderson <dianders@chromium.org>
Reviewed-by: Anton Staaf <robotboy@chromium.org>
13 years agoCorrect dependency rule to fix SPL build
Simon Glass [Tue, 18 Oct 2011 05:50:42 +0000 (05:50 +0000)]
Correct dependency rule to fix SPL build

Commit 4750884 introduced a change in the dependency generation which
breaks SPL, because the source files being built are not initially present
and are symlinked as part of the build.

The .depend file must depend not only on the files in the DEPS list but
also on the sources which did not contribute files to the DEPS list, since
these sources will otherwise not get a dependency and will not be built.

Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Wolfgang Denk <wd@denx.de>
13 years agoColdFire: Clean Makefile _config rules
stany MARCEL [Fri, 14 Oct 2011 04:38:05 +0000 (04:38 +0000)]
ColdFire: Clean Makefile _config rules

Remove unused mkdir, and add missing ones.

Signed-off-by: Stany MARCEL <stany.marcel@novasys-ingenierie.com>
13 years agoColdFire: Move boards with simple _config rules to boards.cfg
stany MARCEL [Tue, 18 Oct 2011 16:17:13 +0000 (00:17 +0800)]
ColdFire: Move boards with simple _config rules to boards.cfg

Signed-off-by: Stany MARCEL <stany.marcel@novasys-ingenierie.com>
13 years agoColdFire: Fix compilation with CONFIG_SYS_DRAMSZ1 defined
stany MARCEL [Fri, 14 Oct 2011 04:38:06 +0000 (04:38 +0000)]
ColdFire: Fix compilation with CONFIG_SYS_DRAMSZ1 defined

A temp variable was used but not declared, with CONFIG_SYS_DRAMSZ1
defined. This variable is now declared in the functione when needed.

Signed-off-by: Stany MARCEL <stany.marcel@novasys-ingenierie.com>
13 years agoColdFire: Merge differentiated linking files into a sigle one by board
stany MARCEL [Fri, 14 Oct 2011 04:38:04 +0000 (04:38 +0000)]
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>
13 years agoColdFire: Add $(obj) before cpu lib to correct build
stany MARCEL [Fri, 14 Oct 2011 04:38:02 +0000 (04:38 +0000)]
ColdFire: Add $(obj) before cpu lib to correct build

Missing $(obj) prevented the build of ColdFire boards in a directory
than sources

Signed-off-by: Stany MARCEL <stany.marcel@novasys-ingenierie.com>
13 years agoColdFire: Cleanup lds files for multiple defined symbols
stany MARCEL [Fri, 14 Oct 2011 04:38:01 +0000 (04:38 +0000)]
ColdFire: Cleanup lds files for multiple defined symbols

Lds files cleened to remove multiple defined section and modified to
be compliant with --gc-sections added for ColdFire platform in a
previous patch.

Signed-off-by: Stany MARCEL <stany.marcel@novasys-ingenierie.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
13 years agopowerpc/85xx: Fix P2020DS booting
Kumar Gala [Tue, 18 Oct 2011 06:31:08 +0000 (01:31 -0500)]
powerpc/85xx: Fix P2020DS booting

The following commit removed the code that set odt_rd_cfg and
odt_wr_cfg.  With out this code P2020DS board will not boot:

commit 712cf7ab0b58e51a69e339397457d3591b6b650e
Author: York Sun <yorksun@freescale.com>
Date:   Mon Oct 3 09:19:53 2011 -0700

    powerpc/mpc8xxx: Merge entries in DDR speed table

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 years agopowerpc/85xx: Update USB device tree status based on pin settings
Shengzhou Liu [Fri, 14 Oct 2011 08:26:06 +0000 (16:26 +0800)]
powerpc/85xx: Update USB device tree status based on pin settings

For P3060 and P4080, USB pins are multiplexed with other functions.
Update the device tree status for USB ports based on setting of
RCW[EC1] & RCW[EC2] which describe if pins are muxed to usb.

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 years agofdt: Add new fdt_set_node_status & fdt_set_status_by_alias helpers
Shengzhou Liu [Fri, 14 Oct 2011 08:26:05 +0000 (16:26 +0800)]
fdt: Add new fdt_set_node_status & fdt_set_status_by_alias helpers

Add common function fdt_set_node_status() to assist in various locations
that we set a nodes status.  This function utilizes the status values
that are part of the EPAPR spec (on power.org).

fdt_set_status_by_alias() is based on fdt_set_node_status() but uses an
alias string to identify the node to update.

We also add some shortcut functions to help the common cases of setting
"okay" and "disabled":

fdt_status_okay()
fdt_status_disabled()
fdt_status_okay_by_alias()
fdt_status_disabled_by_alias()

Finally, we fixup the corenet_ds ethernet code which previously had
a function by the same name that can be replaced with the new helpers.

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Gerald Van Baren <vanbaren@cideas.com>
13 years agopowerpc/85xx: Add support for RMan LIODN initialization
Kumar Gala [Fri, 14 Oct 2011 18:28:52 +0000 (13:28 -0500)]
powerpc/85xx: Add support for RMan LIODN initialization

This patch is intended to initialize RMan LIODN related registers on
P2041, P304S and P5020 SocS. It also adds the "rman@0" child node to
qman-portal nodes, adds "fsl,liodn" property to RMan inbound block nodes.

Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 years agopowerpc/85xx: Update device tree handling for SRIO
Kumar Gala [Fri, 14 Oct 2011 05:03:58 +0000 (00:03 -0500)]
powerpc/85xx: Update device tree handling for SRIO

Update device tree handling for SRIO controller to support updated
fsl,srio device tree binding.

We handle disabling of individual ports, the whole controller, RMU, and
RMAN.  Additionally, we setup the SRIO related LIODNs in the device
tree.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 years agopowerpc/85xx: Update setting of SRIO LIODNs
Kumar Gala [Fri, 14 Oct 2011 05:01:23 +0000 (00:01 -0500)]
powerpc/85xx: Update setting of SRIO LIODNs

Properly set the LIODN values associated with SRIO controller.  On
P4080/P3060 we have an LIODN per port and one for the RMU.  On
P2041/P3041/P5020 we have 2 LIODNs per port.

Update the tables for all of these devices to properly handle both
styles.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 years agofm: Don't allow disabling of FM1-DTSEC1
Kumar Gala [Fri, 14 Oct 2011 08:17:56 +0000 (03:17 -0500)]
fm: Don't allow disabling of FM1-DTSEC1

The MDIO controller to talk to external PHYs is on FM1-DTSEC1 so don't
allow disabling.  If we disable it we end up powering the block down in
the SoC and thus can't communicate to any external PHYs.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 years agofm-eth: Don't mark the MAC we use for MDIO as disabled in device tree
Kumar Gala [Thu, 13 Oct 2011 19:55:59 +0000 (14:55 -0500)]
fm-eth: Don't mark the MAC we use for MDIO as disabled in device tree

FM1-DTSEC1's MAC was being marked as disabled if the port was not
configured based on the SoC configuration.  However we utilize the MAC
interface for MDIO and thus should NOT mark it disabled.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
13 years agoMove timestamp and version files into 'generated' subdir
Simon Glass [Mon, 10 Oct 2011 08:55:19 +0000 (08:55 +0000)]
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>
13 years agosandbox: Makefile changes to build sandbox architecture
Simon Glass [Mon, 3 Oct 2011 19:26:50 +0000 (19:26 +0000)]
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>
13 years agoAdd generic gpio.h in asm-generic
Simon Glass [Fri, 7 Oct 2011 13:53:50 +0000 (13:53 +0000)]
Add generic gpio.h in asm-generic

Since we want want to have a standard GPIO interface, this adds a definition
for this into include/asm-generic/gpio.h.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agoAdjust dependency rules to permit per-file flags
Simon Glass [Fri, 7 Oct 2011 13:53:49 +0000 (13:53 +0000)]
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>
13 years agosandbox: Use uintptr_t for 32/64-bit compatibility
Simon Glass [Sat, 17 Sep 2011 06:48:58 +0000 (06:48 +0000)]
sandbox: Use uintptr_t for 32/64-bit compatibility

This fixes a problems when building on some 64-bit machines.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agosandbox: Add basic config file
Simon Glass [Mon, 3 Oct 2011 19:26:47 +0000 (19:26 +0000)]
sandbox: Add basic config file

This basic provides required features along with a basic command set.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agosandbox: Add serial uart
Simon Glass [Mon, 3 Oct 2011 19:26:46 +0000 (19:26 +0000)]
sandbox: Add serial uart

This uart simply writes to stdout and reads from stdin. We might imagine
instead buffering the data so that a test interface can check output and
inject input.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agosandbox: Add main program
Simon Glass [Mon, 3 Oct 2011 19:26:45 +0000 (19:26 +0000)]
sandbox: Add main program

Add a main program so that we can run U-Boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agosandbox: Add OS dependent layer
Simon Glass [Mon, 3 Oct 2011 19:26:44 +0000 (19:26 +0000)]
sandbox: Add OS dependent layer

We want to keep all OS-dependent code in once place, with a simple interface
to U-Boot. For now, this is that place.

Signed-off-by: Simon Glass <sjg@chromium.org>
13 years agosandbox: Force command sections to be 4-byte aligned
Simon Glass [Sat, 17 Sep 2011 06:48:51 +0000 (06:48 +0000)]
sandbox: Force command sections to be 4-byte aligned

By default sections are 16-byte aligned on some architectures, but the
command name structure (struct cmd_tbl_s) does not have padding to
16 bytes. This reduces the alignment to 4-bytes so that the command
table can be accessed correctly on any architecture.

(Note: this needs doing properly)

Signed-off-by: Simon Glass <sjg@chromium.org>