John Linn [Fri, 20 Aug 2010 15:14:44 +0000 (09:14 -0600)]
Xilinx: ARM: Updated low level init to remap DDR and high ram
The code was not doing the remaps if the DDR controller was already
initialized. Now it does the remaps regardless as it makes it so that
users don't have to do anything in jtag_tcl to run u-boot and tftp
images into memory.
Brian Hill [Fri, 16 Jul 2010 19:46:58 +0000 (13:46 -0600)]
Xilinx: ARM: Add DDR initialization to u-boot
cpu_init_crit and lowlevel_init are now called.
DDR controller initialization performed in lowlevel_init.
This modification requires that u-boot be started in flash when
CONFIG_SKIP_LOWLEVEL_INIT is not defined, which is now the default
behavior.
John Linn [Fri, 9 Jul 2010 16:39:46 +0000 (10:39 -0600)]
Xilinx: ARM: Updates for NOR flash
This commit changed the configuration to use the CFI driver so that
there is no code needed to support NOR flash, except a bit of initialization
for the SMC controller.
There are other commits that are needed to make flash work together with this
one as the CFI driver has a bug for the Numonyx flash in 8 bit mode. See the
next commit for this fix.
John Linn [Fri, 9 Jul 2010 16:34:24 +0000 (10:34 -0600)]
Xilinx: ARM: moved to PEEP3 design
This commit only updates xparameters*.h from the standalone BSP.
Testing was not done with only this commit as this was done for flash
testing such that the following commits for flash were also used
together with this one.
Peter Tyser [Tue, 15 Dec 2009 18:10:47 +0000 (12:10 -0600)]
mpc85xx, mpc86xx: Fix gd->cpu pointer after relocation
The gd->cpu pointer is set to an address located in flash when the
probecpu() function is called while U-Boot is executing from flash.
This pointer needs to be updated to point to an address in RAM after
relocation has occurred otherwise Linux may not be able to boot due to
"fdt board" crashing if flash has been erased or changed.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com> Reported-by: Ed Swarthout <Ed.Swarthout@freescale.com> Tested-by: Kumar Gala <galak@kernel.crashing.org>
Tested on MPC8527DS.
Tested by: Ed Swarthout <Ed.Swarthout@freescale.com>
Peter Tyser [Sun, 13 Dec 2009 23:58:34 +0000 (17:58 -0600)]
MVBLUE: Remove CONFIG_CMD_IRQ
Neither the MVBLUE nor its underlying architecture implement the
do_irqinfo() function which is required when CONFIG_CMD_IRQ is defined.
This change fixes the following MVBLUE compiler error:
-> ./MAKEALL MVBLUE
Configuring for MVBLUE board...
common/libcommon.a(cmd_irq.o):(.u_boot_cmd+0x24): undefined reference to `do_irqinfo'
make: *** [u-boot] Error 1
Signed-off-by: Peter Tyser <ptyser@xes-inc.com> Acked-by: Andre Schwarz <andre.schwarz@matrix-vision.de>
Detlev Zundel [Mon, 14 Dec 2009 16:54:40 +0000 (17:54 +0100)]
imx27lite: Reenable MTD support on NOR flash.
The support for this was silently dropped by a configuration
split during the merge of the imx27lite board support in commit 864aa034f3a0e10ce710e8bbda171df3cab59414 (cmd_mtdparts: Move to common
handling of FLASH devices via MTD layer).
Peter Korsgaard [Tue, 8 Dec 2009 21:20:34 +0000 (22:20 +0100)]
mpc83xx: boot time regression, move LCRR setup back to cpu_init_f
Commit c7190f02 (retain POR values of non-configured ACR, SPCR, SCCR,
and LCRR bitfields) moved the LCRR assignment to after relocation
to RAM because of the potential problem with changing the local bus
clock while executing from flash.
This change unfortunately adversely affects the boot time, as running
all code up to cpu_init_r can cause significant slowdown.
E.G. on a 8347 board a bootup time increase of ~600ms has been observed:
So far no boards have needed the late LCRR setup, so simply revert it
for now - If it is needed at a later time, those boards can either do
their own final LCRR setup in board code (E.G. in board_early_init_r),
or we can introduce a CONFIG_SYS_LCRR_LATE config option to only do
the setup in cpu_init_r.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
In file included from /tmp/u-boot-microblaze/include/common.h:38,
from cmd_mtdparts.c:87:
/tmp/u-boot-microblaze/include/linux/bitops.h:123:1: warning: "ffs" redefined
In file included from /tmp/u-boot-microblaze/include/linux/bitops.h:110,
from /tmp/u-boot-microblaze/include/common.h:38,
from cmd_mtdparts.c:87:
/tmp/u-boot-microblaze/include/asm/bitops.h:269:1:
warning: this is the location of the previous definition
Graeme Smecher [Mon, 7 Dec 2009 16:09:57 +0000 (08:09 -0800)]
microblaze: Stop stack clobbering in microblaze-generic.
A typo caused the stack and malloc regions to overlap, which prevented
mem_malloc_init() from returning. This commit makes the memory layout match
the example described in include/configs/microblaze-generic.h
Signed-off-by: Graeme Smecher <graeme.smecher@mail.mcgill.ca> Signed-off-by: Michal Simek <monstr@monstr.eu>
Peter Tyser [Mon, 7 Dec 2009 05:58:28 +0000 (23:58 -0600)]
MAKEALL: Fix return value
Previously MAKEALL would always return a value of 0, even if 1 or more
boards did not compile. This change causes MAKEALL to return 0 if all
boards were able to build, otherwise 1.
This change also requires changing the script interpreter from sh to
bash to support bash's PIPESTATUS variable.
Heiko Schocher [Sat, 5 Dec 2009 10:59:51 +0000 (11:59 +0100)]
i2c: fix dangling comment in do_i2c_mw()
commit bd3784df94bfeca43fbf34094df9cb1bd3ecca3b deleted some unused
code in do_i2c_mw(), but missed to also remove the respective
commment. This patch fixes this.
Daniel Hobi [Tue, 1 Dec 2009 13:05:55 +0000 (14:05 +0100)]
Fix computation in nand_util.c:get_len_incl_bad
Depending on offset, flash size and the number of bad blocks,
get_len_incl_bad may return a too small value which may lead to:
1) If there are no bad blocks, nand_{read,write}_skip_bad chooses the
bad block aware read/write code. This may hurt performance, but does
not have any adverse effects.
2) If there are bad blocks, the nand_{read,write}_skip_bad may choose
the bad block unaware read/write code (if len_incl_bad == *length)
which leads to corrupted data.
Signed-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch>
Evan Samanas [Tue, 10 Nov 2009 02:08:36 +0000 (20:08 -0600)]
nfs: NfsTimeout() updates
- NfsTimeout() does not correctly update the NFS timeout value which
results in NfsTimeout() only being called once in certain situations.
This can result in the 'nfs' command hanging indefinetly. For
example, the command:
nfs 192.168.0.1:/home/user/file
will not exit until ctrl-c is pressed if 192.168.0.1 does not have an
NFS server running.
This issue is resolved by reinitializting the NFS timeout value inside
NfsTimeout() when a timeout occurs.
- Make the 'nfs' command print the 'T' character when a timeout occurs.
Previously there was no indication that timeouts were occuring.
- Mimic the 'tftpboot' command and when a download fails print "Retry
count exceeded; starting again", and restart the download taking the
'netretry' environment variable into account.
Signed-off-by: Evan Samanas <esamanas@xes-inc.com> Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Tested on TQM8xxL.
Tested by: Wolfgang Denk <wd@denx.de>
Tested on MPC8527DS.
Tested by: Ed Swarthout <Ed.Swarthout@freescale.com>
Peter Tyser [Thu, 19 Nov 2009 01:08:59 +0000 (19:08 -0600)]
bootm: Fix help message's sub-command ordering
The help message for the 'bootm' command listed the 'cmdline' and 'bdt'
sub-commands in the wrong order which resulted in the error below when
following the 'help' command's instructions:
Mike Rapoport [Wed, 11 Nov 2009 08:03:03 +0000 (10:03 +0200)]
smc911x: update SMC911X related configuration description
Since commit 736fead8fdbf8a8407048bebc373cd551d01ec98 "Convert SMC911X
Ethernet driver to CONFIG_NET_MULTI API" SMC911X configration options
are called CONFIG_SMC911X rather than CONFIG_DRIVER_SMC911X. Update
README to reflect that change.
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Wolfgang Denk [Sat, 5 Dec 2009 23:53:18 +0000 (00:53 +0100)]
zlib.c: avoid build conflicts for cradle board
Commit dce3d79710 updated the zlib code to v0.95; this caused
conflicts when building for the "cradle" board, because the (pretty
generic) preprocessor variable "OFF" was used in multiple files.
Make sure to avoid further conflicts by #undef'ing it in zlib.c
before redefining it.
Signed-off-by: Wolfgang Denk <wd@denx.de>
cc: Giuseppe Condorelli <giuseppe.condorelli@st.com>
cc: Angelo Castello <angelo.castello@st.com>
cc: Alessandro Rubini <rubini-list@gnudd.com>
Mike Frysinger [Fri, 4 Dec 2009 10:35:15 +0000 (05:35 -0500)]
lzma: ignore unset filesizes
The Linux kernel build system changed how it compresses things with LZMA
such that the header no longer contains the filesize (it is instead set to
all F's). So if we get a LZMA image that has -1 for the 64bit field,
let's just assume that the decompressed size is unknown and continue on.
Peter Tyser [Tue, 24 Nov 2009 22:42:09 +0000 (16:42 -0600)]
tools/fit_image.c: Remove unused fit_set_header()
The FIT fit_set_header() function was copied from the standard uImage's
image_set_header() function during mkimage reorganization. However, the
fit_set_header() function is not used since FIT images use a standard
device tree blob header.
Peter Tyser [Tue, 24 Nov 2009 22:42:08 +0000 (16:42 -0600)]
tools/mkimage: Assume FDT image type for FIT images
When building a Flattened Image Tree (FIT) the image type needs to be
"flat_dt". Commit 89a4d6b12fd6394898b8a454cbabeaf1cd59bae5 introduced a
regression which caused the user to need to specify the "-T flat_dt"
parameter on the command line when building a FIT image. The "-T
flat_dt" parameter should not be needed and is at odds with the current
FIT image documentation.
Michael Brandt [Sun, 22 Nov 2009 13:13:27 +0000 (14:13 +0100)]
EXT2FS: fix inode size for ext2fs rev#0
extfs.c assumes that there is always a valid inode_size field in the
superblock. But this is not true for ext2fs rev 0. Such ext2fs images
are for instance generated by genext2fs. Symptoms on ARM machines are
messages like: "raise: Signal # 8 caught"; on PowerPC "ext2ls" will
print nothing.
This fix checks for rev 0 and uses then 128 bytes as inode size.
Signed-off-by: Michael Brandt <Michael.Brandt@emsyso.de>
Tested on: TQM5200S Tested-by: Wolfgang Denk <wd@denx.de> Signed-off-by: Wolfgang Denk <wd@denx.de>
Robert P. J. Day [Thu, 19 Nov 2009 16:00:28 +0000 (11:00 -0500)]
Remove superfluous preprocessor tests from some cmd_*.c files.
A small number of common/cmd_*.c files contain preprocessor tests that
are apparently superfluous since those same tests are used in the
Makefile to control the compilation of those files. Those tests are
clearly redundant as long as they surround the entirety of the source
in those files.
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Sanjeev Premi [Mon, 9 Nov 2009 17:13:00 +0000 (22:43 +0530)]
Fix build failure in examples/standalone
Some versions of 'make' do not handle trailing white-spaces
properly. Trailing spaces in ELF causes a 'fake' source to
be added to the variable COBJS; leading to build failure
(listed below). The problem was found with GNU Make 3.80.
Using text-function 'strip' as a workaround for the problem.
Nishanth Menon [Mon, 2 Nov 2009 15:40:18 +0000 (09:40 -0600)]
mkconfig: deny messed up ARCH definition
Refuse to setup a platform if the command line ARCH= is not the same
as the one required for the board. This prevents any user with
prehistoric aliases from messing up their builds.
Reported in thread:
http://old.nabble.com/-U-Boot--Build-breaks-on-some-OMAP3-configs-to26132721.html
Inputs from: Mike Frysinger and Wolfgang Denk:
http://lists.denx.de/pipermail/u-boot/2009-November/063642.html
Cc: Wolfgang Denk <wd@denx.de> Cc: Mike Frysinger <vapier@gentoo.org> Cc: Anand Gadiyar <gadiyar@ti.com> Cc: Dirk Behme <dirk.behme@googlemail.com> Signed-off-by: Nishanth Menon <nm@ti.com>
OMAP3: pandora: fix booting without serial attached
When the board is booted without serial cable attached (which
is how most of them will be used) UART RX is left floating and
sometimes picks noise, which interrupts countdown and enters
U-Boot prompt instead of booting the kernel.
Fix this by setting up internal pullup on UART RX pin. This
does not prevent serial from working as the internal pullup
is weak.