project/bcm63xx/u-boot.git
14 years agoMove ICS CLK chip frequency calculation code into a common board library
Kumar Gala [Fri, 21 May 2010 08:02:16 +0000 (03:02 -0500)]
Move ICS CLK chip frequency calculation code into a common board library

We have several boards that use the same ICS307 CLK chip to drive the
System clock and DDR clock.  Move the code into a common location so we
share it.

Convert the P2020DS board as the first to use the new common ICS307
code.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Timur Tabi <timur@freescale.com>
14 years agoppc/85xx: Add a structure defn for PIXIS registers
Kumar Gala [Sat, 22 May 2010 22:25:47 +0000 (17:25 -0500)]
ppc/85xx: Add a structure defn for PIXIS registers

The various boards that have PIXIS FPGAs have slightly different
register definitions, however there is some common functionality (like
reset, ICS307 clk control, etc) that can be shared.

The struct definition exists for MPC8536DS, MPC8544DS, MPC8572DS,
MPC8610HPCD, and MPC8641HPCN boards.

Also fixed ngpixis to be __packed__ instead of aligned.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agopowerpc/8xxx: Add is_core_disabled to remove disabled cores from dtb
Kumar Gala [Thu, 10 Jun 2010 03:33:53 +0000 (22:33 -0500)]
powerpc/8xxx: Add is_core_disabled to remove disabled cores from dtb

If we explicitly disabled a core remove it from the dtb we pass on to
the kernel.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agompc8xxx: Remove cpu-handles for cpus we delete
Kumar Gala [Wed, 9 Jun 2010 18:14:28 +0000 (13:14 -0500)]
mpc8xxx: Remove cpu-handles for cpus we delete

We may have cpu-handles pointing to the cpu nodes we delete.  If so we
should delete the handles as well.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agopowerpc/8xxx: Add base support for the SEC4
Kim Phillips [Tue, 1 Jun 2010 17:24:34 +0000 (12:24 -0500)]
powerpc/8xxx: Add base support for the SEC4

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agopowerpc/8xxx: Distinguish between incompatible SEC h/w types
Kim Phillips [Tue, 1 Jun 2010 17:24:27 +0000 (12:24 -0500)]
powerpc/8xxx: Distinguish between incompatible SEC h/w types

CONFIG_SYS_FSL_SEC_COMPAT is set to 2 for the SEC 2.x and SEC 3.x.
Parts with newer SEC h/w versions will increment the number to
accomodate incompatible code changes.

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agofdt: move fsl specific code from common fdt area to mpc8xxx/fdt.c
Kim Phillips [Fri, 28 May 2010 08:00:14 +0000 (08:00 +0000)]
fdt: move fsl specific code from common fdt area to mpc8xxx/fdt.c

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
14 years agoMerge branch 'next' of git://git.denx.de/u-boot-nios
Wolfgang Denk [Wed, 14 Jul 2010 20:07:41 +0000 (22:07 +0200)]
Merge branch 'next' of git://git.denx.de/u-boot-nios

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc83xx
Wolfgang Denk [Wed, 14 Jul 2010 20:05:31 +0000 (22:05 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-net
Wolfgang Denk [Wed, 14 Jul 2010 20:04:30 +0000 (22:04 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-net

14 years agoMerge branch 'master' of git://git.denx.de/u-boot-blackfin
Wolfgang Denk [Wed, 14 Jul 2010 19:54:45 +0000 (21:54 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-blackfin

14 years agoBlackfin: bf561-acvilon: drop unused env redund define
Mike Frysinger [Mon, 5 Jul 2010 09:15:59 +0000 (05:15 -0400)]
Blackfin: bf561-acvilon: drop unused env redund define

The SPI env code didn't support redundant environments until recently, but
this code was written before that.  Since it has never been tested (and
currently causes a build failure), simply punt it.  If the functionality
is actually desired, it can be re-added once it has been tested.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: drop old u-boot.lds clean target
Mike Frysinger [Mon, 5 Jul 2010 09:00:18 +0000 (05:00 -0400)]
Blackfin: drop old u-boot.lds clean target

The u-boot.lds CPP unification missed the Blackfin-specific clean target.
It is no longer needed, so punt it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf527-ad7160-eval: new board support
Michael Hennerich [Mon, 31 May 2010 14:11:53 +0000 (14:11 +0000)]
Blackfin: bf527-ad7160-eval: new board support

Support the new AD7160 eval board.

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: enable IP defrag for ADI boards
Mike Frysinger [Sun, 13 Jun 2010 16:47:52 +0000 (12:47 -0400)]
Blackfin: enable IP defrag for ADI boards

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bfin_mac: remove space from name
Mike Frysinger [Thu, 10 Jun 2010 01:50:48 +0000 (21:50 -0400)]
Blackfin: bfin_mac: remove space from name

Some commands (like 'mii') use this name to select devices, but they break
when those names contain spaces.  So drop the space from the Blackfin EMAC
driver.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: unify default I2C settings for ADI boards
Mike Frysinger [Tue, 8 Jun 2010 20:18:00 +0000 (16:18 -0400)]
Blackfin: unify default I2C settings for ADI boards

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Heiko Schocher <hs@denx.de>
14 years agoBlackfin: bf561: use DMA for Core B L1 regions
Mike Frysinger [Fri, 4 Jun 2010 20:15:38 +0000 (16:15 -0400)]
Blackfin: bf561: use DMA for Core B L1 regions

The L1 regions of Core B are not directly accessible from Core A, so we
need to use DMA to get at them.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: cm-bf548: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 23:30:15 +0000 (19:30 -0400)]
Blackfin: cm-bf548: convert to portmux framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf527-ezkit: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 23:30:01 +0000 (19:30 -0400)]
Blackfin: bf527-ezkit: convert to portmux framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf548-ezkit: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 23:29:47 +0000 (19:29 -0400)]
Blackfin: bf548-ezkit: convert to portmux framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf518f-ezbrd: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 23:29:23 +0000 (19:29 -0400)]
Blackfin: bf518f-ezbrd: convert to portmux framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf518f-ezbrd: handle different PHYs dynamically
Mike Frysinger [Fri, 29 May 2009 22:00:16 +0000 (18:00 -0400)]
Blackfin: bf518f-ezbrd: handle different PHYs dynamically

The original BF518F-EZBRD's have a Micrel KSZ8893 DSA on them, but newer
ones only have a National PHY (which lack a RX Error interrupt line).  So
in the board eth init code, dynamically detect what is hooked up to the MAC
and handle each accordingly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf533-stamp: scrub unused code
Mike Frysinger [Wed, 2 Jun 2010 10:20:39 +0000 (06:20 -0400)]
Blackfin: bf533-stamp: scrub unused code

Much of the local bf533-stamp.h header is unused, and the few bits that
are are only needed in one file.  So move the few used bits out and punt
all the rest.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: blackstamp: convert eth/flash swap logic to gpio framework
Mike Frysinger [Wed, 2 Jun 2010 10:19:19 +0000 (06:19 -0400)]
Blackfin: blackstamp: convert eth/flash swap logic to gpio framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf533-stamp: convert eth/flash swap logic to gpio framework
Mike Frysinger [Wed, 2 Jun 2010 10:18:57 +0000 (06:18 -0400)]
Blackfin: bf533-stamp: convert eth/flash swap logic to gpio framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bfin_spi: support gpios as chip selects
Mike Frysinger [Wed, 2 Jun 2010 10:13:50 +0000 (06:13 -0400)]
Blackfin: bfin_spi: support gpios as chip selects

Rather than only support the pins dedicated as chip selects, utilize the
gpio framework to support any gpio pin.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bfin_spi: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 10:12:47 +0000 (06:12 -0400)]
Blackfin: bfin_spi: convert to portmux framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: serial: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 10:00:27 +0000 (06:00 -0400)]
Blackfin: serial: convert to portmux framework

Use the new portmux framework to handle the details when possible.
Unfortunately, we cannot yet use this in the standalone initialization
logic, so we need to keep around the old portmux writes for now.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: pata_bfin: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 10:00:04 +0000 (06:00 -0400)]
Blackfin: pata_bfin: convert to portmux framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bfin_sdh: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 09:59:50 +0000 (05:59 -0400)]
Blackfin: bfin_sdh: convert to portmux framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bfin_nand: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 09:59:06 +0000 (05:59 -0400)]
Blackfin: bfin_nand: convert to portmux framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Scott Wood <scottwood@freescale.com>
14 years agoBlackfin: bfin_mac: convert to portmux framework
Mike Frysinger [Wed, 2 Jun 2010 09:56:22 +0000 (05:56 -0400)]
Blackfin: bfin_mac: convert to portmux framework

Rather than bang MMRs directly, use the new portmux framework to handle
the details.  While we're doing this, let boards declare the exact list
of pins they need in case there is one or two they don't actually have
hooked up.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoedminiv2: add ethernet support
Albert Aribaud [Mon, 12 Jul 2010 20:24:30 +0000 (22:24 +0200)]
edminiv2: add ethernet support

Add edminiv2 board support for mv_egiga.
Add edminiv2 config to enable mv_egiga.

Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agomvgbe: add support for orion5x GbE controller
Albert Aribaud [Mon, 12 Jul 2010 20:24:29 +0000 (22:24 +0200)]
mvgbe: add support for orion5x GbE controller

Add definitions and initialization in orion5x for mvgbe.
Add orion5x in mvgbe SoC includes.

Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agomvgbe: support SoCs other than kirkwood
Albert Aribaud [Mon, 12 Jul 2010 20:24:28 +0000 (22:24 +0200)]
mvgbe: support SoCs other than kirkwood

Rename all references to kirkwood in mvgbe symbols
throughout the whole codebase.

Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agonet: rename: kirkwood_egiga as mvgbe
Albert Aribaud [Mon, 12 Jul 2010 20:24:27 +0000 (22:24 +0200)]
net: rename: kirkwood_egiga as mvgbe

Rename kirkwood_egiga.* to mvgbe.* and adjust makefile
and #include accordingly.

Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agokirkwood_egiga: CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION
Albert Aribaud [Mon, 12 Jul 2010 09:03:33 +0000 (11:03 +0200)]
kirkwood_egiga: CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION

This configuration option allows SoCs without random
generation capability to fill in local MACs with a  fixed
rather than random value

Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoNAND: formatting cleanups from env.oob support
Scott Wood [Mon, 12 Jul 2010 23:17:40 +0000 (18:17 -0500)]
NAND: formatting cleanups from env.oob support

Change if (ok) {
bunch of stuff
} else {
error
}

to

if (error) {
get out
}

proceed with bunch of stuff

Plus a few whitespace cleanups.

Signed-off-by: Scott Wood <scottwood@freescale.com>
14 years agoNAND: environment offset in OOB (CONFIG_ENV_OFFSET_OOB)
Ben Gardiner [Mon, 5 Jul 2010 17:27:07 +0000 (13:27 -0400)]
NAND: environment offset in OOB (CONFIG_ENV_OFFSET_OOB)

This is a re-submission of the patch by Harald Welte
<laforge@openmoko.org> with minor modifications for rebase and changes
as suggested by Scott Wood <scottwood@freescale.com> [1] [2].

This patch enables the environment partition to have a run-time dynamic
location (offset) in the NAND flash.  The reason for this is simply that
all NAND flashes have factory-default bad blocks, and a fixed compile
time offset would mean that sometimes the environment partition would
live inside factory bad blocks. Since the number of factory default
blocks can be quite high (easily 1.3MBytes in current standard
components), it is not economic to keep that many spare blocks inside
the environment partition.

With this patch and CONFIG_ENV_OFFSET_OOB enabled, the location of the
environment partition is stored in the out-of-band (OOB) data of the
first block in flash. Since the first block is where most systems boot
from, the vendors guarantee that the first block is not a factory
default block.

This patch introduces the 'nand env.oob' command, which can be called
from the u-boot command line. 'nand env.oob get' reads the address of
the environment partition from the OOB data, 'nand env.oob set
{offset,partition-name}' allows the setting of the marker by specifying
a numeric offset or a partition name.

[1] http://article.gmane.org/gmane.comp.boot-loaders.u-boot/43916
[2] http://article.gmane.org/gmane.comp.boot-loaders.u-boot/79195

Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
Acked-by: Harald Welte <laforge@gnumonks.org>
14 years agonios2: remove EP1C20, EP1S10, EP1S40 boards
Thomas Chou [Wed, 16 Jun 2010 06:39:30 +0000 (14:39 +0800)]
nios2: remove EP1C20, EP1S10, EP1S40 boards

The example configuration files of nios2-generic board can generated
binary to run on the EP1C20, EP1S10, and EP1S40 boards. So the three
boards can be removed.

With nios2-generic approach, the fpga parameter header file can
be generated from hardware designs using tools. Porting u-boot for
nios2 boards is simplified. Vendors can supply their fpga parameter
file or patches to add a new nios2-generic board instance. There is
no need to include other boards support for nios2 in the u-boot
mainline.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agonios2: add spi flash support to nios2-generic board
Thomas Chou [Fri, 30 Apr 2010 03:34:18 +0000 (11:34 +0800)]
nios2: add spi flash support to nios2-generic board

This patch enables the altera_spi and spi_flash drivers for the
nios2-generic board. It allows access to the EPCS/SPI flash on
the Altera EP1C20 board.

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 agogpio_led: add gpio_request to __led_init
Thomas Chou [Wed, 9 Jun 2010 05:32:46 +0000 (13:32 +0800)]
gpio_led: add gpio_request to __led_init

This patch adds the gpio usage request. The polarity is changed to
positive as suggested by Mike Frysinger.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agonios2: add gpio_request
Thomas Chou [Wed, 9 Jun 2010 01:51:09 +0000 (09:51 +0800)]
nios2: add gpio_request

This will be used by nand_plat.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agonios2: add fdt support
Thomas Chou [Mon, 31 May 2010 03:58:05 +0000 (11:58 +0800)]
nios2: add fdt support

This patch adds fdt support to boot linux, followed Michal's
work on microblaze.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agonios2: use gc sections to reduce image size
Thomas Chou [Fri, 28 May 2010 04:08:10 +0000 (12:08 +0800)]
nios2: use gc sections to reduce image size

Follow the discussion of Charles Manning and Mike Frysinger.
Using gc_sections helps reduce image size.

Configuring for nios2-generic board...
Before,
   text    data     bss     dec     hex filename
 123979    3724   22892  150595   24c43 /tmp/u-boot/u-boot
After,
   text    data     bss     dec     hex filename
 115983    3800   22732  142515   22cb3 /tmp/u-boot/u-boot

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Signed-off-by: Scott McNutt <smcnutt@psyent.com>
14 years agocpuat91: unbreak ethernet
Eric Bénard [Mon, 21 Jun 2010 07:40:43 +0000 (09:40 +0200)]
cpuat91: unbreak ethernet

* the following problems are met :
config was set to use the new driver as a default but
- RMII was not enabled for the new driver
- the new driver didn't compile with RMII enabled
- the new driver initialize a PHY at address O when the PHY of
this board is at 1 thus we get "AT91 EMAC RMII: No PHY present"

* to fix these problems, this patch :
- enable RMII for the new driver
- fix the wrong define used in the at91_emac.c
- allow the config file to set a default phy address (and use
0 as a default as in the actual at91_emac.c driver)

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoat91_emac: Write MAC address automatically
Eric Bénard [Mon, 21 Jun 2010 07:41:16 +0000 (09:41 +0200)]
at91_emac: Write MAC address automatically

tested on cpuat91.

Signed-off-by: Eric Bénard <eric@eukrea.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoAX88180: use standard I/O accessors
Mike Frysinger [Thu, 3 Jun 2010 01:03:50 +0000 (21:03 -0400)]
AX88180: use standard I/O accessors

The current dm9000x driver accesses its memory mapped registers directly
instead of using the standard I/O accessors.  This can cause problems on
Blackfin systems as the accesses can get out of order.  So convert the
direct volatile dereferences to use the normal in/out macros.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Hoan Hoang <hnhoan@i-syst.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoAX88180: make OUTW handle 32bit/16bit defines too
Hoan Hoang [Tue, 11 May 2010 06:43:07 +0000 (02:43 -0400)]
AX88180: make OUTW handle 32bit/16bit defines too

The current OUTW function is always defined as a 16bit function, but this
doesn't work correctly when using the 32bit access mode.  So define it as
a 32bit function when in 32bit mode so things work correctly on Blackfin
32bit LE systems.

Signed-off-by: Hoan Hoang <hnhoan@i-syst.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoAX88180: add support for the Marvell 88E1118 phy
Hoan Hoang [Tue, 11 May 2010 06:42:38 +0000 (02:42 -0400)]
AX88180: add support for the Marvell 88E1118 phy

Some places in the current code equate the Marvell 88E1111 PHY as the family
when in reality it's a subpart of the Alaska family.  So once we generalize
that, add support for the 88E1118 PHY.

Signed-off-by: Hoan Hoang <hnhoan@i-syst.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoWrite MAC address automatically on MACB-based boards
Ben Warren [Tue, 1 Jun 2010 18:55:42 +0000 (11:55 -0700)]
Write MAC address automatically on MACB-based boards

Also, remove all calls to eth_init() in boards that use MACB

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agosmc91xx_eeprom: Correct chip detection check.
Juergen Kilb [Sat, 12 Jun 2010 19:22:01 +0000 (21:22 +0200)]
smc91xx_eeprom: Correct chip detection check.

The smc911x_detect function in /net/driver/net/smc911x.c
returns a 0 if everything was ok (a chip was found) and -1 else.
In the standalone example 'smc911x_eeprom' the return value
of smc911x_detect is interpreted in a different way
(0 for error, !0 as OK).
This leads to the error that the chip will not be detected.

Signed-off-by: Juergen Kilb <j.kilb@phytec.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agotsec: fix the return value for tsec_eth_init()
Timur Tabi [Tue, 8 Jun 2010 13:21:21 +0000 (08:21 -0500)]
tsec: fix the return value for tsec_eth_init()

The Ethernet initialization functions are supposed to return the number of
devices initialized, so fix tsec_eth_init() so that they returns the number of
TSECs initialized, instead of just zero.  This is safe because the return value
is currently ignored by all callers, but now they don't have to ignore it.

In general, if an function initializes only one device, then it should return
a negative number if there's an error.  If it initializes more than one device,
then it should never return a negative number.

Signed-off-by: Timur Tabi <timur@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agouli526x: drop newlines from device name
Mike Frysinger [Thu, 10 Jun 2010 02:14:21 +0000 (22:14 -0400)]
uli526x: drop newlines from device name

Device names should not contain non-printable characters like newlines.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agonet: warn about spaces in device names
Mike Frysinger [Thu, 10 Jun 2010 02:10:48 +0000 (22:10 -0400)]
net: warn about spaces in device names

Some commands operate on eth device names (like 'mii'), but those cannot
be passed on the command line as one argument.  So detect devices like
these and warn about them so someone will fix it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoAX88180: switch to common mii.h header
Mike Frysinger [Mon, 10 May 2010 20:47:36 +0000 (16:47 -0400)]
AX88180: switch to common mii.h header

No compiled code change here, just drop the local PHY defines in favor of
the common standard ones.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoAX88180: improve phy searching
Mike Frysinger [Mon, 10 May 2010 20:10:00 +0000 (16:10 -0400)]
AX88180: improve phy searching

Rather than hardcode specific phy addresses, search the possible phy
address space to find the first available phy.  Also respect the normal
CONFIG_PHY_ADDR option for board porters to pick a specific address.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoAX88180: fix media typos
Hoan Hoang [Mon, 10 May 2010 20:09:35 +0000 (16:09 -0400)]
AX88180: fix media typos

Signed-off-by: Hoan Hoang <hnhoan@i-syst.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoAX88180: add missing init prototype
Mike Frysinger [Mon, 10 May 2010 20:08:54 +0000 (16:08 -0400)]
AX88180: add missing init prototype

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agokirkwood_egiga: updates: fix DRAM mapping and typo
Albert Aribaud [Mon, 5 Jul 2010 18:15:25 +0000 (20:15 +0200)]
kirkwood_egiga: updates: fix DRAM mapping and typo

DRAM window mapping uses kirkwood-provided functions instead
of global gd as do other drivers--fix this.

Also, fix a typo in a comment

Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agoSPEAr : Network driver support added
Vipin KUMAR [Tue, 29 Jun 2010 05:23:34 +0000 (10:53 +0530)]
SPEAr : Network driver support added

Designware network driver support added.
This is a Synopsys ethernet controller

Signed-off-by: Vipin Kumar <vipin.kumar@st.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agokirkwood_egiga: bugfix: add DMA sequence points
Albert Aribaud [Sat, 10 Jul 2010 13:41:29 +0000 (15:41 +0200)]
kirkwood_egiga: bugfix: add DMA sequence points

Insert isb() sequence points to ensure DMA descriptors
are filled in and set up before actual DMA occurs.

Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
Acked-by: Prafulla Wadaskar <prafulla@marvell.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agonet: Add option to disable fiber on M88E1111 PHY for PPC4xx
Stefan Roese [Tue, 29 Jun 2010 07:23:53 +0000 (09:23 +0200)]
net: Add option to disable fiber on M88E1111 PHY for PPC4xx

By defining CONFIG_M88E1111_DISABLE_FIBER boards can configure the
M88E1111 PYH to disable fiber. This is needed for an upcoming PPC460GT
based board, which has fiber/copper auto-selection enabled by default.
This doesn't seem to work. So we disable fiber in the PHY register.

Signed-off-by: Stefan Roese <sr@denx.de>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agonet: dm9000x: re-add casts to I/O pointers to fix gcc warnings
Mike Frysinger [Mon, 5 Jul 2010 06:29:21 +0000 (02:29 -0400)]
net: dm9000x: re-add casts to I/O pointers to fix gcc warnings

The DM9000 in/out helper functions were casting the register address when
it was accessing things directly (pre commit a45dde2293c816138e53c).  But
when it was changed to using the in/out helpers, those casts were dropped
because those functions don't take pointers.  Even more recently, those
functions were then changed to use the read/write helpers, but the casts
were not re-added.  This is necessary because the read/write helpers do
take pointers.  Otherwise we get a lot of warnings like:
dm9000x.c: In function 'dm9000_inblk_8bit':
dm9000x.c:172: warning: passing argument 1 of 'readb'
makes pointer from integer without a cast

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Thomas Weber <weber@corscience.de>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years agotsec: add micrel ksz804 phy
Heiko Schocher [Mon, 5 Jul 2010 10:23:04 +0000 (12:23 +0200)]
tsec: add micrel ksz804 phy

Signed-off-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
14 years ago83xx: add support for ve8313 board
Heiko Schocher [Wed, 7 Jul 2010 10:26:34 +0000 (12:26 +0200)]
83xx: add support for ve8313 board

This patch add support for the ve8313 board based on
Freescale MPC8313 CPU.

- serial console on UART 1
- 128 MB DDR RAM
- 32 MB NOR Flash
- 16 MB NAND Flash
- Ethernet MII Mode over on TSEC0
- micrel ksz804 phy
- Hardware WDT MAX824

changes since v1
- Environment size = sector size
- use red. environment
- add comments from Kim Phillips
  - add MAKEALL, MAINTAINERS entry
  - Codingstyle issues fixed
  - inserted original Copyrights
  - PCI subsys vendor ID changed from 0x1057 (Motorola)
    to 0x1957 (Freescale)

changes since v2
- add comments from Wolfgang Denk
  - fix Codingstyle and some comments
  - reworked WDT reset (just toggling the WD_TRIG pin)
  - Environment size now 16KiB
  - fixed RAMBOOT version
  - fixed CONFIG_SYS_LOAD_ADDR
  - renamed CONFIG_TSEC1_NAME to TSEC1

Signed-off-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
14 years agoMPC8308RDB: minimal support for devboard from Freescale
Ilya Yanok [Wed, 7 Jul 2010 16:16:13 +0000 (20:16 +0400)]
MPC8308RDB: minimal support for devboard from Freescale

This patch provides support for MPC8308RDB development board from
Freescale with a minimal set of features:
 Dual UART is supported
 NOR flash is supported
 Both TSEC Ethernet controllers are supported
 PCI Express initialization is supported

The following features are enabled in configuration but not fully tested:
 I2C (used to get the board revision)
 I2C-connected RTC
 VSC7385 switch

There is one (hopefully) minor issue: on soft reset the board sometimes
resets twice. I've not managed to find the fix for this problem yet.
As a workaround instruction cache can be disabled.

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
14 years agompc8308: support for Freescale MPC8308 cpu
Ilya Yanok [Mon, 28 Jun 2010 12:44:33 +0000 (16:44 +0400)]
mpc8308: support for Freescale MPC8308 cpu

This patch adds basic support for Freescale MPC8308 CPU. Serial ports,
NOR flash and integrated Ethernet controllers are supported.
PCI Express is also supported. eSDHC, NAND and USB may work but aren't
tested (using ULPI PHY requires additional patch).

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
14 years agoBlackfin: convert plat-nand code to GPIO framework
Mike Frysinger [Mon, 5 Jul 2010 08:55:05 +0000 (04:55 -0400)]
Blackfin: convert plat-nand code to GPIO framework

Use the new GPIO framework code in both the Blackfin arch and the
nand_plat driver to simplify things greatly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agomtd: nand_plat: add simple GPIO framework DEV_READY option
Mike Frysinger [Mon, 5 Jul 2010 08:55:04 +0000 (04:55 -0400)]
mtd: nand_plat: add simple GPIO framework DEV_READY option

Make it easy to use GPIOs for the DEV_READY pin by using the common GPIO
framework.  Also make the NAND_PLAT_INIT() define optional.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Thomas Chou <thomas@wytron.com.tw>
14 years agoNAND: add Toshiba TC58NVG0 identifier
Florian Fainelli [Sat, 12 Jun 2010 19:28:38 +0000 (21:28 +0200)]
NAND: add Toshiba TC58NVG0 identifier

The Toshiba TC58NVG0* parts are 128Mbytes x 8 bits 3.3V parts with the 0xD1
identifier. Add these to the list of known devices IDs.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
14 years agoNAND: show manufacturer and device ID for unknown chips
Florian Fainelli [Sat, 12 Jun 2010 18:59:25 +0000 (20:59 +0200)]
NAND: show manufacturer and device ID for unknown chips

When the NAND part is not supported, it is useful to show the manufacturer
and device ID to help debugging and reporting.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
14 years agoBlackfin: convert gpio flash logic to common gpio layer
Mike Frysinger [Wed, 2 Jun 2010 09:22:16 +0000 (05:22 -0400)]
Blackfin: convert gpio flash logic to common gpio layer

Use the common gpio layer rather than bang on MMRs directly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf537-stamp: use common spi boot workaround code
Mike Frysinger [Wed, 2 Jun 2010 09:20:18 +0000 (05:20 -0400)]
Blackfin: bf537-stamp: use common spi boot workaround code

The common gpio code provides a function for handling the spi boot
workaround logic, so switch over to that rather than bang on the
gpio MMRs directly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: switch to common GPIO LED driver
Mike Frysinger [Wed, 2 Jun 2010 09:12:11 +0000 (05:12 -0400)]
Blackfin: switch to common GPIO LED driver

Now that we have a unified gpio layer, the different status led
implementations can be switched to the common gpio led driver.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: back out status_led.h stubs
Mike Frysinger [Wed, 2 Jun 2010 09:08:58 +0000 (05:08 -0400)]
Blackfin: back out status_led.h stubs

When boards define CONFIG_BOARD_SPECIFIC_LED, the common led definitions
are OK for Blackfin boards.  So switch the few boards using these over to
the common code.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: unify custom gpio commands
Mike Frysinger [Wed, 2 Jun 2010 08:34:49 +0000 (04:34 -0400)]
Blackfin: unify custom gpio commands

Now that we have a unified gpio layer, the misc partial gpio commands
can be unified and made complete (support all possible gpios).

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: import gpio/portmux layer from Linux
Mike Frysinger [Wed, 2 Jun 2010 08:17:26 +0000 (04:17 -0400)]
Blackfin: import gpio/portmux layer from Linux

The current pinmux handling has spread throughout Blackfin drivers and
board code and is getting hideous to maintain.  So import the gpio and
portmux layer from the Blackfin Linux code.  This should spur a serious
of cleanups across the Blackfin tree.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: ibf-dsp561: enable AX88180 net driver
Hoan Hoang [Mon, 10 May 2010 19:38:55 +0000 (15:38 -0400)]
Blackfin: ibf-dsp561: enable AX88180 net driver

Signed-off-by: Hoan Hoang <hnhoan@i-syst.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: set up simple NMI handlers for anomaly 05000219
Mike Frysinger [Wed, 5 May 2010 06:07:44 +0000 (02:07 -0400)]
Blackfin: set up simple NMI handlers for anomaly 05000219

Older on-chip Blackfin bootroms do not create a dummy NMI handler, so set
up one ourselves when anomaly 05000219 applies.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: update anomaly lists to latest sheets
Mike Frysinger [Wed, 5 May 2010 06:38:34 +0000 (02:38 -0400)]
Blackfin: update anomaly lists to latest sheets

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: bf537-stamp: drop old spi_flash driver
Mike Frysinger [Wed, 5 May 2010 05:08:53 +0000 (01:08 -0400)]
Blackfin: bf537-stamp: drop old spi_flash driver

The new common spi framework and spi flash subsystem provides all the same
functionality as the old Blackfin-specific driver, so punt the old one as
it has been sticking around long enough.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: expand EVT1 usage documentation a bit more
Mike Frysinger [Thu, 29 Apr 2010 06:49:41 +0000 (02:49 -0400)]
Blackfin: expand EVT1 usage documentation a bit more

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: implement bootcount support
Mike Frysinger [Thu, 29 Apr 2010 05:34:57 +0000 (01:34 -0400)]
Blackfin: implement bootcount support

The default storage location for bootcount is EVT0.  This version uses
one 32bit value and combines the magic/count value in the upper/lower
16bits.  If there is demand for more, should be easy to do.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoBlackfin: clean up trace buffer handling when crashing
Mike Frysinger [Thu, 29 Apr 2010 04:31:36 +0000 (00:31 -0400)]
Blackfin: clean up trace buffer handling when crashing

Avoid banging on the trace MMRs when debugging is disabled, avoid calling
the funcs multiple times in a row, disable the trace buffer earlier in the
exception handler to avoid eating more user entries, and dump the buffer
before calling the kgdb hook.  This way we maximize useful debugging info
up front rather than needing external tools (like gdb/serial/etc...).

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
14 years agoMake sure that argv[] argument pointers are not modified.
Wolfgang Denk [Mon, 28 Jun 2010 20:00:46 +0000 (22:00 +0200)]
Make sure that argv[] argument pointers are not modified.

The hush shell dynamically allocates (and re-allocates) memory for the
argument strings in the "char *argv[]" argument vector passed to
commands.  Any code that modifies these pointers will cause serious
corruption of the malloc data structures and crash U-Boot, so make
sure the compiler can check that no such modifications are being done
by changing the code into "char * const argv[]".

This modification is the result of debugging a strange crash caused
after adding a new command, which used the following argument
processing code which has been working perfectly fine in all Unix
systems since version 6 - but not so in U-Boot:

int main (int argc, char **argv)
{
while (--argc > 0 && **++argv == '-') {
/* ====> */ while (*++*argv) {
switch (**argv) {
case 'd':
debug++;
break;
...
default:
usage ();
}
}
}
...
}

The line marked "====>" will corrupt the malloc data structures and
usually cause U-Boot to crash when the next command gets executed by
the shell.  With the modification, the compiler will prevent this with
an
error: increment of read-only location '*argv'

N.B.: The code above can be trivially rewritten like this:

while (--argc > 0 && **++argv == '-') {
char *arg = *argv;
while (*++arg) {
switch (*arg) {
...

Signed-off-by: Wolfgang Denk <wd@denx.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
14 years agoRedundant environment: move flag definitions to header file
Wolfgang Denk [Tue, 22 Jun 2010 13:44:16 +0000 (15:44 +0200)]
Redundant environment: move flag definitions to header file

Instead of defining the flags sevaral times in different source files
(which is error prone), move them to a central place in a header file.

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoMake *printf() return "int" instead of "void"
Wolfgang Denk [Sun, 20 Jun 2010 15:14:14 +0000 (17:14 +0200)]
Make *printf() return "int" instead of "void"

Change the return type of the *printf() functions to the standard
"int"; no changes are needed but returning the already available
length count.

This will save a few additional strlen() calls later...

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoexports.c: fix warning: 'dummy' defined but not used
Wolfgang Denk [Sun, 20 Jun 2010 21:33:02 +0000 (23:33 +0200)]
exports.c: fix warning: 'dummy' defined but not used

Also get rid of the #ifdef's while doing this.

Suggested-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agocmd_ide.c: fix unused variable warning for SC3 board
Wolfgang Denk [Sun, 20 Jun 2010 18:10:46 +0000 (20:10 +0200)]
cmd_ide.c: fix unused variable warning for SC3 board

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoshannon/INFERNO: fix special handling of environment configuration
Wolfgang Denk [Sun, 20 Jun 2010 19:26:20 +0000 (21:26 +0200)]
shannon/INFERNO: fix special handling of environment configuration

Remove some INFERNO related #ifdef's from common environment code by
fixing the board configuration settings (add CONFIG_ENV_SECT_SIZE).

While we are at it, fix comment which incorrectly talks about 4 KB
environment size, while it's actually 0x4000 = 16 KiB.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Rolf Offermanns <rof@sysgo.de>
14 years agoboards.cfg: fix ML2, am3517_evm and s5p_goni boards
Wolfgang Denk [Sun, 20 Jun 2010 18:10:02 +0000 (20:10 +0200)]
boards.cfg: fix ML2, am3517_evm and s5p_goni boards

Fix board directory name for ML2 board, and
add missing definitions for am3517_evm and s5p_goni boards.

Signed-off-by: Wolfgang Denk <wd@denx.de>
14 years agoMerge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Sun, 4 Jul 2010 21:37:00 +0000 (23:37 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx

14 years agoMerge branch 'sf' of git://git.denx.de/u-boot-blackfin
Wolfgang Denk [Sun, 4 Jul 2010 21:36:11 +0000 (23:36 +0200)]
Merge branch 'sf' of git://git.denx.de/u-boot-blackfin

14 years agoppc4xx: Add T3COPR board support (PPC460GT based)
Stefan Roese [Wed, 19 May 2010 09:11:15 +0000 (11:11 +0200)]
ppc4xx: Add T3COPR board support (PPC460GT based)

This patch adds support for the T3CORP board, based on the
AppliedMicro (APM) PPC460GT.

Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoppc4xx: Cleanup Boot/FLASH TLB reassignment for PPC440/460
Stefan Roese [Thu, 27 May 2010 14:45:20 +0000 (16:45 +0200)]
ppc4xx: Cleanup Boot/FLASH TLB reassignment for PPC440/460

Background Info:
Some PPC440/460 boards have caches enabled in the Boot/FLASH TLB (via
init.S) to speed up the boot process. In relocate_code (start.S) the
cache inhibit attribute for this TLB is set to disable cache. This is
needed for the CFI FLASH driver.

This patch now cleans this code up:
- CONFIG_SYS_TLB_FOR_BOOT_FLASH is defined to 0 (default TLB) if not
  defined in the top of this file. This way, we can remove an ugly
  #ifdef in this code.
- Replace complex "#if defined(CONFIG_440EP) || defined(CONFIG_GR)..."
  statement with "#if defined(CONFIG_440)".
- Remove unnecessary cache invalidate calls resulting in faster bootup.

Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoppc4xx: Add DDR1/2 macros in ppc4xx-sdram.h for non-405EX as well
Stefan Roese [Tue, 25 May 2010 14:13:41 +0000 (16:13 +0200)]
ppc4xx: Add DDR1/2 macros in ppc4xx-sdram.h for non-405EX as well

This patch adds some DDR(2) macros to all PPC4xx's equipped with
this IBM DDR1/2 controller.

Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoppc4xx: DDR2: Complete RDSS configuration on non-SPD based boards
Stefan Roese [Tue, 25 May 2010 13:33:14 +0000 (15:33 +0200)]
ppc4xx: DDR2: Complete RDSS configuration on non-SPD based boards

As described in item #10 of the SDRAM initialization (chapter 22.2.9
of the PPC460EX/EXr/GT users manual), RDSS may need to be adjusted. The
code for this is now factored out and executed for non-SPD based boards
as well.

Signed-off-by: Stefan Roese <sr@denx.de>
14 years agoppc4xx: Enable overwriting of default scan window for IBM DDR2 controller
Stefan Roese [Tue, 25 May 2010 13:23:07 +0000 (15:23 +0200)]
ppc4xx: Enable overwriting of default scan window for IBM DDR2 controller

This patch makes it possible to overwrite the default auto-calibration
scan window (SDRAM_WRDTR.[WDTR], SDRAM_CLKTR.[CKTR] values) with
board specific values. The parameters of the weak default function are
corrected as well. This way we don't need the casts any more.

This feature will be used by an upcoming PPC460GT board port.

Signed-off-by: Stefan Roese <sr@denx.de>