oweals/u-boot.git
14 years agonios2: allow STANDALONE_LOAD_ADDR overriding
Thomas Chou [Fri, 21 May 2010 03:08:02 +0000 (11:08 +0800)]
nios2: allow STANDALONE_LOAD_ADDR overriding

This patch allows users to override default STANDALONE_LOAD_ADDR.
The gcclibdir path was duplicated in the standalone Makefile and
can be removed.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agonios2: fix div64 issue for gcc4
Thomas Chou [Fri, 14 May 2010 22:00:05 +0000 (06:00 +0800)]
nios2: fix div64 issue for gcc4

This patch fixes the run-time error on div64 when built with
gcc4, which was reported by jhwu0625 on nios forum. It merges
math support from libgcc of gcc4. This patch is copied from
nios2-linux.

It works with both gcc3 and gcc4. The old mult.c, divmod.c and
math.h are removed.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agonios2: fix r15 issue for gcc4
Thomas Chou [Fri, 21 May 2010 03:08:03 +0000 (11:08 +0800)]
nios2: fix r15 issue for gcc4

The "-ffixed-r15" option doesn't work well for gcc4. Since we
don't use gp for small data with option "-G0", we can use gp
as global data pointer. This allows compiler to use r15. It
is necessary for gcc4 to work properly.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agospi: add altera spi controller support
Thomas Chou [Fri, 30 Apr 2010 03:34:16 +0000 (11:34 +0800)]
spi: add altera spi controller support

This patch adds the driver of altera spi controller, which is
used as epcs/spi flash controller. It also works with mmc_spi
driver.

This driver support more than one spi bus, with base list declared
#define CONFIG_SYS_ALTERA_SPI_LIST { BASE_0,BASE_1,... }

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Tested-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agonios2: add gpio support to nios2-generic board
Thomas Chou [Fri, 30 Apr 2010 03:34:15 +0000 (11:34 +0800)]
nios2: add gpio support to nios2-generic board

This patch adds gpio support of Altera PIO component to the
nios2-generic board. Though it drives only gpio_led at the
moment, it supports bidirectional port to control bit-banging
I2C, NAND flash busy status or button switches, etc.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Tested-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agomisc: add gpio based status led driver
Thomas Chou [Fri, 30 Apr 2010 03:34:14 +0000 (11:34 +0800)]
misc: add gpio based status led driver

This patch adds a status led driver followed the GPIO access
conventions of Linux. The led mask is used to specify the gpio pin.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Tested-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agonios2: add gpio support
Thomas Chou [Fri, 30 Apr 2010 03:34:13 +0000 (11:34 +0800)]
nios2: add gpio support

This patch adds driver for a trivial gpio core, which is described
in http://nioswiki.com/GPIO. It is used for gpio led and nand flash
interface in u-boot.

When CONFIG_SYS_GPIO_BASE is not defined, board may provide
its own driver.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Tested-by: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agoPrepare v2010.06-rc1 v2010.06-rc1
Wolfgang Denk [Wed, 26 May 2010 21:57:08 +0000 (23:57 +0200)]
Prepare v2010.06-rc1

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoCoding style cleanup, update CHANGELOG.
Wolfgang Denk [Wed, 26 May 2010 21:51:22 +0000 (23:51 +0200)]
Coding style cleanup, update CHANGELOG.

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc83xx
Wolfgang Denk [Wed, 26 May 2010 20:36:32 +0000 (22:36 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx

14 years agoconfig.mk: use different host compiler for OS X 10.6
Andreas Biessmann [Sat, 22 May 2010 11:17:21 +0000 (13:17 +0200)]
config.mk: use different host compiler for OS X 10.6

Compiling tools subdirectory on Mac OS X 10.6 (Snow Leopard) complains about
wrong syntax in system includes.

In file included from /usr/include/stdio.h:444,
                 from ../source/u-boot/include/compiler.h:26,
                 from ../source/u-boot/lib/crc32.c:15:
/usr/include/secure/_stdio.h:46: error: syntax error in macro parameter list

This can be fixed by reverting the workaround for prior OS X releases in
config.mk conditionally for OS X 10.6+.

Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
Acked-by: Mike Frysinger <vapier@gentoo.org>
14 years agoConvert Makefiles from COBJS-${} to COBJS-$()
Kumar Gala [Fri, 21 May 2010 09:17:48 +0000 (04:17 -0500)]
Convert Makefiles from COBJS-${} to COBJS-$()

Match style we use almost everywhere else

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agopowerpc/bootcount: Fix endianness problem
Michael Weiss [Thu, 20 May 2010 14:09:35 +0000 (16:09 +0200)]
powerpc/bootcount: Fix endianness problem

For CONFIG_SYS_BOOTCOUNT_SINGLEWORD the code had an endianness problem.

Signed-off-by: Michael Weiss <michael.weiss@ifm.com>
Signed-off-by: Detlev Zundel <dzu@denx.de>
14 years agodm9000x.c: fix compile problems
Wolfgang Denk [Wed, 26 May 2010 20:19:35 +0000 (22:19 +0200)]
dm9000x.c: fix compile problems

Use readX() / writeX() accessors instead of inX() / outX().

Suggested-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoa320evb: fix udelay / __udelay confusion
Wolfgang Denk [Fri, 21 May 2010 21:14:53 +0000 (23:14 +0200)]
a320evb: fix udelay / __udelay confusion

Fix the following compiler problems:

arch/arm/cpu/arm920t/a320/liba320.a(timer.o): In function `udelay':
/home/wd/git/u-boot/work/arch/arm/cpu/arm920t/a320/timer.c:160: multiple definition of `udelay'
lib/libgeneric.a(time.o):/home/wd/git/u-boot/work/lib/time.c:34: first defined here
lib/libgeneric.a(time.o): In function `udelay':
time.c:(.text+0x1c): undefined reference to `__udelay'

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoARM: */timer.c: fix spelling and vertical alignment
Wolfgang Denk [Fri, 21 May 2010 21:13:18 +0000 (23:13 +0200)]
ARM: */timer.c: fix spelling and vertical alignment

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agobugfix: Guruplug: Use standard miiphy
Mahavir Jain [Fri, 21 May 2010 09:07:48 +0000 (14:37 +0530)]
bugfix: Guruplug: Use standard miiphy

call to reset PHY chip.

Current PHY Software Reset operation in guruplug does not
poll reset bit in control register to go to 0(auto clearing)
for making sure reset was successful.This patch uses standard
miiphy call miiphy_reset to make sure proper PHY reset operation.

Signed-off-by: Mahavir Jain <mjain@marvell.com>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-ubi
Wolfgang Denk [Fri, 21 May 2010 20:26:14 +0000 (22:26 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-ubi

14 years agompc83xx: don't shift pre-shifted ACR, SPCR, SCCR bitfield masks in cpu_init.c
Kim Phillips [Wed, 19 May 2010 22:06:46 +0000 (17:06 -0500)]
mpc83xx: don't shift pre-shifted ACR, SPCR, SCCR bitfield masks in cpu_init.c

commit c7190f028fa950d4d36b6d0b4bb3fc72602ec54c "mpc83xx:
retain POR values of non-configured ACR, SPCR, SCCR, and LCRR
bitfields" incorrectly shifted <register>_<bitfield> (e.g.
ACR_PIPE_DEP) values that were preshifted by their
definition in mpc83xx.h.

this patch removes the unnecessary shifting for the newly
utilized mask values in cpu_init.c, and prevents seemingly
unrelated symptoms such as an mpc8379erdb board from
locking up whilst performing a networking operation,
e.g. a tftp.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
14 years agoFixed two typos in arch/powerpc/cpu/mpc83xx/start.S.
Horst Kronstorfer [Tue, 18 May 2010 08:37:05 +0000 (10:37 +0200)]
Fixed two typos in arch/powerpc/cpu/mpc83xx/start.S.

Signed-off-by: Horst Kronstorfer <hkronsto@frequentis.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-imx
Wolfgang Denk [Fri, 21 May 2010 20:22:23 +0000 (22:22 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-imx

14 years agoFix "par[t]ition" typo.
Wolfgang Denk [Tue, 17 Nov 2009 20:27:39 +0000 (21:27 +0100)]
Fix "par[t]ition" typo.

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoUBI: Fix problem in UBI/Linux "compatibility layer"
Stefan Roese [Mon, 17 May 2010 08:01:05 +0000 (10:01 +0200)]
UBI: Fix problem in UBI/Linux "compatibility layer"

"down_write_trylock" needs to return 1 instead of 0 for success.
Otherwise copying a block with a read error (e.g. bit-flip on read)
won't work correctly.

Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoUBI: Ensure that "background thread" operations are really executed
Stefan Roese [Mon, 17 May 2010 08:00:51 +0000 (10:00 +0200)]
UBI: Ensure that "background thread" operations are really executed

The current U-Boot UBI implementation is copied from Linux. In this
porting the UBI background thread was not handled correctly. Upon write
operations ubi_wl_flush() makes sure, that all queued operations, like
page-erase, are completed. But this is missing for read operations.

This patch now makes sure that such operations (like scrubbing upon
bit-flip errors) are not queued, but executed directly.

Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoMX31: Added support for the Casio COM57H5M10XRC to QONG
Stefano Babic [Thu, 13 May 2010 08:26:40 +0000 (10:26 +0200)]
MX31: Added support for the Casio COM57H5M10XRC to QONG

The patch adds setup to connect a CASIO COM57H5M10XRC
(640x480 TFT display) to the QONG module.

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agofsl_diu_fb.c: fix build warnings
Wolfgang Denk [Mon, 17 May 2010 21:34:18 +0000 (23:34 +0200)]
fsl_diu_fb.c: fix build warnings

Commit 15351855 "fsl-diu: Using I/O accessor to CCSR space" caused a
number of "passing argument 2 of 'out_be32' makes integer from pointer
without a cast" warnings; fix these.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Dave Liu <daveliu@freescale.com>
Cc: Jerry Huang <Chang-Ming.Huang@freescale.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
14 years agoAvoid use of divides in print_size
Nick Thompson [Tue, 11 May 2010 10:29:52 +0000 (11:29 +0100)]
Avoid use of divides in print_size

Modification of print_size to avoid use of divides and especially
long long divides. Keep the binary scale factor in terms of bit
shifts instead. This should be faster, since the previous code
gave the compiler no clues that the divides where always powers
of two, preventing optimisation.

Signed-off-by: Nick Thompson <nick.thompson@ge.com>
Acked-by: Timur Tabi <timur@freescale.com>
14 years agolan91c96, smc911x: remove useless free(ptr) calls on NULL ptr
Serge Ziryukin [Mon, 10 May 2010 14:40:49 +0000 (17:40 +0300)]
lan91c96, smc911x: remove useless free(ptr) calls on NULL ptr

Signed-off-by: Serge Ziryukin <ftrvxmtrx@gmail.com>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc83xx
Wolfgang Denk [Mon, 17 May 2010 21:16:08 +0000 (23:16 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Mon, 17 May 2010 21:14:41 +0000 (23:14 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Mon, 17 May 2010 21:11:21 +0000 (23:11 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

14 years agoFix SICRL setting in SIMPC8313
Ron Madrid [Fri, 14 May 2010 23:27:48 +0000 (16:27 -0700)]
Fix SICRL setting in SIMPC8313

This patch sets the SICRL_LBC bits in SICRL to change the function of the
associated pins to GPIO functionality.

Signed-off-by: Ron Madrid <ron_madrid@sbcglobal.net>
14 years agompc83xx: fix NAND bootstrap too big error
Kim Phillips [Fri, 14 May 2010 18:18:54 +0000 (13:18 -0500)]
mpc83xx: fix NAND bootstrap too big error

commit 167cdad1372917bc11c636c359aad02625291fa9 "SERIAL: Enable
port-mapped access" inadvertently broke 83xx nand boards by
converting NS16550_init to use io accessors, which expanded
the size of the generated code.

this patch fixes the problem by removing icache functions from
the nand builds, which somewhat follows commit
1a2e203b31d33fb720f2cf1033b241ad36ab405a "mpc83xx: turn on icache
in core initialization to improve u-boot boot time"

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
14 years agoRemoval of checkboard from spl bootstrap build for SIMPC8313
Ron Madrid [Mon, 10 May 2010 22:23:20 +0000 (15:23 -0700)]
Removal of checkboard from spl bootstrap build for SIMPC8313

This patch removes the checkboard function from the build of
the 4k bootstrap section for the SIMPC8313 as it is not needed
in the spl build.  This will allow > 100 bytes of extra room
for other uses.

Signed-off-by: Ron Madrid <ron_madrid@sbcglobal.net>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
14 years agoppc4xx: Fix building PLU405 board
Matthias Fuchs [Tue, 11 May 2010 07:54:00 +0000 (09:54 +0200)]
ppc4xx: Fix building PLU405 board

Due to some overlapping sections it's time to update TEXT_BASE
for this board.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoMakefile: fix out-of-tree building of "u-boot.img" target
Wolfgang Denk [Sat, 15 May 2010 19:23:51 +0000 (21:23 +0200)]
Makefile: fix out-of-tree building of "u-boot.img" target

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoMVBLM7, MVSMR: fix Makefile (cleanup bootscript.img)
Wolfgang Denk [Sat, 15 May 2010 18:22:21 +0000 (20:22 +0200)]
MVBLM7, MVSMR: fix Makefile (cleanup bootscript.img)

Fix MVBLM7 and MVSMR Makefiles for correct out-of-tree building
(create "bootscript.img" in build directory instead of source
directory) and cleanup (remove "bootscript.img" when cleaning up).

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Andre Schwarz <andre.schwarz@matrix-vision.de>
14 years agoARM: add __aeabi_unwind_cpp_pr0() function to avoid linker complaints
Wolfgang Denk [Mon, 10 May 2010 21:08:02 +0000 (23:08 +0200)]
ARM: add __aeabi_unwind_cpp_pr0() function to avoid linker complaints

Signed-off-by: Wolfgang Denk <wd@denx.de>
Tested-by: Thomas Weber <weber@corscience.de>
14 years agodrivers/mmc/fsl_esdhc.c: fix compiler warnings
Wolfgang Denk [Sun, 9 May 2010 21:52:59 +0000 (23:52 +0200)]
drivers/mmc/fsl_esdhc.c: fix compiler warnings

Commit 77c1458d caused the following compiler warnings:

fsl_esdhc.c: In function 'esdhc_pio_read_write':
fsl_esdhc.c:142: warning: assignment discards qualifiers from pointer target type
fsl_esdhc.c: In function 'esdhc_setup_data':
fsl_esdhc.c:169: warning: unused variable 'wml_value'
fsl_esdhc.c: In function 'esdhc_pio_read_write':
fsl_esdhc.c:164: warning: control reaches end of non-void function

Fix these.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Dipen Dudhat <dipen.dudhat@freescale.com>
Cc: Andy Fleming <afleming@freescale.com>
14 years agoEnabled support for Rev 1.3 SPD for DDR2 DIMMs
York Sun [Fri, 7 May 2010 14:12:01 +0000 (09:12 -0500)]
Enabled support for Rev 1.3 SPD for DDR2 DIMMs

SPD has minor change from Rev 1.2 to 1.3. This patch enables Rev 1.3.
The difference has ben examined and the code is compatible.
Speed bins is not verified on hardware for CL7 at this moment.

This patch also enables SPD Rev 1.x where x is up to "F". According to SPD
spec, the lower nibble is optionally used to determine which additinal bytes
or attribute bits have been defined. Software can safely use defaults. However,
the upper nibble should always be checked.

Signed-off-by: York Sun <yorksun@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years ago85xx/fsl-sata: Use is_serdes_configured() to determine if SATA is enabled
Kumar Gala [Tue, 20 Apr 2010 15:21:25 +0000 (10:21 -0500)]
85xx/fsl-sata: Use is_serdes_configured() to determine if SATA is enabled

On the MPC85xx platform if we have SATA its connected on SERDES.
Determing if SATA is enabled via sata_initialize should not be board
specific and thus we move it out of the MPC8536DS board code.

Additionally, now that we have is_serdes_configured() we can determine
if the given SATA port is enabled and error out if its not in the
driver.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years ago85xx/mpc8536ds: Use is_serdes_configured() to determine of PCIe enabled
Kumar Gala [Tue, 20 Apr 2010 15:21:12 +0000 (10:21 -0500)]
85xx/mpc8536ds: Use is_serdes_configured() to determine of PCIe enabled

The new is_serdes_configured covers a broader range of devices than the
PCI specific code.  Use it instead as we convert away from the
is_fsl_pci_cfg() code.

Additionally move to setting LAWs for PCI based on if its configured.
Also updated PCI FDT fixup code to remove PCI controllers from dtb if
they are configured.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years ago85xx: Add is_serdes_configured() support to MPC8536 SERDES
Kumar Gala [Tue, 20 Apr 2010 15:20:33 +0000 (10:20 -0500)]
85xx: Add is_serdes_configured() support to MPC8536 SERDES

Add the ability to determine if a given IP block connected on SERDES is
configured.  This is useful for things like PCIe and SRIO since they are
only ever connected on SERDES.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agofsl-diu: Using I/O accessor to CCSR space
Jerry Huang [Thu, 8 Apr 2010 07:56:07 +0000 (15:56 +0800)]
fsl-diu: Using I/O accessor to CCSR space

Using PPC I/O accessor to DIU I/O space instead of directly
read/write. It will prevent the dozen of compiler order issue
and PPC hardware order issue for accessing I/O space.

Using the toolchain(tc-fsl-x86lnx-e500-dp-4.3.74-2.i386.rpm)
can show up the order issue of DIU driver.

Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc83xx
Wolfgang Denk [Sat, 8 May 2010 23:16:51 +0000 (01:16 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx

14 years agompc83xx/mvBLM7: add usb commands and cleanup.
Andre Schwarz [Mon, 3 May 2010 11:22:31 +0000 (13:22 +0200)]
mpc83xx/mvBLM7: add usb commands and cleanup.

Add USB commands.
Rename autoscript to bootscript.
Add automatic bootscript image generation to makefile.

Signed-off-by: Andre Schwarz <andre.schwarz@matrix-vision.de>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
14 years agompc83xx: Add UPMA configuration to SIMPC8313
Ron Madrid [Wed, 28 Apr 2010 23:04:43 +0000 (16:04 -0700)]
mpc83xx: Add UPMA configuration to SIMPC8313

Added UPM array table, upmconfig, and Local Bus configuration support for SIMPC8313

Signed-off-by: Ron Madrid <ron_madrid@sbcglobal.net>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
14 years agoserial: punt unused serial_addr()
Mike Frysinger [Wed, 5 May 2010 08:32:43 +0000 (04:32 -0400)]
serial: punt unused serial_addr()

Only one file apparently defines this function, and it merely stubs
it out. So if no one is defining/calling it, punt it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoupdate include/asm/ gitignore after move
Mike Frysinger [Tue, 27 Apr 2010 18:15:34 +0000 (14:15 -0400)]
update include/asm/ gitignore after move

With the cpu include paths moved, the gitignore paths need updating.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Tom Rix <tom@bumblecow.com>
14 years agoFixup native builds on powerpc
Kumar Gala [Wed, 28 Apr 2010 07:52:02 +0000 (02:52 -0500)]
Fixup native builds on powerpc

When we changed ARCH from ppc to powerpc we need to treat HOSTARCH the
same way.  We use HOSTARCH == ARCH to determine if a build is native.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agocmd_usb.c: show cmd usage if no args given
Serge Ziryukin [Sun, 25 Apr 2010 18:32:36 +0000 (21:32 +0300)]
cmd_usb.c: show cmd usage if no args given

Signed-off-by: Serge Ziryukin <ftrvxmtrx@gmail.com>
14 years agopowerpc: Consolidate bootcount_{store|load} for PowerPC
Stefan Roese [Wed, 28 Apr 2010 08:47:36 +0000 (10:47 +0200)]
powerpc: Consolidate bootcount_{store|load} for PowerPC

This patch consolidates bootcount_{store|load} for PowerPC by
implementing a common version in arch/powerpc/lib/bootcount.c. This
code is now used by all PowerPC variants that currently have these
functions implemented.

The functions now use the proper IO-accessor functions to read/write the
values.

This code also supports two different bootcount versions:

a) Use 2 separate words (2 * 32bit) to store the bootcounter
b) Use only 1 word (2 * 16bit) to store the bootcounter

Version b) was already used by MPC5xxx.

Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Detlev Zundel <dzu@denx.de>
Acked-by: Kim Phillips <kim.phillips@freescale.com>
          for 83xx parts
Cc: Michael Zaidman <michael.zaidman@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Kim Phillips <kim.phillips@freescale.com>
Cc: Anatolij Gustschin <agust@denx.de>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-i2c
Wolfgang Denk [Thu, 6 May 2010 21:21:00 +0000 (23:21 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c

14 years agodrivers/*/Makefile: fix conditional compile rule.
Ender.Dai [Thu, 22 Apr 2010 07:24:25 +0000 (15:24 +0800)]
drivers/*/Makefile: fix conditional compile rule.

Fix conditional compile rule for twl4030.c and videomodes.c.

Signed-off-by: Ender.Dai <ender.dai@gmail.com>
14 years agoMove test for unnecessary memmove to memmove_wd()
Larry Johnson [Tue, 20 Apr 2010 12:09:43 +0000 (08:09 -0400)]
Move test for unnecessary memmove to memmove_wd()

Signed-off-by: Larry Johnson <lrj@acm.org>
14 years agocompiler.h: add uint typedef
Mike Frysinger [Tue, 20 Apr 2010 09:49:30 +0000 (05:49 -0400)]
compiler.h: add uint typedef

Recent crc changes started using the "uint" type in headers that are used
on the build system.  This subsequently broke mingw targets as they do not
provide such a type.  So add this basic typedef to compiler.h so that we
do not have to worry about this breaking again in the future.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agocommand.c: Enable auto tab for the editenv command
Trübenbach, Ralf [Wed, 14 Apr 2010 09:15:16 +0000 (11:15 +0200)]
command.c: Enable auto tab for the editenv command

Enable the auto completion (with TAB) of the environment variable name
after the editenv command.

Signed-off-by: Ralf Trübenbach <ralf.truebenbach@men.de>
14 years ago74xx_7xx: CPCI750: Add ECC support on esd CPCI-CPU/750 board
Reinhard Arlt [Tue, 13 Apr 2010 07:59:09 +0000 (09:59 +0200)]
74xx_7xx: CPCI750: Add ECC support on esd CPCI-CPU/750 board

Add ECC support for DDR RAM for MV64360 on esd CPCI-CPU/750 board.

This patch also adds the "pldver" command to display the CPLD
revision.

Signed-off-by: Reinhard Arlt <reinhard.arlt@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
14 years agosc520: Fix minor DRAM Controller Setup bug
Graeme Russ [Fri, 23 Apr 2010 14:06:00 +0000 (00:06 +1000)]
sc520: Fix minor DRAM Controller Setup bug

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agosc520: Update to new AMD Copyright
Graeme Russ [Fri, 23 Apr 2010 14:05:59 +0000 (00:05 +1000)]
sc520: Update to new AMD Copyright

AMD recently changed the licensing of the RAM sizing code to the
GPLv2 (or at your option any later version)

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agoeNET: Implement eNET Watchdog
Graeme Russ [Fri, 23 Apr 2010 14:05:58 +0000 (00:05 +1000)]
eNET: Implement eNET Watchdog

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agoeNET: Use SC520 MMCR to reset eNET board
Graeme Russ [Fri, 23 Apr 2010 14:05:57 +0000 (00:05 +1000)]
eNET: Use SC520 MMCR to reset eNET board

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agoeNET: Add PC/AT compatibility setup function
Graeme Russ [Fri, 23 Apr 2010 14:05:56 +0000 (00:05 +1000)]
eNET: Add PC/AT compatibility setup function

The eNET uses the sc520 software timers rather than the PC/AT clones

Set all interrupts and timers up to be PC/AT compatible

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agoeNET: Add support for onboard RTL8100B (RTL8139) chips
Graeme Russ [Fri, 23 Apr 2010 14:05:55 +0000 (00:05 +1000)]
eNET: Add support for onboard RTL8100B (RTL8139) chips

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agosc520: Board Specific PCI Init
Graeme Russ [Fri, 23 Apr 2010 14:05:54 +0000 (00:05 +1000)]
sc520: Board Specific PCI Init

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agosc520: Move PCI defines to PCI include file
Graeme Russ [Fri, 23 Apr 2010 14:05:53 +0000 (00:05 +1000)]
sc520: Move PCI defines to PCI include file

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agoeNET: Fix CONFIG_SYS_HZ to be 1000
Graeme Russ [Fri, 23 Apr 2010 14:05:52 +0000 (00:05 +1000)]
eNET: Fix CONFIG_SYS_HZ to be 1000

The clock interupt has always been 1kHz as per timer_init() in
/arch/i386/cpu/sc520/sc520_timer.c

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agoeNET: Fix Flash Write
Graeme Russ [Fri, 23 Apr 2010 14:05:51 +0000 (00:05 +1000)]
eNET: Fix Flash Write

Onboard AMD Flash chip does not support buffered writes

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agosc520: Allow boards to override udelay
Graeme Russ [Fri, 23 Apr 2010 14:05:50 +0000 (00:05 +1000)]
sc520: Allow boards to override udelay

If the board has a high precision mico-second timer, it maked sense to use
it instead of the on-chip one

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Fix support for booting bzImage
Graeme Russ [Fri, 23 Apr 2010 14:05:49 +0000 (00:05 +1000)]
x86: Fix support for booting bzImage

Add support for newer (up to 2.6.33) kernels

Add zboot command which takes the address of a bzImage as its first
argument and (optionally) the size of the bzImage as the second argument
(the second argument is needed for older kernels which do not include
the bzImage size in the header)

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Provide weak PC/AT compatibility setup function
Graeme Russ [Fri, 23 Apr 2010 14:05:48 +0000 (00:05 +1000)]
x86: Provide weak PC/AT compatibility setup function

It is possibly to setup x86 boards to use non-PC/AT configurations. For
example, the sc520 is an x86 CPU with PC/AT and non-PC/AT peripherals.
This function allows the board to set itself up for maximum PC/AT
compatibility just before booting the Linux kernel (the Linux kernel
'just works' if everything is PC/AT compliant)

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Use CONFIG_SERIAL_MULTI
Graeme Russ [Fri, 23 Apr 2010 14:05:47 +0000 (00:05 +1000)]
x86: Use CONFIG_SERIAL_MULTI

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agoSERIAL: Enable port-mapped access
Graeme Russ [Fri, 23 Apr 2010 14:05:46 +0000 (00:05 +1000)]
SERIAL: Enable port-mapped access

The x86 architecture exclusively uses Port-Mapped I/O (inb/outb) to access
the 16550 UARTs. This patch mimics how Linux selects between Memory-Mapped
and Port-Mapped I/O. This allows x86 boards to use CONFIG_SERIAL_MUTLI and
drop the custom serial port driver

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Fix copying of Real-Mode code into RAM
Graeme Russ [Fri, 23 Apr 2010 14:05:45 +0000 (00:05 +1000)]
x86: Fix copying of Real-Mode code into RAM

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Pass relocation offset into Global Data
Graeme Russ [Fri, 23 Apr 2010 14:05:44 +0000 (00:05 +1000)]
x86: Pass relocation offset into Global Data

In order to locate the 16-bit BIOS code, we need to know the reloaction
offset.

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Move GDT to a safe location in RAM
Graeme Russ [Fri, 23 Apr 2010 14:05:43 +0000 (00:05 +1000)]
x86: Move GDT to a safe location in RAM

Currently, the GDT is either located in FLASH or in the non-relocated
U-Boot image in RAM. Both of these locations are unsafe as those
locations can be erased during a U-Boot update. Move the GDT into the
highest available memory location and relocate U-Boot to just below it

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Add RAM bootstrap functionality
Graeme Russ [Fri, 23 Apr 2010 14:05:42 +0000 (00:05 +1000)]
x86: Add RAM bootstrap functionality

Add a parameter to the 32-bit entry to indicate if entry is from Real
Mode or not. If entry is from Real Mode, execute the destructive 'sizer'
routine to determine memory size as we are booting cold and running in
Flash. If not entering from Real Mode, we are executing a U-Boot image
from RAM and therefore the memory size is already known (and running
'sizer' will destroy the running image)

There are now two 32-bit entry points. The first is the 'in RAM' entry
point which exists at the start of the U-Boot binary image. As such,
you can load u-boot.bin in RAM and jump directly to the load address
without needing to calculate any offsets. The second entry point is
used by the real-to-protected mode switch

This patch also changes TEXT_BASE to 0x6000000 (in RAM). You can load
the resulting image at 0x6000000 and simple go 0x6000000 from the u-boot
prompt

Hopefully a later patch will completely elliminate any dependency on
TEXT_BASE like a relocatable linux kernel (perfect world)

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Split sc520 memory sizing versus reporting
Graeme Russ [Fri, 23 Apr 2010 14:05:41 +0000 (00:05 +1000)]
x86: Split sc520 memory sizing versus reporting

This patch allows the low-level assembler boot-strap to obtain the RAM
size without calling the destructive 'sizer' routine. This allows
boot-strapping from a U-Boot image loaded in RAM

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Fix sc520 memory size reporting
Graeme Russ [Fri, 23 Apr 2010 14:05:40 +0000 (00:05 +1000)]
x86: Fix sc520 memory size reporting

There is an error in how the assembler version of the sc520 memory size
reporting code works. As a result, it will only ever report at most the
size of one bank of RAM

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Fix do_go_exec()
Graeme Russ [Fri, 23 Apr 2010 14:05:39 +0000 (00:05 +1000)]
x86: Fix do_go_exec()

This was broken a long time ago by a49864593e083a5d0779fb9ca98e5a0f2053183d
which munged the NIOS and x86 do_go_exec()

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Add register dump to crash handlers
Graeme Russ [Fri, 23 Apr 2010 14:05:38 +0000 (00:05 +1000)]
x86: Add register dump to crash handlers

Shamelessly steal the Linux x86 crash handling code and shove it into
U-Boot (cool - it fits). Be sure to include suitable attribution to
Linus

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Fix MMCR Access
Graeme Russ [Fri, 23 Apr 2010 14:05:37 +0000 (00:05 +1000)]
x86: Fix MMCR Access

Change sc520 MMCR Access to use memory accessor functions

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: #ifdef out getenv_IPaddr()
Graeme Russ [Fri, 23 Apr 2010 14:05:36 +0000 (00:05 +1000)]
x86: #ifdef out getenv_IPaddr()

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agox86: Add unaligned.h
Graeme Russ [Fri, 23 Apr 2010 14:05:35 +0000 (00:05 +1000)]
x86: Add unaligned.h

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
14 years agoPOST: Added ECC memory test for mpc83xx.
Michael Zaidman [Wed, 7 Apr 2010 15:30:08 +0000 (18:30 +0300)]
POST: Added ECC memory test for mpc83xx.

Signed-off-by: Michael Zaidman <michael.zaidman@gmail.com>
Fixed minor coding style issue.
Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agocmd_onenand.c: moved to standard subcommand handling
Frans Meulenbroeks [Sat, 27 Mar 2010 16:14:36 +0000 (17:14 +0100)]
cmd_onenand.c: moved to standard subcommand handling

On the fly also fixed the following things:
- write help talked about a parameter oob, but that one was not used, so
  removed it from the help message.
- the test command also allowed a force subcommand but didn't use it.
  eliminated the code.
- do_onenand made static
- do_onenand contained
int blocksize;
...
mtd = &onenand_mtd;
this = mtd->priv;
blocksize = (1 << this->erase_shift);
  As blocksize was not used the last two statements were unneeded so
  removed them.
  The first statement (mtd = ....) assigns to a global. Not sure if it
  is needed, and since I could not test this, left the line for now

Signed-off-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
14 years agoppc: unused memory region too close to current stack pointer
Norbert van Bolhuis [Fri, 19 Mar 2010 14:34:25 +0000 (15:34 +0100)]
ppc: unused memory region too close to current stack pointer

This avoids a possible overwrite of the (end of) ramdisk by u-boot.
The unused memory region for ppc boot currently starts 1k below the
do_bootm->bootm_start->arch_lmb_reserve stack ptr. This isn't enough since
do_bootm->do_bootm_linux->boot_relocate_fdt calls printf which may
very well use more than 1k stack space.

Signed-off-by: Norbert van Bolhuis <nvbolhuis@aimvalley.nl>
14 years agoallow print_size to print large numbers on 32-bit systems
Timur Tabi [Tue, 13 Apr 2010 18:16:03 +0000 (13:16 -0500)]
allow print_size to print large numbers on 32-bit systems

Modify print_size() so that it can accept numbers larger than 4GB on 32-bit
systems.

Add support for display terabyte, petabyte, and exabyte sizes.  Change the
output to use International Electrotechnical Commission binary prefix standard.

Signed-off-by: Timur Tabi <timur@freescale.com>
14 years agofix print_size printing fractional gigabyte numbers on 32-bit platforms
Timur Tabi [Tue, 13 Apr 2010 18:16:02 +0000 (13:16 -0500)]
fix print_size printing fractional gigabyte numbers on 32-bit platforms

In print_size(), the math that calculates the fractional remainder of a number
used the same integer size as a physical address.  However, the "10 *" factor
of the algorithm means that a large number (e.g. 1.5GB) can overflow the
integer if we're running on a 32-bit system.  Therefore, we need to
disassociate this function from the size of a physical address.

Signed-off-by: Timur Tabi <timur@freescale.com>
14 years agoBlackfin: TWI/I2C: implement multibus support
Mike Frysinger [Wed, 5 May 2010 07:20:30 +0000 (03:20 -0400)]
Blackfin: TWI/I2C: implement multibus support

In order to do this cleanly, the register accesses have to be converted to
a C struct (base pointer), so do that in the process.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoAdd SPI support to mx51evk board
Stefano Babic [Tue, 16 Mar 2010 16:22:21 +0000 (17:22 +0100)]
Add SPI support to mx51evk board

The patch adds SPI devices to the mx51evk board.
The MC13892 chip (PMIC) is supported.

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agoMX: Added definition file for MC13892
Stefano Babic [Sun, 18 Apr 2010 17:27:44 +0000 (19:27 +0200)]
MX: Added definition file for MC13892

The MC13892 is a Power Controller used with processors
of the family MX.51. The file adds definitions to be used to setup
the internal registers via SPI.

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agoSPI: added support for MX51 to mxc_spi
Stefano Babic [Sun, 4 Apr 2010 20:43:38 +0000 (22:43 +0200)]
SPI: added support for MX51 to mxc_spi

This patch add SPI support for the MX51 processor.

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agoMX31: Add support for PMIC to the QONG module
Stefano Babic [Fri, 16 Apr 2010 15:13:54 +0000 (17:13 +0200)]
MX31: Add support for PMIC to the QONG module

Add support for the PMIC (MC13783) controller
and enables charging of the RTC battery.

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agoMX: RTC13783 uses general function to access PMIC
Stefano Babic [Fri, 16 Apr 2010 15:11:19 +0000 (17:11 +0200)]
MX: RTC13783 uses general function to access PMIC

The RTC is part of the Freescale's PMIC controller.
Use general function to access to PMIC internal registers.

Signed-off-by: Stefano Babic <sbabic@denx.de>
Tested-by: Magnus Lilja <lilja.magnus@gmail.com>
14 years agoMX: Added Freescale Power Management Driver
Stefano Babic [Sun, 4 Apr 2010 21:08:03 +0000 (23:08 +0200)]
MX: Added Freescale Power Management Driver

The patch add supports for the Freescale's Power
Management Controller (known as Atlas) used together with i.MX31/51
processors. It was tested with a MC13783 (MX31) and
MC13892 (MX51).

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agoi.MX31: Activate NAND support for i.MX31 Litekit board.
Magnus Lilja [Fri, 23 Apr 2010 18:30:49 +0000 (20:30 +0200)]
i.MX31: Activate NAND support for i.MX31 Litekit board.

Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com>
14 years agoMX51: Fix MX51 CPU detect message
Fabio Estevam [Fri, 23 Apr 2010 13:32:01 +0000 (06:32 -0700)]
MX51: Fix MX51 CPU detect message

Fix MX51 CPU detect message.

Original string was:
CPU:   Freescale i.MX51 family 3.0V at 800 MHz

which can be misinterpreted as  3.0 Volts instead of the silicon revision.

,change it to:
CPU:   Freescale i.MX51 family rev3.0 at 800 MHz

Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
14 years agoMX51evk: Removed warnings
Stefano Babic [Sun, 18 Apr 2010 18:01:01 +0000 (20:01 +0200)]
MX51evk: Removed warnings

Changes reflect modifications in the fsl_esdhc driver
(the clk_enable field war removed in the configuration structure).

Signed-off-by: Stefano Babic <sbabic@denx.de>
14 years agotx25: fix crash while booting Linux
Anatolij Gustschin [Wed, 21 Apr 2010 11:52:38 +0000 (13:52 +0200)]
tx25: fix crash while booting Linux

Currently booting Linux on TX25 board doesn't work
since there is no correct mach-id and boot parameters
setup for tx25 board. Fix it now.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Cc: John Rigby <jcrigby@gmail.com>
Cc: Stefano Babic <sbabic@denx.de>