oweals/u-boot.git
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Minkyu Kang [Tue, 16 Nov 2010 00:55:11 +0000 (09:55 +0900)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-ti
Wolfgang Denk [Fri, 12 Nov 2010 23:19:55 +0000 (00:19 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-ti

14 years agoMerge branch 'at91' of git://git.denx.de/u-boot-atmel
Wolfgang Denk [Fri, 12 Nov 2010 21:29:21 +0000 (22:29 +0100)]
Merge branch 'at91' of git://git.denx.de/u-boot-atmel

14 years agoMerge branch 'master' of /home/wd/git/u-boot/master
Wolfgang Denk [Fri, 12 Nov 2010 21:24:06 +0000 (22:24 +0100)]
Merge branch 'master' of /home/wd/git/u-boot/master

14 years agoarmv7, beagle: Second SDRAM bank don;t work
Heiko Schocher [Thu, 4 Nov 2010 20:05:25 +0000 (16:05 -0400)]
armv7, beagle: Second SDRAM bank don;t work

since commit 3667cbeed5e3c4067e624e52a916b1ebb02c8f05
on beagle board the second sdram bank didn;t longer
work. Since this patch sdram settings just get copied
from bank a, but CMD_NOP, CMD_PRECHARGE, CMD_AUTOREFRESH
are not executed and after that mr register is also
not updated. This patch adds this for the bank b.

Signed-off-by: Heiko Schocher <hs@denx.de>
cc: Steve Sakoman <steve@sakoman.com>
cc: Sandeep Paulraj <s-paulraj@ti.com>
cc: Wolfgang Denk <wd@denx.de>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoomap3evm: Fix mechanism to identify board revision
Sanjeev Premi [Thu, 4 Nov 2010 20:02:32 +0000 (16:02 -0400)]
omap3evm: Fix mechanism to identify board revision

Function omap3_evm_get_revision() - to identify the
board revision was called at end of setup_net_chip().

Board revision can be ascertained only by identifying
the Ethernet chipset - but combining setup operations
with revision detection isn't a good idea. So, moved
the function after call to setup_net_chip().

Function setup_net_chip() should be ideally be called
only when CONFIG_CMD_NET is defined. But this leaves
the board revision "undetected". This patch allows
static definition of revision or default fallback to
the latest revision.

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoomap3evm: Wrap function under CONFIG_USB_OMAP3
Sanjeev Premi [Thu, 4 Nov 2010 20:02:29 +0000 (16:02 -0400)]
omap3evm: Wrap function under CONFIG_USB_OMAP3

The function omap3_evm_need_extvbus() is required
only when USB support is configured.

Wrapped this function in #ifdef CONFIG_USB_OMAP3.

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoomap3evm: Support relocation
Sanjeev Premi [Thu, 4 Nov 2010 20:01:46 +0000 (16:01 -0400)]
omap3evm: Support relocation

This patch adds relocation support for omap3evm.
Content of the patch is based on changes for
Beagleboard.

Signed-off-by: Sanjeev Premi <premi@ti.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoARMV7: OMAP3: Use generic mmc driver on OMAP3 IGEP module
Enric Balletbo i Serra [Thu, 4 Nov 2010 19:34:37 +0000 (15:34 -0400)]
ARMV7: OMAP3: Use generic mmc driver on OMAP3 IGEP module

This patch switches from the legacy mmc driver to the new generic mmc driver

Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoARMV7: OMAP3: Use generic mmc driver on IGEP v2
Enric Balletbo i Serra [Thu, 4 Nov 2010 19:34:33 +0000 (15:34 -0400)]
ARMV7: OMAP3: Use generic mmc driver on IGEP v2

This patch switches from the legacy mmc driver to the new generic mmc driver

Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agommc: Add multi-block read support to the generic mmc driver
Alagu Sankar [Mon, 25 Oct 2010 14:23:56 +0000 (07:23 -0700)]
mmc: Add multi-block read support to the generic mmc driver

This patch adds multi-block read support for the generic MMC
driver. Large reads are broken into chunks of 65535 blocks to
ensure that the code works with controllers having a 16 bit block counter.

This patch results in a significant performance improvement.

Time to read a 45 MB file went from 36 seconds to 9 seconds on Overo

Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
Tested-by: Steve Sakoman <steve.sakoman@linaro.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agommc: Clean up generic mmc driver multi-block write functions
Steve Sakoman [Thu, 28 Oct 2010 16:00:26 +0000 (09:00 -0700)]
mmc: Clean up generic mmc driver multi-block write functions

The current mmc write implementation is type ulong, but returns int values.
Some of the printf's are terminated with /n/r, one has none.

This patch fixes these issues and also removes some unnecessary local
variables.

Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoARMV7: OMAP: Fix build after introduction of GENERATED_GBL_DATA_SIZE
Steve Sakoman [Wed, 27 Oct 2010 12:04:30 +0000 (05:04 -0700)]
ARMV7: OMAP: Fix build after introduction of GENERATED_GBL_DATA_SIZE

This patch fixes the issue by defining and using CONFIG_SYS_INIT_RAM_SIZE and
CONFIG_SYS_INIT_RAM_ADDR. Based on an email discussion with Wolfgang Denk and
Heiko Schocher.

Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoARMV7: OMAP3: Add expansion board detection for Beagle
Koen Kooi [Mon, 20 Sep 2010 17:21:33 +0000 (10:21 -0700)]
ARMV7: OMAP3: Add expansion board detection for Beagle

Beagle expansion boards contain an i2c eeprom to identify themselves.
This patch adds code to read and parse the eeprom contents.  It prints
the expansion board name and revision and modifies environment variables
as appropriate. This patch is based on the Overo expansion board code.

Signed-off-by: Koen Kooi <k-kooi@ti.com>
Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoARMV7: OMAP3: Add expansion board detection for Overo
Steve Sakoman [Mon, 20 Sep 2010 15:05:14 +0000 (08:05 -0700)]
ARMV7: OMAP3: Add expansion board detection for Overo

Overo expansion boards contain an i2c eeprom to identify themselves.
This patch adds code to read and parse the eeprom contents.  It prints
the expansion board name and revision and modifies environment variables
as appropriate.

Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoARMV7: Fix build for non-OMAP3 boards
Steve Sakoman [Thu, 21 Oct 2010 05:00:00 +0000 (22:00 -0700)]
ARMV7: Fix build for non-OMAP3 boards

Commit c3d3a54 uses CONFIG_ARMV7 to determine whether to call the
v7_flush_cache_all function.  This breaks the build for all non-OMAP3
boards (like Panda and OMAP4430SDP) since there is only a v7_flush_cache_all
implementation for OMAP3.

This patch uses CONFIG_OMAP3XXX instead of CONFIG_ARMV7 so that only boards
with a v7_flush_cache_all will make the call.

Tested on Beagle, Overo, Panda, and OMAP4430SDP

Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoARMV7: OMAP3: IGEP: Rename TEXT_BASE
Steve Sakoman [Thu, 21 Oct 2010 13:11:53 +0000 (06:11 -0700)]
ARMV7: OMAP3: IGEP: Rename TEXT_BASE

Commit 14d0a02a "Rename TEXT_BASE into CONFIG_SYS_TEXT_BASE" missed the
IGEP boards since they were just added.

Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
14 years agoAT91: add header file for the Shutdown Controller
Reinhard Meyer [Mon, 25 Oct 2010 15:56:11 +0000 (17:56 +0200)]
AT91: add header file for the Shutdown Controller

and SHDWN address entry in at91sam9260.h

Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-arm
Minkyu Kang [Tue, 2 Nov 2010 05:09:18 +0000 (14:09 +0900)]
Merge branch 'master' of git://git.denx.de/u-boot-arm

14 years agoAT91: add 2nd SPI to 9260/9XE/9G20
Reinhard Meyer [Mon, 25 Oct 2010 15:56:23 +0000 (17:56 +0200)]
AT91: add 2nd SPI to 9260/9XE/9G20

Signed-off-by: Reinhard Meyer <u-boot@emk-elektronik.de>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-marvell
Wolfgang Denk [Fri, 29 Oct 2010 20:03:00 +0000 (22:03 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-marvell

Conflicts:
include/configs/km_arm.h

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-imx
Wolfgang Denk [Fri, 29 Oct 2010 19:50:24 +0000 (21:50 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-imx

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-samsung
Wolfgang Denk [Fri, 29 Oct 2010 19:47:48 +0000 (21:47 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-samsung

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-blackfin
Wolfgang Denk [Fri, 29 Oct 2010 19:46:08 +0000 (21:46 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-blackfin

14 years agoMerge branch 'for-wd-master' of git://git.denx.de/u-boot-pxa
Wolfgang Denk [Fri, 29 Oct 2010 19:44:40 +0000 (21:44 +0200)]
Merge branch 'for-wd-master' of git://git.denx.de/u-boot-pxa

14 years agoDrop support for CONFIG_SKIP_RELOCATE_UBOOT
Wolfgang Denk [Thu, 28 Oct 2010 18:52:49 +0000 (20:52 +0200)]
Drop support for CONFIG_SKIP_RELOCATE_UBOOT

For ARM systems, before ELF relocation was introduced,
CONFIG_SKIP_RELOCATE_UBOOT coul be used to prevent *COPYING* the
U-Boot image from whereever it was loaded to it's link address
(CONFIG_SYS_TEXT_BASE).  The name was badly chosen, as no relocation
was performed at all, it was just a memcpy().

With ELF relocation, this does not work like that any more, and
related boards need to be fixed anyway.  So don't keep this relict any
longer.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Tested-by: Heiko Schocher <hs@denx.de>
Tested-by: Reinhard Meyer <u-boot@emk-elektronik.de>
14 years agoDrop support for CONFIG_SYS_ARM_WITHOUT_RELOC
Wolfgang Denk [Thu, 28 Oct 2010 18:35:36 +0000 (20:35 +0200)]
Drop support for CONFIG_SYS_ARM_WITHOUT_RELOC

When this define was introduced, the idea was to provide a soft
migration path for ARM boards to get adapted to the new relocation
support.  However, other recent changes led to a different
implementation (ELF relocation), where this no longer works.  By now
CONFIG_SYS_ARM_WITHOUT_RELOC does not only not help any more, but it
actually hurts because it obfuscates the actual code by sprinkling it
with lots of dead and non-working debris.

So let's make a clean cut and drop CONFIG_SYS_ARM_WITHOUT_RELOC.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Tested-by: Heiko Schocher <hs@denx.de>
Tested-by: Reinhard Meyer <u-boot@emk-elektronik.de>
14 years agoReplace CONFIG_RELOC_FIXUP_WORKS by CONFIG_NEEDS_MANUAL_RELOC
Wolfgang Denk [Thu, 28 Oct 2010 18:00:11 +0000 (20:00 +0200)]
Replace CONFIG_RELOC_FIXUP_WORKS by CONFIG_NEEDS_MANUAL_RELOC

By now, the majority of architectures have working relocation
support, so the few remaining architectures have become exceptions.
To make this more obvious, we make working relocation now the default
case, and flag the remaining cases with CONFIG_NEEDS_MANUAL_RELOC.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Tested-by: Heiko Schocher <hs@denx.de>
Tested-by: Reinhard Meyer <u-boot@emk-elektronik.de>
14 years agoKirkwood: bugfix: DRAM size initialization
Tanmay Upadhyay [Thu, 28 Oct 2010 14:36:22 +0000 (20:06 +0530)]
Kirkwood: bugfix: DRAM size initialization

If start of any DRAM bank is greater than total DDR size, remaining DDR banks' start address & size were left un-initialized in dram_init function. This could break other functions who uses array 'gd->bd->bi_dram'. Kirkwood network driver is one example. This also stops Linux kernel from booting.

v2 - Set start address also to 0. Without this Linux kernel couldn't
     boot up

Signed-off-by: Tanmay Upadhyay <tanmay.upadhyay@einfochips.com>
14 years agokirkwood: get rid of config.mk files
Prafulla Wadaskar [Wed, 27 Oct 2010 12:16:06 +0000 (17:46 +0530)]
kirkwood: get rid of config.mk files

After moving the definition of CONFIG_SYS_TEXT_BASE to the respective
board config files, all Marvell kirkwood board have just a single and
common entry in their config.mk files:

KWD_CONFIG = $(SRCTREE)/board/$(BOARDDIR)/kwbimage.cfg

Replace the only reference to KWD_CONFIG in the top level Makefile by
an equivalent setting, and remove all kirkwood config.mk files.

Signed-off-by: Wolfgang Denk <wd at denx.de>
Cc: Prafulla Wadaskar <prafulla at marvell.com>
Cc: Siddarth Gore <gores at marvell.com>
Cc: Simon Kagstrom <simon.kagstrom at netinsight.net>
Cc: Heiko Schocher <hs at denx.de>
Cc: Eric Cooper <ecc at cmu.edu>
Acked-by: Wolfgang Denk <wd at denx.de>
Signed-off-by: Prafulla Wadaskar <prafulla@marvell.com>
14 years agokirkwood: guruplug: Relocate NAND environment area
Gray Remlin [Thu, 28 Oct 2010 13:32:12 +0000 (19:02 +0530)]
kirkwood: guruplug: Relocate NAND environment area

Current default options increase u-boot size to overlap the location of the environment in NAND, move environment higher up

Signed-off-by: Gray Remlin <g_remlin@rocketmail.com>
14 years agomx51evk: support new relocation scheme
Shawn Guo [Thu, 28 Oct 2010 02:13:15 +0000 (10:13 +0800)]
mx51evk: support new relocation scheme

This patch is to fix build breakage and support new relocation
scheme for mx51evk.

- Correct IRAM base address and add size definition

  The IRAM starts from 0x1FFE0000 on final revsion i.mx51 than
  0x1FFE8000 which is for older revision.

- Include imx-regs.h in mx51evk.h

  Definitions like CSD0_BASE_ADDR and IRAM_BASE_ADDR can be
  referred to.

- Define CONFIG_SYS_INIT_RAM_ADDR and CONFIG_SYS_INIT_RAM_SIZE

  They are used to define init RAM layout.

- Remove comment for CONFIG_SYS_GBL_DATA_SIZE which has been
  buried by Wolfgang's commit below

  25ddd1fb: Replace CONFIG_SYS_GBL_DATA_SIZE by auto-generated value

Signed-off-by: Shawn Guo <shawn.gsc@gmail.com>
14 years agomx51evk: consolidate env for mmcboot and netboot
Shawn Guo [Mon, 25 Oct 2010 15:20:30 +0000 (23:20 +0800)]
mx51evk: consolidate env for mmcboot and netboot

This patch is to consolidate default mx51evk env for two primary
boot modes, mmcboot and netboot.

It also cleans some unused env like netdev, uboot and redundant
env like loadaddr since CONFIG_LOADADDR already defines it.

Signed-off-by: Shawn Guo <shawn.gsc@gmail.com>
14 years agomx51evk: Fix 2 hours reset issue
Shawn Guo [Wed, 27 Oct 2010 15:36:04 +0000 (23:36 +0800)]
mx51evk: Fix 2 hours reset issue

The mx51evk u-boot has an issue that system will get reset
every 2 hours.

MC13892 has an inside charge timer which expires in 120 minutes.
If ICHRG and CHGAUTOB are not set properly, this timer expiration
will get system power recycled.

Since mx51evk has no Li-Ion battery on board, the patch sets
ICHRG in externally powered mode and sets CHGAUTOB bit to avoid
automatic charging, so that system will not get reset by this
timer expiration.

The patch also corrects the bit field definition of register 48
(Charger 0) per latest MC13892 Reference Manual.

Signed-off-by: Shawn Guo <shawn.gsc@gmail.com>
14 years agoMX51: remove warning in clock.c
Stefano Babic [Thu, 28 Oct 2010 09:08:52 +0000 (11:08 +0200)]
MX51: remove warning in clock.c

The patch removes the warning:

clock.c:291: warning: initialization from incompatible pointer type

after  constification of args[]

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agoimx25: Fix reset
Matthias Weisser [Wed, 27 Oct 2010 14:34:38 +0000 (16:34 +0200)]
imx25: Fix reset

This patch fixes the reset command on imx25. The watchdog registers are 16
bits in size and not 32. This patch also adds the service register codes as
constants.

Signed-off-by: Matthias Weisser <weisserm@arcor.de>
14 years agoMX5:use common u-boot.lds of cpu layer
Jason Liu [Thu, 21 Oct 2010 01:11:47 +0000 (09:11 +0800)]
MX5:use common u-boot.lds of cpu layer

Remove u-boot.lds from mx5 and use the common u-boot.lds
of cpu layer. This patch also fix the building errors:

arch/arm/cpu/armv7/start.o: In function `_rel_dyn_start_ofs':
arch/arm/cpu/armv7/start.S:283: undefined reference to `__rel_dyn_start'
arch/arm/cpu/armv7/start.o: In function `_rel_dyn_end_ofs':
arch/arm/cpu/armv7/start.S:283: undefined reference to `__rel_dyn_end'
arch/arm/cpu/armv7/start.o: In function `_dynsym_start_ofs':
arch/arm/cpu/armv7/start.S:283: undefined reference to `__dynsym_start'

Signed-off-by: Jason Liu <r64343@freescale.com>
14 years agoMX51: add CONFIG_SYS_TEXT_BASE to vision2 board, use general ld script
Stefano Babic [Wed, 20 Oct 2010 07:23:06 +0000 (09:23 +0200)]
MX51: add CONFIG_SYS_TEXT_BASE to vision2 board, use general ld script

Recent patch changed TEXT_BASE to CONFIG_SYS_TEXT_BASE and
vision2 board was not updated.

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agoAdd generic support for samsung s3c2440
C Nauman [Tue, 26 Oct 2010 14:04:31 +0000 (23:04 +0900)]
Add generic support for samsung s3c2440

This patch adds generic support for the Samsung s3c2440 processor.

Global s3c24x0 changes to struct members converting from upper case to
lower case.

Signed-off-by: Craig Nauman <cnauman@diagraph.com>
Cc: kevin.morfitt@fearnside-systems.co.uk
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
14 years agoBlackfin: config.mk: drop manual stripping of config vars
Mike Frysinger [Tue, 19 Oct 2010 06:48:34 +0000 (02:48 -0400)]
Blackfin: config.mk: drop manual stripping of config vars

Now that the common code takes care of stripping away quotes and such
from numeric options, we no longer need to do so ourselves.  So drop
the custom code we have in the Blackfin config.mk.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: fix building after asm-offsets.h intro
Mike Frysinger [Thu, 28 Oct 2010 01:10:58 +0000 (21:10 -0400)]
Blackfin: fix building after asm-offsets.h intro

Since some of the defines in our config.h use the generated defines, we
need to include the generated header.  This fixes building of the Blackfin
start.S file (where the stack is setup).

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoarm/pxa: remove unused arch-pxa/macro.h
Mikhail Kshevetskiy [Wed, 27 Oct 2010 21:47:24 +0000 (01:47 +0400)]
arm/pxa: remove unused arch-pxa/macro.h

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@gmail.com>
14 years agoPrepare v2010.12-rc1 v2010.12-rc1
Wolfgang Denk [Wed, 27 Oct 2010 20:49:13 +0000 (22:49 +0200)]
Prepare v2010.12-rc1

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoCoding Style cleanup
Wolfgang Denk [Wed, 27 Oct 2010 20:48:30 +0000 (22:48 +0200)]
Coding Style cleanup

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agocmd_onenand.c: Fix command usage help.
Enric Balletbo i Serra [Tue, 19 Oct 2010 09:13:21 +0000 (11:13 +0200)]
cmd_onenand.c: Fix command usage help.

Running the onenand command without arguments does nothing, with this
patch shows the command usage.

Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
14 years agommc: seperate block number into small parts for multi-write cmd
Lei Wen [Thu, 14 Oct 2010 05:38:11 +0000 (13:38 +0800)]
mmc: seperate block number into small parts for multi-write cmd

Constraint the mmc framework to only send no more than 65535
blocks in one go during the multi-write command. This constraint
comes due to the limitation of 16bit width block counter register
at some hardware.

Signed-off-by: Lei Wen <leiwen@marvell.com>
Cc: Reinhard Meyer <u-boot@emk-elektronik.de>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-sparc
Wolfgang Denk [Wed, 27 Oct 2010 18:37:33 +0000 (20:37 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-sparc

14 years agoenv_sf: updated to the new environment code
Stefano Babic [Wed, 27 Oct 2010 09:06:20 +0000 (11:06 +0200)]
env_sf: updated to the new environment code

Functions to store/retrieve the environment from a SPI flash was not updated
to the new environment code. The non-redundant case was
not working correctly, reporting ""Environment SPI flash not initialized"
and the code was not compiled clean in the redundant case.

The patch fixes these issue and makes the code more coherent
with other environment storage (nand, flash).

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agoMakefile: fix dependencies for building NAND_SPL
Wolfgang Denk [Wed, 27 Oct 2010 09:06:51 +0000 (11:06 +0200)]
Makefile: fix dependencies for building NAND_SPL

Building of NAND based boards failed sometimes (especially on MP
systems) because of incorrect / missing dependencies.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Tested-by: Heiko Schocher <hs@denx.de>
14 years agomake-asm-offsets: fix sed script
Wolfgang Denk [Wed, 27 Oct 2010 06:31:42 +0000 (08:31 +0200)]
make-asm-offsets: fix sed script

When copying the "sed" script to generate the asm-offsets.h file from
the Linux Kbuild script into the make-asm-offsets file I missed the
fact that the former runs in a "make" context and thus uses double
"$$" to escape a single "$", while the latter is a shell script, where
this must not be done.  Unfortunately the problem did not show up
during the initial tests on Power Architecture systems, but on ARM the
generated asm-offsets.h was not correct.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Tested-by: Heiko Schocher <hs@denx.de>
Tested-by: Ben Gardiner <bengardiner@nanometrics.ca>
14 years agomcu25: fix out of tree building
Wolfgang Denk [Wed, 27 Oct 2010 08:29:56 +0000 (10:29 +0200)]
mcu25: fix out of tree building

Out of tree building of the Netstal mcu25 board failed like
that:

Configuring for mcu25 board...
Assembler messages: Fatal error: can't create /work/wd/tmp-ppc/board/netstal/mcu25/../common/fixed_sdram.o: No such file or directory
Assembler messages: Fatal error: can't create /work/wd/tmp-ppc/board/netstal/mcu25/../common/nm_bsp.o: No such file or directory

Adapt (and simplify) the Makefile.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Niklaus Giger <niklaus.giger@netstal.com>
14 years agoRevert "cmd_net: drop spurious comma in U_BOOT_CMD"
Wolfgang Denk [Tue, 26 Oct 2010 21:42:23 +0000 (23:42 +0200)]
Revert "cmd_net: drop spurious comma in U_BOOT_CMD"

This commit causes build errors like this:

cmd_net.c:301:1: error: macro "U_BOOT_CMD" requires 6 arguments, but only 5 given
cmd_net.c:298: warning: data definition has no type or storage class
cmd_net.c:298: warning: type defaults to 'int' in declaration of 'U_BOOT_CMD'

This reverts commit 8f4cb77ef7183ce1bb3f767604a0677c6f6d84a7.

14 years agopost/drivers/i2c.c: fix compile error
Wolfgang Denk [Tue, 26 Oct 2010 21:22:36 +0000 (23:22 +0200)]
post/drivers/i2c.c: fix compile error

Commit 7e263ce "post/i2c: Clean up detection logic" added a "const"
qualifier to the declaration of i2c_addr_list[], missing the fact that
the list gets modified later in the code, which results in build
errors like these:

i2c.c: In function 'i2c_post_test':
i2c.c:88: error: assignment of read-only location

Remove the incorrect "const".

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Peter Tyser <ptyser@xes-inc.com>
Cc: Heiko Schocher <hs@denx.de>
Acked-by: Heiko Schocher <hs@denx.de>
14 years agoARM: use the same branch insn on all architectures
Wolfgang Denk [Sat, 23 Oct 2010 21:22:38 +0000 (23:22 +0200)]
ARM: use the same branch insn on all architectures

For the "fixloop" implementation in start.S a number of different
instructions was used.  Unify code so all architectures use "blo"
here because it is more robust in case of incorrect alignments.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Albert ARIBAUD <albert.aribaud@free.fr>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Sandeep Paulraj <s-paulraj@ti.com>
Cc: Prafulla Wadaskar <prafulla@marvell.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Marek Vasut <marek.vasut@gmail.com>
Acked-by: Heiko Schocher <hs@denx.de>
14 years agoRemove config.mk for da8xxevm based boards.
Sughosh Ganu [Fri, 22 Oct 2010 19:28:03 +0000 (00:58 +0530)]
Remove config.mk for da8xxevm based boards.

Move CONFIG_SYS_TEXT_BASE to the board's config file, and remove the
now unnecessary config.mk file.

Signed-off-by: Sughosh Ganu <urwithsughosh@gmail.com>
Tested-by: Ben Gardiner <bengardiner@nanometrics.ca>
14 years agoarm, bootm: Fix compile warning
Heiko Schocher [Mon, 25 Oct 2010 06:33:38 +0000 (08:33 +0200)]
arm, bootm: Fix compile warning

Fix warning:

bootm.c: In function 'bootm_linux_fdt':
bootm.c:181: warning: unused variable 's'
bootm.c:180: warning: unused variable 'bd'

Signed-off-by: Heiko Schocher <hs@denx.de>
14 years agocmd_net: drop spurious comma in U_BOOT_CMD
Mike Frysinger [Wed, 20 Oct 2010 07:33:30 +0000 (03:33 -0400)]
cmd_net: drop spurious comma in U_BOOT_CMD

Building for boards that have CONFIG_CMD_CDP enabled fail with:
cmd_net.c:301: error: expected expression before ',' token

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoarm1176: fix relocation
Darius Augulis [Mon, 25 Oct 2010 10:48:03 +0000 (13:48 +0300)]
arm1176: fix relocation

Fix relocation code for arm1176, do it like other ARM
CPU's are doing.
Tested only with CONFIG_SKIP_RELOCATE_UBOOT defined
and using nand_spl (booting from nand). Test done on
s3c6410 based board (not yet supported in main line).

Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
14 years agoARM: fix address setup in start.S
Darius Augulis [Mon, 25 Oct 2010 10:45:35 +0000 (13:45 +0300)]
ARM: fix address setup in start.S

Fix address setup bug for ARM.
This bug stops u-boot booting if
CONFIG_SKIP_RELOCATE_UBOOT is defined.

Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
14 years agoReplace CONFIG_SYS_GBL_DATA_SIZE by auto-generated value
Wolfgang Denk [Tue, 26 Oct 2010 12:34:52 +0000 (14:34 +0200)]
Replace CONFIG_SYS_GBL_DATA_SIZE by auto-generated value

CONFIG_SYS_GBL_DATA_SIZE has always been just a bad workarond for not
being able to use "sizeof(struct global_data)" in assembler files.
Recent experience has shown that manual synchronization is not
reliable enough.  This patch renames CONFIG_SYS_GBL_DATA_SIZE into
GENERATED_GBL_DATA_SIZE which gets automatically generated by the
asm-offsets tool.  In the result, all definitions of this value can be
deleted from the board config files.  We have to make sure that all
files that reference such data include the new <asm-offsets.h> file.

No other changes have been done yet, but it is obvious that similar
changes / simplifications can be done for other, related macro
definitions as well.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
14 years agoinclude/asm-offsets.h: automatically generate assembler constants
Wolfgang Denk [Mon, 25 Oct 2010 22:08:35 +0000 (00:08 +0200)]
include/asm-offsets.h: automatically generate assembler constants

A recurrent issue is that certain C level constructs like sizeof() or
offsetof() cannot be used in assembler files, which is inconvenient
when such constructs are used in the definition of macro names etc.

To avoid duplication of such definitions (and thus another cause of
problems), we adapt the Linux way to automatically generate the
respective definitions from the respective C header files.

In Linux, this is implemented in include/linux/kbuild.h, Kbuild, and
arch/*/kernel/asm-offsets.c; we adapt the code from the Linux v2.6.36
kernel tree.

We also copy the concept of the include/generated/ directory which can
be used to hold other automatically generated files as well.

We start with an architecture-independent lib/asm-offsets.c which
generates include/generated/generic-asm-offsets.h (included by
include/asm-offsets.h, which is what will be referred to in the actual
source code).  Later this may be extended by architecture-specific
arch/*/lib/asm-offsets.c files that will generate a
include/generated/asm-offsets.h.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
14 years agoRename CONFIG_SYS_INIT_RAM_END into CONFIG_SYS_INIT_RAM_SIZE
Wolfgang Denk [Tue, 26 Oct 2010 11:32:32 +0000 (13:32 +0200)]
Rename CONFIG_SYS_INIT_RAM_END into CONFIG_SYS_INIT_RAM_SIZE

CONFIG_SYS_INIT_RAM_END was a misnomer as it suggests this might be
some end address; to make the meaning more clear we rename it into
CONFIG_SYS_INIT_RAM_SIZE

No other code changes are performed in this patch, only minor editing
of white space (due to the changed length) and the comments was done,
where noticed.

Note that the code for the PATI and cmi_mpc5xx board configurations
looks seriously broken.  Last known maintainers on Cc:

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Denis Peter <d.peter@mpl.ch>
Cc: Martin Winistoerfer <martinwinistoerfer@gmx.ch>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-blackfin
Wolfgang Denk [Tue, 26 Oct 2010 18:58:49 +0000 (20:58 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-blackfin

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Tue, 26 Oct 2010 18:57:41 +0000 (20:57 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-i2c
Wolfgang Denk [Tue, 26 Oct 2010 18:55:39 +0000 (20:55 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c

14 years agoARM: Use consistent assembler syntax
Gray Remlin [Sun, 24 Oct 2010 15:18:31 +0000 (16:18 +0100)]
ARM: Use consistent assembler syntax

Signed-off-by: Gray Remlin <g_remlin@rocketmail.com>
Acked-by: Heiko Schocher <hs@denx.de>
14 years agoBlackfin: adi boards: set compiled size limits
Mike Frysinger [Tue, 19 Oct 2010 22:02:43 +0000 (18:02 -0400)]
Blackfin: adi boards: set compiled size limits

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf527-ezkit-v2: move to boards.cfg
Mike Frysinger [Tue, 19 Oct 2010 06:41:26 +0000 (02:41 -0400)]
Blackfin: bf527-ezkit-v2: move to boards.cfg

Now that the boards.cfg file supports options to mkconfig, we can move
the bf527-ezkit-v2 target out of the Makefile and into boards.cfg.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoppc4xx: Add Io and IoCon 405EP board support
Dirk Eibach [Thu, 21 Oct 2010 08:50:05 +0000 (10:50 +0200)]
ppc4xx: Add Io and IoCon 405EP board support

Board support for the Guntermann & Drunck CATCenter Io.
Board support for the Guntermann & Drunck IoCon.

Signed-off-by: Dirk Eibach <eibach@gdsys.de>
Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoMerge branch 'master' of ssh://gemini/home/wd/git/u-boot/master
Wolfgang Denk [Mon, 25 Oct 2010 06:06:52 +0000 (08:06 +0200)]
Merge branch 'master' of ssh://gemini/home/wd/git/u-boot/master

14 years agoARMV7: OMAP: I2C driver: Fix bug found in 37XX testing
Steve Sakoman [Fri, 22 Oct 2010 20:48:00 +0000 (13:48 -0700)]
ARMV7: OMAP: I2C driver: Fix bug found in 37XX testing

On OMAP36/37XX the standard on chip pullups are not sufficient to
ensure proper i2c operation without external pullups or switching
to high speed mode and enabling special on chip pullups.

This is an issue for Beagle xM, which does not have external pullups
on the expansion board i2c lines.

The issue manifests itself as an AL (arbitration lost) error when
probing for a non-existent device (i.e. on a Beagle xM with no expansion
boards attached).  This issue does not occur on expansion boards that
include pullups or on Overo 37XX COM's since they include pull-ups.

This patch fixes the issue by checking for the AL bit in the i2c_probe
function.

Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org>
14 years agohcu4, hcu5: fix out of tree building
Wolfgang Denk [Sun, 24 Oct 2010 14:49:12 +0000 (16:49 +0200)]
hcu4, hcu5: fix out of tree building

Out of tree building of the Netstal hcu4 and hcu5 boards failed like
that:

Assembler messages:
Fatal error: can't create /work/wd/tmp-ppc/board/netstal/hcu4/../common/fixed_sdram.o: No such file or directory
Assembler messages:
Fatal error: can't create /work/wd/tmp-ppc/board/netstal/hcu4/../common/nm_bsp.o: No such file or directory
make[1]: *** [/work/wd/tmp-ppc/board/netstal/hcu4/../common/fixed_sdram.o] Error 2

Adapt (and simplify) the respective Makefiles.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Niklaus Giger <niklaus.giger@netstal.com>
14 years agoMPC8315ERD: fix build error
Wolfgang Denk [Sun, 24 Oct 2010 14:07:23 +0000 (16:07 +0200)]
MPC8315ERD: fix build error

Commit 29c6fbe "MPC5121: Add USB EHCI support" renamed
CONFIG_SYS_MPC8xxx_USB_ADDR into CONFIG_SYS_FSL_USB_ADDR but missed
to update arch/powerpc/cpu/mpc83xx/cpu_init.c, resulting in:

cpu_init.c: In function 'cpu_init_f':
cpu_init.c:332: error: 'CONFIG_SYS_MPC8xxx_USB_ADDR' undeclared (first use in this function)
cpu_init.c:332: error: (Each undeclared identifier is reported only once
cpu_init.c:332: error: for each function it appears in.)
make[1]: *** [/work/wd/tmp-ppc/arch/powerpc/cpu/mpc83xx/cpu_init.o] Error 1

Fix this.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Kim Phillips <kim.phillips@freescale.com>
14 years agoVoVPN-GW_100MHz: drop unsupported board configuration
Wolfgang Denk [Sun, 24 Oct 2010 13:46:08 +0000 (15:46 +0200)]
VoVPN-GW_100MHz: drop unsupported board configuration

The 100MHz configuation of the VoVPN-GW has never been supported, so
drop it now.

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agolite5200b_PM: fix compile warning
Wolfgang Denk [Sun, 24 Oct 2010 13:37:12 +0000 (15:37 +0200)]
lite5200b_PM: fix compile warning

Fix warning:

icecube.c: In function 'lite5200b_wakeup':
icecube.c:83: warning: format '%08lx' expects type 'long unsigned int', but argument 2 has type 'void (*)(void)'

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoMAKEALL: drop non-existent i386 config
Mike Frysinger [Wed, 20 Oct 2010 07:34:19 +0000 (03:34 -0400)]
MAKEALL: drop non-existent i386 config

14 years agoARM: fix relocation support for onenand device.
Enric Balletbo i Serra [Tue, 19 Oct 2010 09:13:22 +0000 (11:13 +0200)]
ARM: fix relocation support for onenand device.

We also have to relocate the onenand command table manually, otherwise
onenand command don't work.

Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
14 years agoMVBLM7: make TSEC2 work again.
Andre Schwarz [Fri, 22 Oct 2010 09:21:46 +0000 (11:21 +0200)]
MVBLM7: make TSEC2 work again.

SICRH has been misconfigured, i.e. TSEC2 clock + D[0:3] are GPIOs.
Fix this to be RGMII signals again.

Signed-off-by: Andre Schwarz <andre.schwarz@matrix-vision.de>
14 years agohwconfig: Utilize getenv_f before relocation to allow for larger buffer
Kumar Gala [Fri, 22 Oct 2010 08:18:13 +0000 (03:18 -0500)]
hwconfig: Utilize getenv_f before relocation to allow for larger buffer

Since we use hwconfig in cases before relocation (like getting DDR
params on FSL PPC systems), we can have strings that exceed the early
small (32 byte) buffer size that getenv will handle.

So we explicitly allocate our own buffer on the stack and use if to
handle getting the hwconfig env string.  We currently utilize a string
length of 128 bytes.

This allows us to get rid of boot messages like:

env_buf too small [32]

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agoenv_flash: Disable debug print statements
Peter Tyser [Fri, 22 Oct 2010 05:24:52 +0000 (00:24 -0500)]
env_flash: Disable debug print statements

With debug the follow is printed:
  => saveenv
  Saving Environment to Flash...
  Data to save 0x18000
  Data (start 0xfff48000, len 0x18000) saved at 0x7fe63f20
  Protect off FFF40000 ... FFF5FFFF
  Un-Protected 1 sectors
  Erasing Flash...
  . done
  Erased 1 sectors
  Writing to Flash... Restoring the rest of data to 0xfff48000 len 0x18000
  done
  Protected 1 sectors
  =>

Without debug:
  => saveenv
  Saving Environment to Flash...
  Un-Protected 1 sectors
  Erasing Flash...
  . done
  Erased 1 sectors
  Writing to Flash... done
  Protected 1 sectors
  =>

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
14 years agoMerge branch 'for-wd-master' of git://git.denx.de/u-boot-pxa
Wolfgang Denk [Sat, 23 Oct 2010 20:08:33 +0000 (22:08 +0200)]
Merge branch 'for-wd-master' of git://git.denx.de/u-boot-pxa

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Sat, 23 Oct 2010 19:59:42 +0000 (21:59 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-video
Wolfgang Denk [Sat, 23 Oct 2010 19:56:51 +0000 (21:56 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-video

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-usb
Wolfgang Denk [Sat, 23 Oct 2010 19:49:28 +0000 (21:49 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-usb

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-sh
Wolfgang Denk [Sat, 23 Oct 2010 19:45:57 +0000 (21:45 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-sh

14 years agoa4m072: add CONFIG_SYS_FLASH_BANKS_SIZES define
Ilya Yanok [Thu, 21 Oct 2010 15:20:13 +0000 (17:20 +0200)]
a4m072: add CONFIG_SYS_FLASH_BANKS_SIZES define

This patch adds CONFIG_SYS_FLASH_BANKS_SIZES define to make use of new
cfi_flash driver ability to detect flash chips that are bigger than a
corresponding address window (we have such situation on some revs of
a4m072).

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
14 years agocfi_flash: handle 'chip size exceeds address window' situation
Ilya Yanok [Thu, 21 Oct 2010 15:20:12 +0000 (17:20 +0200)]
cfi_flash: handle 'chip size exceeds address window' situation

On some boards we have flash mapped high in the address space with
considerably small window (say 0xFE000000 and 32MB). When we install
bigger chip (say 64MB) on such a board strange things happen
(flash_write() doesn't work at all, for ex). That's because cfi_flash
driver doesn't care about window size at all.
Of course, cleanest solution would probably be to just extend address
window to be able to map the whole flash but for legacy/compatibility
reasons some people prefer just truncate the flash size and never use
the upper part.
This patch adds an option for cfi_flash driver to handle this situation
properly. To achieve this we add the new function cfi_flash_bank_size()
which can be provided by the board code and weak-aliased to default
implementation that returns value from the CONFIG_SYS_FLASH_BANKS_SIZES
array if it's defined or 0 otherwise (the last case is added for
compatibility).
If non-zero flash bank size is provided and detected chip size is bigger
than provided address window size the warning will be displayed and
flash chip will be truncated.

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Changed cfi_flash_bank_size() return type to unsigned long
to match caller function.
Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoehci-hcd.c: fix hanging under higher load
Wolfgang Denk [Fri, 22 Oct 2010 12:23:00 +0000 (14:23 +0200)]
ehci-hcd.c: fix hanging under higher load

This patch solves a problem with USB hanging under higher load on a
i.MX31 board.  It falls into class of typical USB problems and fixes:
if you don't understand the real cause, add a delay somewhere.

The problem appeared after introduction of ELF relocation, which
results in smaller code, which appears to run faster (probably because
it fits better in the cache); turning off the instruction cache,
adding debug printf()s and increasing the delay have all been found to
make the problem go away.

Moving the original "udelay(1)" up in the code to it's new place made
the problem appear much less frequently. Increasing the delay to 2
microseconds then made the code run reliably in all (hour-long) tests.
To be on the safe side, we set it to 5 microseconds here.

Signed-off-by: Heiko schocher <hs@denx.de>
Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Stefano Babic <sbabic@denx.de>
14 years agousb_storage: constify us_direction lookup table
Mike Frysinger [Wed, 20 Oct 2010 11:16:04 +0000 (07:16 -0400)]
usb_storage: constify us_direction lookup table

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agousb: musb: constify a bit
Mike Frysinger [Wed, 20 Oct 2010 11:15:35 +0000 (07:15 -0400)]
usb: musb: constify a bit

These ep and root hub structures need not be writable.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoUSB: fix Queue Element Transfer Descriptor changes
Wolfgang Denk [Wed, 20 Oct 2010 19:08:17 +0000 (21:08 +0200)]
USB: fix Queue Element Transfer Descriptor changes

Commit 3ed1607 "USB: sync Queue Element Transfer Descriptor against
EHCI spec" added an "__attribute__ ((aligned (32)))" to the
declaration of struct qTD, as used for example in the Linux kernel as
well.

However, it turns out that this attribute causes errors in "usb start"
(like "ERROR: NOT USB_CONFIG_DESC 7b" and similar). Drop the attribute
again.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Dan Lykowski <lykowdk@gmail.com>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Stefano Babic <sbabic@denx.de>
14 years agoehci-pci: print hccr, hcor and hc_lenght
Florian Fainelli [Fri, 15 Oct 2010 13:53:45 +0000 (15:53 +0200)]
ehci-pci: print hccr, hcor and hc_lenght

It is useful to know the EHCI-PCI hccr, hcor and hc_lenght to make sure it was
successfully registered, and at the correct location.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
14 years agoehci-hcd.c: fix hanging under higher load
Wolfgang Denk [Fri, 22 Oct 2010 12:08:13 +0000 (14:08 +0200)]
ehci-hcd.c: fix hanging under higher load

This patch solves a problem with USB hanging under higher load on a
i.MX31 board.  It falls into class of typical USB problems and fixes:
if you don't understand the real cause, add a delay somewhere.

The problem appeared after introduction of ELF relocation, which
results in smaller code, which appears to run faster (probably because
it fits better in the cache); turning off the instruction cache,
adding debug printf()s and increasing the delay have all been found to
make the problem go away.

Moving the original "udelay(1)" up in the code to it's new place made
the problem appear much less frequently. Increasing the delay to 2
microseconds then made the code run reliably in all (hour-long) tests.
To be on the safe side, we set it to 5 microseconds here.

Signed-off-by: Heiko schocher <hs@denx.de>
Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Remy Bohmer <linux@bohmer.net>
Cc: Stefano Babic <sbabic@denx.de>
14 years agoSPARC: added unaligned definitions
Magnus Sjalander [Wed, 26 May 2010 11:23:53 +0000 (13:23 +0200)]
SPARC: added unaligned definitions

Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
14 years agoXPedite5500 board support
John Schmoller [Fri, 22 Oct 2010 05:20:34 +0000 (00:20 -0500)]
XPedite5500 board support

Initial support for Extreme Engineering Solutions XPedite5500 -
a P2020-based PMC/XMC single board computer.

Signed-off-by: John Schmoller <jschmoller@xes-inc.com>
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agoxes: Add POST support for 8xxx boards
Peter Tyser [Fri, 22 Oct 2010 05:20:33 +0000 (00:20 -0500)]
xes: Add POST support for 8xxx boards

Add memory and I2C posts to the XPedite517x/520x/537x board families.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agompc86xx: Add generic POST word read/write support
Peter Tyser [Fri, 22 Oct 2010 05:20:32 +0000 (00:20 -0500)]
mpc86xx: Add generic POST word read/write support

The PIC's TFRR register doesn't affect hardware and is generally unused,
so use as storage for the POST word.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agopost/i2c: Add ability to ignore I2C devices
Peter Tyser [Fri, 22 Oct 2010 05:20:31 +0000 (00:20 -0500)]
post/i2c: Add ability to ignore I2C devices

Add the ability to not report an I2C POST error for a set of given I2C
addresses on bootup.  This is useful for cases when a device may or may
not be present, and neither case is considered an error.  For example:

- Some form factors such as XMC and Compact PCI Express have an I2C
  EEPROM whose address changes based on geographical address.  Eg
  installed in one slot its EEPROM address is, 0x50, in another its
  0x51, etc.  This allows multiple devices to have their EEPROMs present
  on the same I2C bus.  Thus the I2C devices present for an XMC or
  CPCIe card depend on if and where other cards are installed in the
  same system.

- Some cards have optional I2C devices.  Eg one hardware build
  configuration has different I2C devices than another and software
  can't determine if the optional device should be present or not.

- Some cards have optional daughtercards with I2C devices on them.

- I2C EEPROMs address range depends on their size.  Its possible to
  support differently size EEPROMs by only probing the EEPROM's base
  address and ignoring the other addresses that are impacted by its
  size.

A new CONFIG_SYS_POST_I2C_IGNORES define has been added which specifies
a list of I2C addresses for the I2C POST to ignore.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Acked-by: Heiko Schocher <hs@denx.de>
Acked-by: Wolfgang Denk <wd@denx.de>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agopost/i2c: Rename I2C_ADDR_LIST to CONFIG_SYS_POST_I2C_ADDRS
Peter Tyser [Fri, 22 Oct 2010 05:20:30 +0000 (00:20 -0500)]
post/i2c: Rename I2C_ADDR_LIST to CONFIG_SYS_POST_I2C_ADDRS

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Acked-by: Heiko Schocher <hs@denx.de>
Acked-by: Wolfgang Denk <wd@denx.de>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agopost/i2c: Don't probe address 0
Peter Tyser [Fri, 22 Oct 2010 05:20:29 +0000 (00:20 -0500)]
post/i2c: Don't probe address 0

According to the I2C specification device address 0 is the "general call
address", ie a broadcast address.  The I2C specification states that the
format of a general call uses at least 2 bytes, which U-Boot's probing
routine does not adhere to.

Not probing device address 0 will prevent possible issues with devices
that accept general calls.  Additionally, this change shouldn't reduce
POST coverage since each I2C device should still be accessed via its
own, unique address.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Acked-by: Heiko Schocher <hs@denx.de>
Acked-by: Wolfgang Denk <wd@denx.de>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>