David Gibson [Fri, 6 Feb 2009 03:03:24 +0000 (14:03 +1100)]
libfdt: Rework/cleanup fdt_next_tag()
Currently, callers of fdt_next_tag() must usually follow the call with
some sort of call to fdt_offset_ptr() to verify that the blob isn't
truncated in the middle of the tag data they're going to process.
This is a bit silly, since fdt_next_tag() generally has to call
fdt_offset_ptr() on at least some of the data following the tag for
its own operation.
This patch alters fdt_next_tag() to always use fdt_offset_ptr() to
verify the data between its starting offset and the offset it returns
in nextoffset. This simplifies fdt_get_property() which no longer has
to verify itself that the property data is all present.
At the same time, I neaten and clarify the error handling for
fdt_next_tag(). Previously, fdt_next_tag() could return -1 instead of
a tag value in some circumstances - which almost none of the callers
checked for. Also, fdt_next_tag() could return FDT_END either because
it encountered an FDT_END tag, or because it reached the end of the
structure block - no way was provided to tell between these cases.
With this patch, fdt_next_tag() always returns FDT_END with a negative
value in nextoffset for an error. This means the several places which
loop looking for FDT_END will still work correctly - they only need to
check for errors at the end. The errors which fdt_next_tag() can
report are:
- -FDT_ERR_TRUNCATED if it reached the end of the structure
block instead of finding a tag.
- -FDT_BADSTRUCTURE if a bad tag was encountered, or if the
tag data couldn't be verified with fdt_offset_ptr().
This patch also updates the callers of fdt_next_tag(), where
appropriate, to make use of the new error reporting.
Finally, the prototype for the long gone _fdt_next_tag() is removed
from libfdt_internal.h.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
David Gibson [Fri, 6 Feb 2009 03:01:56 +0000 (14:01 +1100)]
libfdt: Rework fdt_next_node()
Currently fdt_next_node() will find the next node in the blob
regardless of whether it is above, below or at the same level in the
tree as the starting node - the depth parameter is updated to indicate
which is the case. When a depth parameter is supplied, this patch
makes it instead terminate immediately when it finds the END_NODE tag
for a node at depth 0. In this case it returns the offset immediately
past the END_NODE tag.
This has a couple of advantages. First, this slightly simplifies
fdt_subnode_offset(), which no longer needs to explicitly check that
fdt_next_node()'s iteration hasn't left the starting node. Second,
this allows fdt_next_node() to be used to implement
_fdt_node_end_offset() considerably simplifying the latter function.
The other users of fdt_next_node() either don't need to iterate out of
the starting node, or don't pass a depth parameter at all. Any
callers that really need to iterate out of the starting node, but keep
tracking depth can do so by biasing the initial depth value.
This is a semantic change, but I think it's very unlikely to break any
existing library users.
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Wolfgang Denk [Wed, 1 Apr 2009 20:47:03 +0000 (22:47 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c
Wolfgang Denk [Wed, 1 Apr 2009 20:43:51 +0000 (22:43 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Kim Phillips [Mon, 30 Mar 2009 19:28:05 +0000 (14:28 -0500)]
rtc: remove broken rtc_read and rtc_write declarations
commit
04e11cf3 "rtc: add support for 4543 RTC (manufactured by e.g.
EPSON)" introduces the following build error on boards configuring e.g,
the ds1374 rtc:
Configuring for MPC837XEMDS board...
ds1374.c:103: error: static declaration of 'rtc_read' follows non-static declaration
/home/r1aaha/git/u-boot/include/rtc.h:64: error: previous declaration of 'rtc_read' was here
ds1374.c:104: error: conflicting types for 'rtc_write'
/home/r1aaha/git/u-boot/include/rtc.h:65: error: previous declaration of 'rtc_write' was here
this reverts the erroneous chunk.
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Acked-by: Detlev Zundel <dzu@denx.de>
CC: Detlev Zundel <dzu@denx.de>
CC: Andreas Pfefferle <ap@denx.de>
Kumar Gala [Tue, 31 Mar 2009 22:58:13 +0000 (17:58 -0500)]
85xx/86xx: Ensure MP boot page is not used
We had a bug on 86xx in which the boot page used to bring up secondary
cores was being overwritten and used for the malloc region in u-boot.
We need to reserve the region of memory that the boot page is going to
be put at so nothing uses it.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Becky Bruce <beckyb@kernel.crashing.org>
Kumar Gala [Wed, 1 Apr 2009 04:11:05 +0000 (23:11 -0500)]
85xx: Introduce determine_mp_bootpg() helper.
Match determine_mp_bootpg() that was added for 86xx. We need this to
address a bug introduced in v2009.03 with 86xx MP booting. We have to
make sure to reserve the region of memory used for the MP bootpg() so
other u-boot code doesn't use it.
Also added a comment about how cpu_reset() is dealing w/an errata on
early 85xx MP HW.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Kumar Gala [Wed, 1 Apr 2009 04:02:38 +0000 (23:02 -0500)]
86xx: Cleanup MP support
* Use CONFIG_MP instead of CONFIG_NUM_CPUS to match 85xx
* Introduce determine_mp_bootpg() helper. We'll need this to address a
bug introduced in v2009.03 with 86xx MP booting. We have to make sure
to reserve the region of memory used for the MP bootpg() so other
u-boot code doesn't use it.
* Added dummy versions of cpu_reset(), cpu_status() & cpu_release() to
allow cmd_mp.c to build and work. In the future we should look at
implementing all these functions. This could be common w/85xx if we
use spin tables on 86xx.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Becky Bruce [Tue, 31 Mar 2009 23:38:37 +0000 (18:38 -0500)]
mpc8641hpcn/sbc8641d: Add missing board_lmb_reserves
We're missing the board_lmb_reserve definitions that allow
cpu_mp_lmb_reserve to be called; this means that Linux
is free to reallocate reserved pages. Linux currently boots
because we're getting lucky - the page we've reserved is
high enough in memory that it isn't allocated by Linux
while we still need it to be in existence.
Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Jens Scharsig [Tue, 31 Mar 2009 06:18:29 +0000 (08:18 +0200)]
soft_i2c.c compiler/linker error
This patch fix the compiler/linker errors
common/cmd_i2c.c:1252: undefined reference to `i2c_get_bus_speed'
common/cmd_i2c.c:1256: undefined reference to `i2c_set_bus_speed'
if board use CONFIG_I2C_CMD_TREE and CONFIG_I2C_MULTI_BUS is not
uesd/undef (wrong define order)
and
removes additional empty lines
Signed-off-by: Jens Scharsig <esw@bus-elektronik.de>
Haiying Wang [Fri, 27 Mar 2009 21:02:45 +0000 (17:02 -0400)]
MPC85xx: Add MPC8569MDS board support
This patch adds MPC8569MDS board support. The UART, QE UEC1 and UEC2, BRD
EEPROM on I2C2 bus, PCI express and DDR3 SPD are supported in this patch.
Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Signed-off-by: Hillel Avni <Hillel.Avni@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Haiying Wang [Fri, 27 Mar 2009 21:02:44 +0000 (17:02 -0400)]
MPC85xx: Add MPC8569 CPU support
There is a workaround for MPC8569 CPU Errata, which needs to set Bit 13 of
LBCR in 4K bootpage. We setup a temp TLB for eLBC controller in bootpage,
then invalidate it after LBCR bit 13 is set.
Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Haiying Wang [Thu, 26 Mar 2009 21:01:49 +0000 (17:01 -0400)]
MPC85xx: Load and enable QE microcode patch in IRAM
For the silicon which doesn't have ROM support in QE, it always needs to load
a pre-built ucode binary to IRAM so that QE can work.
Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
Signed-off-by: Hillel Avni <Hillel.Avni@freescale.com>
Kumar Gala [Thu, 19 Mar 2009 14:16:10 +0000 (09:16 -0500)]
85xx: Add support for additional e500mc features
* Enable backside L2
* e500mc no longer has timebase enable in HID (moved to CCSR register)
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Dave Liu [Sat, 14 Mar 2009 04:48:30 +0000 (12:48 +0800)]
fsl-ddr: add the DDR3 SPD infrastructure
- support mirrored DIMMs, not support register DIMMs
- test passed on P2020DS board with MT9JSF12872AY-1G1D1
- test passed on MPC8569MDS board with MT8JSF12864HY-1G1D1
Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Travis Wheatley <travis.wheatley@freescale.com>
Dave Liu [Sat, 14 Mar 2009 04:48:19 +0000 (12:48 +0800)]
fsl-ddr: Fix two bugs in the ddr infrastructure
1. wr_lat
UM said the total write latency for DDR2 is equal to
WR_LAT + ADD_LAT, the write latency is CL + ADD_LAT - 1.
so, the WR_LAT = CL - 1;
2. rd_to_pre
we missed to add the ADD_LAT for DDR2 case.
Reported-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
Signed-off-by: Dave Liu <daveliu@freescale.com>
Kumar Gala [Thu, 26 Mar 2009 06:34:39 +0000 (01:34 -0500)]
83xx: Use common LSDMR defines from asm/fsl_lbc.h
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Kim Phillips <kim.phillips@freescale.com>
Kumar Gala [Thu, 26 Mar 2009 06:34:38 +0000 (01:34 -0500)]
85xx: Use common LSDMR defines from asm/fsl_lbc.h
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Kumar Gala [Thu, 26 Mar 2009 06:34:37 +0000 (01:34 -0500)]
Add LSDMR (SDRAM Mode Register) definition on localbus
The masks for various bit defines of LSDMR are common and thus we can
define them in one place rather than replicating them in each config.h
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Detlev Zundel [Sun, 29 Mar 2009 22:31:36 +0000 (00:31 +0200)]
inka4x0: Use proper accessor macros for memory mapped registers.
Signed-off-by: Detlev Zundel <dzu@denx.de>
Detlev Zundel [Sun, 29 Mar 2009 22:31:35 +0000 (00:31 +0200)]
inka4x0: Add hardware diagnosis and RTC in configuration.
This patch adds the board specific communication routines needed by
the external 4543 RTC.
Signed-off-by: Detlev Zundel <dzu@denx.de>
Signed-off-by: Andreas Pfefferle <ap@denx.de>
Detlev Zundel [Sun, 29 Mar 2009 22:31:34 +0000 (00:31 +0200)]
inka4x0: Add hardware diagnosis functions for inka4x0
This patch adds advanced diagnosis functions for the inka4x0 board.
Signed-off-by: Andreas Pfefferle <ap@denx.de>
Signed-off-by: Detlev Zundel <dzu@denx.de>
Detlev Zundel [Sun, 29 Mar 2009 22:31:33 +0000 (00:31 +0200)]
rtc: add support for 4543 RTC (manufactured by e.g. EPSON)
Signed-off-by: Detlev Zundel <dzu@denx.de>
Signed-off-by: Andreas Pfefferle <ap@denx.de>
Detlev Zundel [Sun, 29 Mar 2009 22:31:32 +0000 (00:31 +0200)]
drivers/twserial: Add protocol driver for "three wire serial" interface.
This pretty unintelligent interface is used on some RTC chips.
Signed-off-by: Detlev Zundel <dzu@denx.de>
Wolfgang Denk [Sat, 28 Mar 2009 23:58:16 +0000 (00:58 +0100)]
VCMA9: fix compile errors
Fix these:
cmd_vcma9.c:82: warning: implicit declaration of function 'eth_getenv_enetaddr'
cmd_vcma9.c:89: error: 'enetaddr' undeclared (first use in this function)
Signed-off-by: Wolfgang Denk <wd@denx.de>
Wolfgang Denk [Sat, 28 Mar 2009 23:54:21 +0000 (00:54 +0100)]
ARM: fix warning: 'print_eth' defined but not used
This warning got issued for all ARM systems that don't have
CONFIG_CMD_NET enabled.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Ladislav Michl [Mon, 23 Mar 2009 17:16:34 +0000 (18:16 +0100)]
cs8900 compile fix
cs8900.c: In function 'eth_init':
cs8900.c:164: warning: passing argument 2 of 'eth_getenv_enetaddr' from incompatible pointer type
cs8900.c:165: error: invalid operands to binary <<
cs8900.c:166: error: invalid operands to binary <<
cs8900.c:167: error: invalid operands to binary <<
Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Wolfgang Denk [Sat, 28 Mar 2009 19:16:16 +0000 (20:16 +0100)]
Fix implicit declaration of function 'eth_[gs]etenv_enetaddr'
...and some other compile warnings.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Wolfgang Denk [Sat, 28 Mar 2009 15:17:29 +0000 (16:17 +0100)]
mpc8xx/ether.c: fix warning: unused variable 'bd'
Also minor coding style cleanup.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Detlev Zundel [Wed, 25 Mar 2009 16:27:52 +0000 (17:27 +0100)]
command.c: Expose the core of do_help as _do_help to the rest of u-boot.
Other commands implementing subcommands can reuse this code nicely.
Signed-off-by: Detlev Zundel <dzu@denx.de>
Signed-off-by: Andreas Pfefferle <ap@denx.de>
Detlev Zundel [Tue, 24 Mar 2009 17:02:33 +0000 (18:02 +0100)]
mpc5xxx: Add structure definition for several more register blocks.
Signed-off-by: Detlev Zundel <dzu@denx.de>
Detlev Zundel [Fri, 27 Mar 2009 14:03:55 +0000 (15:03 +0100)]
MAINTAINERS: Add entry for 'inka4x0' board.
Signed-off-by: Detlev Zundel <dzu@denx.de>
Detlev Zundel [Fri, 27 Mar 2009 14:03:54 +0000 (15:03 +0100)]
MAINTAINERS: Keep list sorted.
Signed-off-by: Detlev Zundel <dzu@denx.de>
Mike Frysinger [Thu, 26 Mar 2009 15:17:41 +0000 (11:17 -0400)]
karef/metrobox/xpedite1k: fix eth_setenv_enetaddr typos
The function is called "eth_setenv_enetaddr", not "eth_putenv_enetaddr".
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
CC: Ben Warren <biggerbadderben@gmail.com>
Heiko Schocher [Thu, 26 Mar 2009 06:33:59 +0000 (07:33 +0100)]
ppc: cleanup compiler errors/warnings
Current u-boot top of tree builds with warnings/errors for
the following boards:
ads5121 cpci5200 mecp5200 v38b IAD210 MBX MBX860T NX823
RPXClassic debris PN62
following patch solves this.
Signed-off-by: Heiko Schocher <hs@denx.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Wolfgang Denk [Thu, 26 Mar 2009 21:28:52 +0000 (22:28 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Thu, 26 Mar 2009 21:27:45 +0000 (22:27 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-at91
Wolfgang Denk [Thu, 26 Mar 2009 21:21:48 +0000 (22:21 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-arm
Stefan Roese [Thu, 26 Mar 2009 15:14:13 +0000 (16:14 +0100)]
ppc4xx: Sequoia: Fix TLB reassignment in NAND booting code
This patch fixes a bug in the Sequoia TLB init code to reconfigure
the correct TLB (boot space) after running from RAM. This bug was
introduced with patch
4d332dbeb08f5863d1ea69d91a00c5499d3a87ed
[ppc4xx: Make Sequoia boot vxWorks] which changed the order of the
TLB in the Sequoia init.S file.
Signed-off-by: Stefan Roese <sr@denx.de>
Wolfgang Denk [Thu, 26 Mar 2009 09:00:57 +0000 (10:00 +0100)]
ads5121: enable instruction cache
Enabling the instruction cache significantly accelerates U-Boot
operations like CRC checking, image uncompression, etc.
Kudos to Andrea Scian for pointing out.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Jon Smirl [Mon, 23 Mar 2009 02:55:45 +0000 (22:55 -0400)]
mpc5200: suppress printf until console initialized
On boards which have the environment in eeprom, i2c_init() is called
before the console and RAM are initialized.
Suppress printfs until the console is initialized.
Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Acked-by: Heiko Schocher <hs@denx.de>
Wolfgang Denk [Wed, 25 Mar 2009 21:43:25 +0000 (22:43 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-blackfin
Guennadi Liakhovetski [Wed, 25 Mar 2009 10:36:50 +0000 (11:36 +0100)]
ARM: Add the imx31_phycore_eet board to MAKEALL
Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
Nishanth Menon [Wed, 25 Mar 2009 21:13:56 +0000 (22:13 +0100)]
OMAP3:Beagle: Enable mtdparts
http://www.denx.de/wiki/DULG/UBootCmdGroupFlash#UBootCmdFlMtdparts
provides a flexible way to create and maintain u-boot mtd
partitions. This allows commands such as "nand erase fs"
to work and the user no longer needs to decode the absolute
nand offsets. This patch enables this function for beagleboard
Signed-off-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Mike Frysinger [Sun, 22 Feb 2009 21:26:35 +0000 (16:26 -0500)]
Blackfin: bf537-stamp: split post code out into dedicated post.c
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 12 Oct 2008 02:51:56 +0000 (22:51 -0400)]
Blackfin: add support for S25FL128 parts
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 12 Oct 2008 02:51:23 +0000 (22:51 -0400)]
Blackfin: overhaul SPI flash handling to speed things up
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 12 Oct 2008 02:51:05 +0000 (22:51 -0400)]
Blackfin: add support for SST SPI flashes
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 12 Oct 2008 02:50:10 +0000 (22:50 -0400)]
Blackfin: add hack for crappy m25p80
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 22 Jan 2009 01:47:12 +0000 (20:47 -0500)]
Blackfin: bf537-stamp: increase monitor size
The new jffs2 code pushed the code size just over the limit, so increase
the limit a bit more.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 8 Dec 2008 21:16:11 +0000 (16:16 -0500)]
Blackfin: bf537-stamp: bump default SCLK up to 125MHz
Since all of the bf537-stamp and bf537-ezkit boards out there can handle it,
increase the speed of SCLK to 125MHz rather than 100MHz.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 12 Oct 2008 02:44:14 +0000 (22:44 -0400)]
Blackfin: bf537-stamp: rewrite MAC-in-flash handling
Use the common net eth functions to setup the env/global data with the MAC
address, and properly handle the case where CONFIG_SYS_NO_FLASH is defined.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 9 Dec 2008 18:47:39 +0000 (13:47 -0500)]
Blackfin: add clkin_hz= to default kernel command line for ADI boards
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 13 Oct 2008 03:49:13 +0000 (23:49 -0400)]
Blackfin: bf533-stamp: bump up default clocks
Since the hardware can handle it, bump the default clocks from 80mhz SCLK
and 398mhz CCLK to 100mhz SCLK and 498mhz CCLK.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 12 Oct 2008 02:40:22 +0000 (22:40 -0400)]
Blackfin: bf533-stamp: rewrite startup LED notifications
Again, don't clobber pins that we aren't actually using, and use the common
LED framework rather than our own hob-job-but-not-really-working.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 1 Jun 2008 13:09:48 +0000 (09:09 -0400)]
Blackfin: unify common ADI board settings
Rather than duplicate the same ADI settings in every ADI board, create a
common ADI config header and have all ADI boards start using that. This
will also make merging the ~10 boards I have to forward port a lot easier.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Kyungmin Park [Tue, 3 Mar 2009 00:05:53 +0000 (09:05 +0900)]
Reduce OneNAND IPL common code
OneNAND IPL has common codes for RAM init, load data, and jump to 2nd
bootloader, but it's common code used about 300~400 bytes. So board
specific codes, such as lowlevel_init, can't has enough code. It make
a difficult to implement OneNAND IPL.
his patch make this common code as small as possible. and give
lowlevel_init can have more codes.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Wolfgang Grandegger [Wed, 11 Feb 2009 17:38:24 +0000 (18:38 +0100)]
Add multi-chip NAND support for the TQM8548 modules
This patches configures the NAND UPM-FSL driver with multi-chip
support for the Micron MT29F8G08FAB NAND flash memory on the
TQM8548 modules.
Signed-off-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Wolfgang Grandegger [Wed, 11 Feb 2009 17:38:23 +0000 (18:38 +0100)]
Add wait flags to support board/chip specific delays
The NAND flash on the TQM8548_BE modules requires a short delay after
running the UPM pattern like the MPC8360ERDK board does. The TQM8548_BE
requires a further short delay after writing out a buffer. Normally the
R/B pin should be checked, but it's not connected on the TQM8548_BE.
The corresponding Linux FSL UPM driver uses similar delay points at the
same locations. To manage these extra delays in a more general way, I
introduced the "wait_flags" field allowing the board-specific driver to
specify various types of extra delay.
Signed-off-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Wolfgang Grandegger [Wed, 11 Feb 2009 17:38:22 +0000 (18:38 +0100)]
Add support for TQM-specific chip select logic to FSL-UPM
For the NAND chips on the TQM8548 modules, a special chip-select logic is
used. It uses dedicated address lines to be set via UPM machine address
register (mar). This patch adds such support to the FSL-UPM driver.
Signed-off-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Wolfgang Grandegger [Wed, 11 Feb 2009 17:38:21 +0000 (18:38 +0100)]
Add multi chip support to the FSL-UPM driver
This patch adds support for multi-chip NAND devices to the FSL-UPM
driver. The "dev_ready" callback of the "struct fsl_upm_nand" is now
called with the argument "chip_nr" to allow testing the proper chip
select line. The NAND support of the MPC8360ERDK is updated as well.
No other boards are currently using the FSL UPM driver.
Signed-off-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Wolfgang Grandegger [Wed, 11 Feb 2009 17:38:20 +0000 (18:38 +0100)]
Enable multi chip support in the NAND layer
This patch adds support for NAND_MAX_CHIPS to the MTD NAND layer.
Multi-chips devices are displayed as shown:
Device 0: 2x NAND 512MiB 3,3V 8-bit, sector size 128 KiB
Signed-off-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
Mike Frysinger [Sun, 12 Oct 2008 01:58:33 +0000 (21:58 -0400)]
Blackfin: put memory into self-refresh before/after programming clocks
When initializing the core clocks, stick external memory into self-refresh.
This gains us a few cool things:
- support suspend-to-RAM with Linux
- reprogram clocks automatically when doing "go" on u-boot.bin in RAM
- make sure settings are stable before flashing new version
- finally fully unify initialize startup code path between LDR/non-LDR
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 12 Oct 2008 01:56:08 +0000 (21:56 -0400)]
Blackfin: do not program voltage regulator on parts that do not have one
Some newer Blackfins (like the BF51x) do not have an on-chip voltage
regulator, so do not attempt to program the memory as if it does.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 1 Jun 2008 05:28:24 +0000 (01:28 -0400)]
Blackfin: setup a sane default EBIU_SDBCTL for SDRAM controllers
If the board config does not specify an explicit EBIU_SDBCTL value, set it
up with sane values based on other configuration options.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 6 Dec 2008 23:06:58 +0000 (18:06 -0500)]
Blackfin: handle reboot anomaly 432
Workaround anomaly 432:
The bfrom_SysControl() firmware function does not clear the SIC_IWR1
register before executing the PLL programming sequence. Therefore, any
interrupt enabled in the SIC_IWR1 register prior to the call to
bfrom_SysControl() can prematurely terminate the idle sequence required
for the PLL to relock properly. SIC_IWR0 is properly handled.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 18 Oct 2008 08:04:49 +0000 (04:04 -0400)]
Blackfin: kill off LDR jump block
The Boot ROM uses EVT1 as the entry point so set that rather than having
to use a tiny jump block in the default EVT1 location.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 6 Jan 2009 15:00:48 +0000 (10:00 -0500)]
Blackfin: simplify symbol_lookup() a bit
No need to skip a byte as the symbol table handles this.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 7 Feb 2009 10:43:21 +0000 (05:43 -0500)]
Blackfin: fix SIC_RVECT definition: it is 16bits, not 32bits
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 7 Feb 2009 10:41:17 +0000 (05:41 -0500)]
Blackfin: drop SPORT_TX read helper macros
The SPORT_TX registers cannot be read (the hardware will trigger an error),
so drop the read helper macros.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sat, 7 Feb 2009 10:25:35 +0000 (05:25 -0500)]
Blackfin: unify duplicate CPU port definitions
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Fri, 6 Feb 2009 05:59:50 +0000 (00:59 -0500)]
Blackfin: drop now-unused CONFIG_SYS_BFIN_CMD_XXX
With the new CONFIG_XXX system and CONFIG_CMD_XXX handling, these defines
are no longer used/needed.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Mon, 6 Oct 2008 08:01:26 +0000 (04:01 -0400)]
Blackfin: print out Flash: before checking it
If there is some problem in the flash init/checking code, it's nicer to see
the message "Flash:" before crashing. This way the source of the problem
is a bit more straightforward.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 7 Aug 2008 19:33:09 +0000 (15:33 -0400)]
Blackfin: safely flush data caches when in writeback mode
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 7 Aug 2008 17:21:48 +0000 (13:21 -0400)]
Blackfin: update lockbox api according to latest documentation
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 12 Oct 2008 01:49:06 +0000 (21:49 -0400)]
Blackfin: mark bfin_reset static
The function is only used locally, so mark it static.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Sonic Zhang [Fri, 20 Mar 2009 23:28:20 +0000 (19:28 -0400)]
Blackfin: spi: there is no PORTJ_FER MMR on BF537
Since the PORTJ on the BF537 is peripheral-only (no GPIO functionality),
then there is no PORTJ_FER register for us to worry about.
Signed-off-by: Sonic Zhang <Sonic.Zhang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 17 Mar 2009 17:58:23 +0000 (13:58 -0400)]
Blackfin: fix jtag console tstc
The jtag tstc operation was checking the hardware to see if data is
available from it (which is fine for the jtag getc operation), but the
higher layers need to know whether any data is available. Since we have
to read up to 4 bytes at a time from the hardware, the higher layers need
to know they can consume the cached bytes as well.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 22 Feb 2009 21:23:41 +0000 (16:23 -0500)]
Blackfin: bf537-stamp: move CONFIG_POST handling to COBJS-$(...)
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Sun, 22 Feb 2009 21:02:27 +0000 (16:02 -0500)]
Blackfin: unify net-related init code
Unify all of the net-related init code in the common Blackfin board init
code to clean up the ifdef mess a bit.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Wed, 18 Feb 2009 17:51:48 +0000 (12:51 -0500)]
Blackfin: fix SWRST/SYSCR register sizes
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Wed, 18 Feb 2009 17:51:31 +0000 (12:51 -0500)]
Blackfin: update anomaly lists
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Wolfgang Denk [Mon, 23 Mar 2009 09:41:46 +0000 (10:41 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-avr32
Wolfgang Denk [Mon, 23 Mar 2009 09:29:19 +0000 (10:29 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-cfi-flash
Haavard Skinnemoen [Mon, 23 Mar 2009 09:22:47 +0000 (10:22 +0100)]
Merge branch 'evk1100-prep'
Haavard Skinnemoen [Mon, 23 Mar 2009 09:22:41 +0000 (10:22 +0100)]
Merge branch 'mimc200'
Jean-Christophe PLAGNIOL-VILLARD [Thu, 19 Mar 2009 17:31:38 +0000 (18:31 +0100)]
avr32: fix cacheflush.h location introducted by
d8f2aa3298610b
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Eric Schumann [Sat, 21 Mar 2009 13:59:34 +0000 (09:59 -0400)]
Make flash protection work, when the environment is in EEPROM
On the pcm030 the environment is located in the onboard EEPROM. But we want
to handle flash sector protection in a safe manner. So we must read the
unlock environment variable from EEPROM instead from flash.
This patch is required as long the evironment is saved into the EEPROM.
Stefan: Additional change as suggested by Wolfgang, use bigger char array
(instead of 4).
Signed-off-by: Eric Schumann <E.Schumann@phytec.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Wolfgang Denk <wd@denx.de>
Signed-off-by: Stefan Roese <sr@denx.de>
Jon Smirl [Sat, 21 Mar 2009 15:17:56 +0000 (11:17 -0400)]
Add define for mpc5200 CDM_CLK_ENA
Signed-off-by: Jon Smirl <jonsmirl@gmail.com>
Nicolas Ferre [Sun, 22 Mar 2009 13:48:16 +0000 (14:48 +0100)]
at91: Support for the at91sam9g20 : Atmel 400Mhz ARM 926ej-s SOC.
AT91sam9g20 is an evolution of the at91sam9260 with a faster clock speed.
The AT91SAM9G20-EK board is an updated revision of the AT91SAM9260-EK board.
It is essentially the same, with a few minor differences.
Here is the chip page on Atmel website:
http://www.atmel.com/dyn/products/product_card.asp?part_id=4337
Signed-off-by: Justin Waters <justin.waters@timesys.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sun, 22 Mar 2009 13:28:14 +0000 (14:28 +0100)]
cmc_pu2: fix implicit declaration of function 'eth_setenv_enetaddr'
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sun, 22 Mar 2009 13:28:13 +0000 (14:28 +0100)]
cmc_pu2: fix misc_init_r prototype
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sun, 11 Jan 2009 02:32:01 +0000 (03:32 +0100)]
at91sam9xeek: fix soc name
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sun, 22 Mar 2009 09:22:34 +0000 (10:22 +0100)]
at91sam9/at91cap: move nand drivers to drivers/mtd/nand
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sat, 21 Mar 2009 20:08:01 +0000 (21:08 +0100)]
atmel/at91/boards: compile dataflash partition only when dataflash is
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sat, 21 Mar 2009 20:08:00 +0000 (21:08 +0100)]
at91sam9/at91cap: move common macb initialisation to cpu
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sat, 21 Mar 2009 20:08:00 +0000 (21:08 +0100)]
at91sam9/at91cap: move common usb host initialisation to cpu
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sat, 21 Mar 2009 20:08:00 +0000 (21:08 +0100)]
at91sam9/at91cap: move common led management to cpu
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sat, 21 Mar 2009 20:07:59 +0000 (21:07 +0100)]
at91sam9/at91cap: move common spi initialisation to cpu
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Jean-Christophe PLAGNIOL-VILLARD [Sat, 21 Mar 2009 20:07:59 +0000 (21:07 +0100)]
at91sam9/at91cap: move common serial initialisation to cpu
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>