platform/kernel/u-boot.git
16 years agofw_env: add NAND support
Guennadi Liakhovetski [Thu, 4 Sep 2008 11:01:49 +0000 (13:01 +0200)]
fw_env: add NAND support

Add support for environment in NAND with automatic NOR / NAND recognition,
including unaligned environment, bad-block skipping, redundant environment
copy.

Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
16 years agoppc4xx: Fix out-of-tree building of CPCI405 variants
Matthias Fuchs [Tue, 9 Sep 2008 07:50:24 +0000 (09:50 +0200)]
ppc4xx: Fix out-of-tree building of CPCI405 variants

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Acked-by: Stefan Roese <sr@denx.de>
16 years agoRemoved hardcoded MxMR loop value from upmconfig() for MPC85xx.
Sergei Poselenov [Fri, 15 Aug 2008 13:42:11 +0000 (15:42 +0200)]
Removed hardcoded MxMR loop value from upmconfig() for MPC85xx.

Signed-off-by: Sergei Poselenov <sposelenov@emcraft.com>
16 years ago85xx: socrates: Enable Lime support.
Anatolij Gustschin [Fri, 15 Aug 2008 13:42:13 +0000 (15:42 +0200)]
85xx: socrates: Enable Lime support.

This patch adds Lime GDC support together with support for the PWM
backlight control through the w83782d chip.  The reset pin of the
latter is attached to GPIO, so we need to reset it in
early_board_init_r.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
16 years ago85xx: Socrates: Major code update.
Detlev Zundel [Fri, 15 Aug 2008 13:42:12 +0000 (15:42 +0200)]
85xx: Socrates: Major code update.

- Update the local bus ranges in the FDT for Linux for the various
  devices connected to the local bus via chip-select.

- Set the LCRR_DBYP bit in the LCRR for local bus frequencies
  lower than 66 MHz and uses I/O accessor functions consequently.

- UPM data update.

- Update of default environment and configuration.  Use I2C multibus
  as we do have two I2C buses.  Also enable sdram and ext2 commands.

Signed-off-by: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Sergei Poselenov <sposelenov@emcraft.com>
Signed-off-by: Detlev Zundel <dzu@denx.de>
16 years agoUpdate Freescale 85xx boards to sys_eeprom.c
Timur Tabi [Fri, 18 Jul 2008 14:52:23 +0000 (16:52 +0200)]
Update Freescale 85xx boards to sys_eeprom.c

The new sys_eeprom.c supports both the old CCID EEPROM format and the new NXID
format, and so it obsoletes board/freescale/common/cds_eeprom.c.  Freescale
86xx boards already use sys_eeprom.c, so this patch migrates the remaining
Freescale 85xx boards to use it as well.  cds_eeprom.c is deleted.

Signed-off-by: Timur Tabi <timur@freescale.com>
16 years agolib_ppc/interrupts.c: make board_show_activity() a weak function
Wolfgang Denk [Tue, 9 Sep 2008 08:08:02 +0000 (10:08 +0200)]
lib_ppc/interrupts.c: make board_show_activity() a weak function

This allows to use show_activity() without having to
define an empty board_show_activity() function.

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agostxxtc: remove empty CONFIG_SHOW_ACTIVITY functions
Wolfgang Denk [Tue, 9 Sep 2008 08:06:44 +0000 (10:06 +0200)]
stxxtc: remove empty CONFIG_SHOW_ACTIVITY functions

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agoNETTA2: remove empty CONFIG_SHOW_ACTIVITY functions
Wolfgang Denk [Tue, 9 Sep 2008 08:03:47 +0000 (10:03 +0200)]
NETTA2: remove empty CONFIG_SHOW_ACTIVITY functions

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agoMerge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Tue, 9 Sep 2008 00:24:51 +0000 (02:24 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx

Conflicts:

Makefile

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agodisk-on-chip: remove duplicate doc_probe declaration
Jean-Christophe PLAGNIOL-VILLARD [Mon, 8 Sep 2008 23:22:39 +0000 (01:22 +0200)]
disk-on-chip: remove duplicate doc_probe declaration

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
16 years agoonenand_uboot: fix warning: 'struct mtd_oob_ops' declared inside parameter list
Jean-Christophe PLAGNIOL-VILLARD [Mon, 8 Sep 2008 22:59:40 +0000 (00:59 +0200)]
onenand_uboot: fix warning: 'struct mtd_oob_ops' declared inside parameter list

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
16 years agors5c372: fix rtc_set prototype
Jean-Christophe PLAGNIOL-VILLARD [Mon, 8 Sep 2008 22:59:39 +0000 (00:59 +0200)]
rs5c372: fix rtc_set prototype

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
16 years agoARM: fix warning: target CPU does not support interworking
Sergei Poselenov [Thu, 14 Aug 2008 12:08:28 +0000 (14:08 +0200)]
ARM: fix warning: target CPU does not support interworking

This patch fixes warnings like this:

start.S:0: warning: target CPU does not support interworking

which come from some ARM cross compilers and are caused by hard-coded
(with "--with-cpu=arm9" configuration option) ARM targets (which
support ARM Thumb instructions), while the ARM target selected from
the command line (with "-march=armv4") doesn't support Thumb
instructions.

This warning is issued by the compiler regardless of the real use of
the Thumb instructions in code.

To fix this problem, we use options according to compiler version
being used.

Signed-off-by: Sergei Poselenov <sposelenov@emcraft.com>
Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agoARM: Use do_div() instead of division for "long long".
Sergei Poselenov [Thu, 14 Aug 2008 12:08:28 +0000 (14:08 +0200)]
ARM: Use do_div() instead of division for "long long".

Signed-off-by: Sergei Poselenov <sposelenov@emcraft.com>
Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agolib_arm/bootm.c: fix compile warnings
Wolfgang Denk [Mon, 8 Sep 2008 21:26:22 +0000 (23:26 +0200)]
lib_arm/bootm.c: fix compile warnings

bootm.c:128: warning: label 'error' defined but not used
bootm.c:65: warning: unused variable 'ret'

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agoml507: fix out of tree build problem
Wolfgang Denk [Mon, 8 Sep 2008 20:46:42 +0000 (22:46 +0200)]
ml507: fix out of tree build problem

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agocommon/cmd_bootm.c: fix printf() format warnings
Wolfgang Denk [Mon, 8 Sep 2008 20:10:28 +0000 (22:10 +0200)]
common/cmd_bootm.c: fix printf() format warnings

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agoBMW, PCIPPC2, PCIPPC6, RBC82: fix compile warnings
Wolfgang Denk [Mon, 8 Sep 2008 20:37:45 +0000 (22:37 +0200)]
BMW, PCIPPC2, PCIPPC6, RBC82: fix compile warnings

missing doc_probe() prototype.

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agomk48t59: fix compile problem introduced by commit d1e23194
Wolfgang Denk [Mon, 8 Sep 2008 19:28:14 +0000 (21:28 +0200)]
mk48t59: fix compile problem introduced by commit d1e23194

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agoppc4xx: Move ppc4xx specific prototypes to ppc4xx header
Stefan Roese [Mon, 8 Sep 2008 12:11:12 +0000 (14:11 +0200)]
ppc4xx: Move ppc4xx specific prototypes to ppc4xx header

This patch moves some 4xx specific prototypes out of include common.h
to a ppc4xx specific header.

Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoMerge branch 'master' of /home/stefan/git/u-boot/u-boot
Stefan Roese [Mon, 8 Sep 2008 08:35:49 +0000 (10:35 +0200)]
Merge branch 'master' of /home/stefan/git/u-boot/u-boot

16 years agoppc4xx: Update CPCI405(AB) configuration
Matthias Fuchs [Fri, 5 Sep 2008 13:34:04 +0000 (15:34 +0200)]
ppc4xx: Update CPCI405(AB) configuration

This patch add FDT support and command line editing capabilities
for CPCI405 and CPCI405AB boards.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Cleanup CPCI405 linker script
Matthias Fuchs [Fri, 5 Sep 2008 13:34:03 +0000 (15:34 +0200)]
ppc4xx: Cleanup CPCI405 linker script

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Update CPCI405 variants handling
Matthias Fuchs [Fri, 5 Sep 2008 13:34:02 +0000 (15:34 +0200)]
ppc4xx: Update CPCI405 variants handling

This patch replaces the BOARD_REVISION variable in include/config.mk
by a using a temporary include file in the platform directory.

The former way does not work anymore and the latter is also used by
some other boards.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Remove CONFIG_CS8952_PHY define
Stefan Roese [Mon, 8 Sep 2008 08:01:48 +0000 (10:01 +0200)]
ppc4xx: Remove CONFIG_CS8952_PHY define

Since this define is only used on one board that was never really in
production, removing this compile time option doesn't hurt and makes
the code more readable.

Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Fix compilation warning for PIP405
Stefan Roese [Fri, 5 Sep 2008 12:11:40 +0000 (14:11 +0200)]
ppc4xx: Fix compilation warning for PIP405

This patch fixes a compilation warning for the PIP405 board. It moves the
#ifndef CONFIG_CS8952_PHY define a little so that the warning doesn't
occur anymore. I am a little unsure if this #ifdef is at the correct
place now or if it could be removed completely. This needs to get
tested on the PIP405 board.

Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Fix compilation warning for canyonlands & glacier
Stefan Roese [Fri, 5 Sep 2008 12:09:09 +0000 (14:09 +0200)]
ppc4xx: Fix compilation warning for canyonlands & glacier

Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoFix compiler warning in mpc8xxx ddr code
Kumar Gala [Fri, 5 Sep 2008 19:40:29 +0000 (14:40 -0500)]
Fix compiler warning in mpc8xxx ddr code

ctrl_regs.c: In function 'compute_fsl_memctl_config_regs':
ctrl_regs.c:523: warning: 'caslat' may be used uninitialized in this function
ctrl_regs.c:523: note: 'caslat' was declared here

Add a warning in DDR1 case if cas_latency isn't a value we know about.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
16 years agortc: allow rtc_set to return an error and use it in cmd_date
Jean-Christophe PLAGNIOL-VILLARD [Mon, 1 Sep 2008 21:06:23 +0000 (23:06 +0200)]
rtc: allow rtc_set to return an error and use it in cmd_date

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
16 years agoap325rxa/favr-32-ezkit: Use CONFIG_FLASH_CFI_DRIVER
Jean-Christophe PLAGNIOL-VILLARD [Sun, 31 Aug 2008 23:16:33 +0000 (01:16 +0200)]
ap325rxa/favr-32-ezkit: Use CONFIG_FLASH_CFI_DRIVER

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
16 years agoconfig.mk: Move arch-specific condition to $(ARCH)_config.mk
Shinya Kuribayashi [Sat, 30 Aug 2008 20:37:04 +0000 (05:37 +0900)]
config.mk: Move arch-specific condition to $(ARCH)_config.mk

Signed-off-by: Shinya Kuribayashi <skuribay@ruby.dti.ne.jp>
16 years agoPrevent crash if random/invalid ramdisks are passed to bootm
Kumar Gala [Sat, 30 Aug 2008 00:08:29 +0000 (19:08 -0500)]
Prevent crash if random/invalid ramdisks are passed to bootm

Adds returning an error from the ramdisk detection code if
its not a real ramdisk (invalid).  There is no reason we can't
just return back to the console if we detect an invalid
ramdisk or CRC error.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
16 years agoPrevent crash if random DTB address is passed to bootm
Anatolij Gustschin [Fri, 29 Aug 2008 19:04:45 +0000 (21:04 +0200)]
Prevent crash if random DTB address is passed to bootm

This patch adds bootm_start() return value check. If
error status is returned, we do not proceed further to
prevent board reset or crash as we still can recover
at this point.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
16 years agoclean up some #if !defined() in drivers/video/cfb_console.c
Andrew Dyer [Fri, 29 Aug 2008 17:30:39 +0000 (12:30 -0500)]
clean up some #if !defined() in drivers/video/cfb_console.c

rearrange some #if !defined() / #else / #endif statements to remove
the negative logic.

Signed-off-by: Andrew Dyer <adyer@righthandtech.com>
16 years agoapollon: use the last memory area for u-boot
Kyungmin Park [Fri, 29 Aug 2008 00:02:20 +0000 (09:02 +0900)]
apollon: use the last memory area for u-boot

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
16 years agoTQM8272: move NAND part in seperate File
Heiko Schocher [Thu, 28 Aug 2008 11:50:42 +0000 (13:50 +0200)]
TQM8272: move NAND part in seperate File

I didn't try to use drivers/mtd/nand/fsl_upm.c for the NAND driver,
because I have no longer access to the hardware.

Signed-off-by: Heiko Schocher <hs@denx.de>
16 years agoTQM8272: Fix compiling error for the TQM8272 board.
Heiko Schocher [Thu, 28 Aug 2008 11:48:36 +0000 (13:48 +0200)]
TQM8272: Fix compiling error for the TQM8272 board.

Fix compile problems caused by
commit  cfa460adfdefcc30d104e1a9ee44994ee349bb7b

Signed-off-by: Heiko Schocher <hs@denx.de>
16 years agoAdd JFFS2 command support on OneNAND
Kyungmin Park [Wed, 27 Aug 2008 05:45:20 +0000 (14:45 +0900)]
Add JFFS2 command support on OneNAND

Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
16 years agoAllow console input to be disabled
Mark Jackson [Mon, 25 Aug 2008 18:21:30 +0000 (19:21 +0100)]
Allow console input to be disabled

Added new CONFIG_DISABLE_CONSOLE define and GD_FLG_DISABLE_CONSOLE.

When CONFIG_DISABLE_CONSOLE is defined, setting
GD_FLG_DISABLE_CONSOLE disables all console input and output.

Signed-off-by: Mark Jackson <mpfj@mimc.co.uk>
16 years agoloads: allow negative offsets
Ricardo Ribalda Delgado [Wed, 30 Jul 2008 10:39:29 +0000 (12:39 +0200)]
loads: allow negative offsets

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@uam.es>
16 years agoUSB EHCI: reset root hub
Yuri Tikhonov [Thu, 4 Sep 2008 09:19:05 +0000 (11:19 +0200)]
USB EHCI: reset root hub

Some of multi-function USB controllers (e.g. ISP1562) allow root hub
resetting only via EHCI registers. So, this patch adds the
corresponding kind of reset to OHCI's hc_reset() if the newly
introduced CONFIG_PCI_EHCI_DEVNO option is set (e.g. for Socrates
board).

Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
Acked-by: Markus Klotzbuecher <mk@denx.de>
16 years agoRX 8025 RTC: analyze 12/24-hour mode flag in rtc_get().
Yuri Tikhonov [Fri, 15 Aug 2008 13:42:09 +0000 (15:42 +0200)]
RX 8025 RTC: analyze 12/24-hour mode flag in rtc_get().

Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
16 years agoMerge branch 'master' of /home/stefan/git/u-boot/u-boot
Stefan Roese [Fri, 5 Sep 2008 12:16:10 +0000 (14:16 +0200)]
Merge branch 'master' of /home/stefan/git/u-boot/u-boot

16 years agodevices: Use list_add_tail() instead of list_add() to register a device
Stefan Roese [Fri, 5 Sep 2008 08:47:46 +0000 (10:47 +0200)]
devices: Use list_add_tail() instead of list_add() to register a device

This patch fixes a problem spotted on Glacier/Canyonlands (and most
likely lots of other board ports), that no serial output was seen
after console initialization in console_init_r(). This is because the
last added console device was used instead of the first added.

This patch fixes this problem by using list_add_tail() instead of
list_add() to register a device. This way the first added console
is used again.

Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Add support for GPCS, SGMII and M88E1112 PHY
Victor Gallardo [Fri, 5 Sep 2008 06:49:36 +0000 (23:49 -0700)]
ppc4xx: Add support for GPCS, SGMII and M88E1112 PHY

This patch adds GPCS, SGMII and M88E1112 PHY support
for the AMCC PPC460GT/EX processors.

Signed-off-by: Victor Gallardo <vgallardo@amcc.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Update Kilauea to use PPC4xx DDR autocalibration routines
Adam Graham [Wed, 3 Sep 2008 19:26:59 +0000 (12:26 -0700)]
ppc4xx: Update Kilauea to use PPC4xx DDR autocalibration routines

Signed-off-by: Adam Graham <agraham@amcc.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: IBM Memory Controller DDR autocalibration routines
Adam Graham [Wed, 3 Sep 2008 19:26:28 +0000 (12:26 -0700)]
ppc4xx: IBM Memory Controller DDR autocalibration routines

Alternate SDRAM DDR autocalibration routine that can be generically used
for any PPC4xx chips that have the IBM SDRAM Controller core allowing for
support of more DIMM/memory chip vendors and gets the DDR autocalibration
values which give the best read latency performance (SDRAM0_RDCC.[RDSS]).

Two alternate SDRAM DDR autocalibration algoritm are provided in this patch,
"Method_A" and "Method_B".  DDR autocalibration Method_A scans the full range
of possible PPC4xx  SDRAM Controller DDR autocalibration values and takes a
lot longer to run than Method_B.  Method_B executes in the same amount of time
as the currently existing DDR autocalibration routine, i.e. 1 second or so.
Normally Method_B is used and it is set as the default method.

The current U-Boot PPC4xx DDR autocalibration code calibrates the IBM SDRAM
Controller registers.[bit-field]:
1)  SDRAM0_RQDC.[RQFD]
2)  SDRAM0_RFDC.[RFFD]

This alternate PPC4xx DDR autocalibration code calibrates the following
IBM SDRAM Controller registers.[bit-field]:

1)  SDRAM0_WRDTR.[WDTR]
2)  SDRAM0_CLKTR.[CKTR]
3)  SDRAM0_RQDC.[RQFD]
4)  SDRAM0_RFDC.[RFFD]

and will also use the calibrated settings of the above four registers that
produce the best "Read Sample Cycle Select" value in the SDRAM0_RDCC.[RDSS]
register.[bit-field].

Signed-off-by: Adam Graham <agraham@amcc.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc44x: Unification of virtex5 pp440 boards
Ricardo Ribalda Delgado [Mon, 1 Sep 2008 17:09:39 +0000 (13:09 -0400)]
ppc44x: Unification of virtex5 pp440 boards

This patch provides an unificated way of handling xilinx v5 ppc440 boards.

It unificates 3 different things:

1) Source code
A new board called ppc440-generic has been created. This board includes
a generic tlb initialization (Maps the whole memory into virtual) and
defines board_pre_init, checkboard, initdram and get_sys_info weakly,
so, they can be replaced by specific functions.

If a new board needs to redefine any of the previous functions
(specific initialization) it can create a new directory with the
specific initializations needed. (see the example ml507 board).

2) Configuration file
Common configurations are located under configs/xilinx-ppc440.h, this
header file interpretes the xparameters file generated by EDK and
configurates u-boot in correspondence. Example: if there is a Temac,
allows CMD_CONFIG_NET
Specific configuration are located under specific configuration file.
(see the example ml507 board)

3) Makefile
Some work has been done in order to not duplicate work in the Main
Makefile. Please see the attached code.

In order to support new boards they can be implemented in the next way:

a) Simple Generic Board  (90% of the time)
Using EDK generates a new xparameters.h file, replace
ppc440-generic/xparameters.h  and run make xilinx-ppc440-generic_config
&& make

b) Simple Boards with special u-boot parameters (9 % of the time)
Create a new file under configs for it (use ml507.h as example) and
change your paramaters. Create a new Makefile paragraph and compile

c) Complex boards (1% of the time)
Create a new folder for the board, like the ml507

Finally, it adds support for the Avnet FX30T Evaluation board, following
the new generic structure:

Cheap board by Avnet for evaluating the Virtex5 FX technology.

This patch adds support for:
 - UartLite
 - 16MB Flash
 - 64MB RAM

Prior using U-boot in this board, read carefully the ERRATA by Avnet
to solve some memory initialization issues.

Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@uam.es>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoMerge branch 'master' of ssh://10.10.0.7/home/wd/git/u-boot/master
Wolfgang Denk [Wed, 3 Sep 2008 21:44:42 +0000 (23:44 +0200)]
Merge branch 'master' of ssh://10.10.0.7/home/wd/git/u-boot/master

16 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc83xx
Wolfgang Denk [Wed, 3 Sep 2008 21:44:18 +0000 (23:44 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx

16 years agompc83xx: fix mpc8313 in-tree building with NAND
Nick Spence [Tue, 2 Sep 2008 20:21:16 +0000 (15:21 -0500)]
mpc83xx: fix mpc8313 in-tree building with NAND

and add mpc8313 NAND build to MAKEALL

Signed-off-by: Nick Spence <nick.spence@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
16 years agoMerge branch 'master' of ssh://10.10.0.7/home/wd/git/u-boot/master
Wolfgang Denk [Wed, 3 Sep 2008 21:07:41 +0000 (23:07 +0200)]
Merge branch 'master' of ssh://10.10.0.7/home/wd/git/u-boot/master

16 years agompc83xx: clean up cache operations and unlock_ram_in_cache() functions
Nick Spence [Thu, 28 Aug 2008 21:09:25 +0000 (14:09 -0700)]
mpc83xx: clean up cache operations and unlock_ram_in_cache() functions

Cleans up some latent issues with the data cache control so that
dcache_enable() and dcache_disable() will work reliably (after
unlock_ram_in_cache() has been called)

Signed-off-by: Nick Spence <nick.spence@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
16 years agompc83xx: Store and display Arbiter Event Register values
Nick Spence [Thu, 28 Aug 2008 21:09:19 +0000 (14:09 -0700)]
mpc83xx: Store and display Arbiter Event Register values

Record the Arbiter Event Register values and optionally display them.

The Arbiter Event Register can record the type and effective address of
an arbiter error, even through an HRESET. This patch stores the values in
the global data structure.

Display of the Arbiter Event registers immediately after the RSR value
can be enabled with defines. The Arbiter values will only be displayed
if an arbiter event has occured since the last Power On Reset, and either
of the following defines exist:
 #define CONFIG_DISPLAY_AER_BRIEF - display only the arbiter address and
                                    and type register values
 #define CONFIG_DISPLAY_AER_FULL  - display and interpret the arbiter
                                    event register values

Address Only transactions are one of the trapped events that can register
as an arbiter event. They occur with some cache manipulation instructions
if the HID0_ABE (Address Broadcast Enable) is set and the memory region
has the MEMORY_COHERENCE WIMG bit set. Setting:
 #define CONFIG_MASK_AER_AO - prevents the arbiter from recording address
                              only events, so that it can still capture
                              other real problems.

Signed-off-by: Nick Spence <nick.spence@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
16 years agompc83xx: use r4 instead of r2 in lock_ram_in_cache and unlock_ram_in_cache
Nick Spence [Thu, 28 Aug 2008 21:09:11 +0000 (14:09 -0700)]
mpc83xx: use r4 instead of r2 in lock_ram_in_cache and unlock_ram_in_cache

This is needed in unlock_ram_in_cache() because it is called from C and
will corrupt the small data area anchor that is kept in R2.

lock_ram_in_cache() is modified similarly as good coding practice, but
is not called from C.

Signed-off-by: Nick Spence <nick.spence@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
16 years agoMPC83XX: Fix GPIO configuration - set gpio level before direction
Nick Spence [Sat, 23 Aug 2008 06:52:50 +0000 (23:52 -0700)]
MPC83XX: Fix GPIO configuration - set gpio level before direction

Set DAT value before DIR values to avoid creating glitches on the
GPIO signals.

Set gpio level register before direction register to inhibit
glitches on high level output pins.

Dir and data gets cleared at powerup, so high level output lines see
a short low pulse between setting the direction and level registers.

Issue was seen on a new board with the nReset line of the NOR flash
connected to a GPIO. Setting the direction register puts the NOR flash
in reset so the next instruction to set the level cannot get executed.

Signed-off-by: Nick Spence <nick.spence@freescale.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
16 years agoMerge branch 'master' of git://git.denx.de/u-boot-mips
Wolfgang Denk [Wed, 3 Sep 2008 20:59:29 +0000 (22:59 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-mips

16 years agoMerge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Wed, 3 Sep 2008 20:55:55 +0000 (22:55 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx

Conflicts:

board/esd/dasa_sim/dasa_sim.c

Signed-off-by: Wolfgang Denk <wd@denx.de>
16 years agoMerge branch 'master' of git://git.denx.de/u-boot-net
Wolfgang Denk [Wed, 3 Sep 2008 20:43:57 +0000 (22:43 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-net

16 years agodoc/qemu_mips: add doc howto debug u-boot with gdb
Jean-Christophe PLAGNIOL-VILLARD [Tue, 2 Sep 2008 00:58:32 +0000 (02:58 +0200)]
doc/qemu_mips: add doc howto debug u-boot with gdb

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
16 years agoppx4xx: Fix broken DASA_SIM board
Matthias Fuchs [Wed, 3 Sep 2008 15:15:45 +0000 (17:15 +0200)]
ppx4xx: Fix broken DASA_SIM board

This patch adds initdram() to DASA_SIM boards that has been
removed accidentally by a previous commit.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Remove reference to common/lists.o from some esd linker scripts
Stefan Roese [Mon, 1 Sep 2008 06:35:37 +0000 (08:35 +0200)]
ppc4xx: Remove reference to common/lists.o from some esd linker scripts

This patch removes some direct references to common/lists.o from some
esd linker scripts. This is necessary because the lists source was moved
and is not in the "common" directory anymore.

Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Remove obsolete or unused functions from some esd boards
Matthias Fuchs [Tue, 2 Sep 2008 14:33:05 +0000 (16:33 +0200)]
ppc4xx: Remove obsolete or unused functions from some esd boards

This patch removes initdram() and testdram() from most esd 405 platforms.
Some boards also have an empty dummy implementation of
misc_init_f(). This is also removed.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Update VOM405 board configuration
Matthias Fuchs [Tue, 2 Sep 2008 13:07:54 +0000 (15:07 +0200)]
ppc4xx: Update VOM405 board configuration

- remove PCI code
- add command line editing
- minor cleanup

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Remove obsolete initdram() function from VOM405 board
Matthias Fuchs [Tue, 2 Sep 2008 13:07:53 +0000 (15:07 +0200)]
ppc4xx: Remove obsolete initdram() function from VOM405 board

This patch removed the obsolete initdram() function from
VOM405 platform file.

Some minor cleanup.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Cleanup VOM405 linker script
Matthias Fuchs [Tue, 2 Sep 2008 13:07:52 +0000 (15:07 +0200)]
ppc4xx: Cleanup VOM405 linker script

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Add fdt support for VOM405 boards
Matthias Fuchs [Tue, 2 Sep 2008 13:07:51 +0000 (15:07 +0200)]
ppc4xx: Add fdt support for VOM405 boards

Signed-off-by: Matthias Fuchs <mf@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Coding style cleanup
Matthias Fuchs [Tue, 2 Sep 2008 09:36:14 +0000 (11:36 +0200)]
ppc4xx: Coding style cleanup

Wrap long lines etc.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Enable USB on PLU405 boards
Matthias Fuchs [Tue, 2 Sep 2008 09:35:56 +0000 (11:35 +0200)]
ppc4xx: Enable USB on PLU405 boards

This patch enables the PCI-OHCI controller on PLU405 board.

Also the default CPU frequency is updated to 266 MHz and
command line editing is enabled.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd-electronics.com>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Cleanup PLU405 platform file
Matthias Fuchs [Tue, 2 Sep 2008 09:35:35 +0000 (11:35 +0200)]
ppc4xx: Cleanup PLU405 platform file

This patch
- wraps some long lines
- removes unused/obsolete functions: misc_init_f() and initdram()

Signed-off-by: Matthias Fuchs <mf@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Cleanup PLU405 linker script
Matthias Fuchs [Tue, 2 Sep 2008 09:35:04 +0000 (11:35 +0200)]
ppc4xx: Cleanup PLU405 linker script

Signed-off-by: Matthias Fuchs <mf@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Add fdt support for PLU405 boards
Matthias Fuchs [Tue, 2 Sep 2008 09:34:36 +0000 (11:34 +0200)]
ppc4xx: Add fdt support for PLU405 boards

Signed-off-by: Matthias Fuchs <mf@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoppc4xx: Increase U-Boot size to 384kB for PLU405 boards
Matthias Fuchs [Tue, 2 Sep 2008 09:34:08 +0000 (11:34 +0200)]
ppc4xx: Increase U-Boot size to 384kB for PLU405 boards

Signed-off-by: Matthias Fuchs <mf@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
16 years agoDon't tftp to unknown flash
Jochen Friedrich [Tue, 2 Sep 2008 09:24:59 +0000 (11:24 +0200)]
Don't tftp to unknown flash

If a board has a variable number of flash banks, there are empty entries
in flash_info[] and CFG_DIRECT_FLASH_TFTP is set, tftp boot fails with
"Outside available Flash". This patch skips flash banks with unknown
flash ids.

Signed-off-by: Jochen Friedrich <jochen@scram.de>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agonet: smc911x: Add pkt_data_pull and pkt_data_push function
Nobuhiro Iwamatsu [Thu, 28 Aug 2008 04:40:44 +0000 (13:40 +0900)]
net: smc911x: Add pkt_data_pull and pkt_data_push function

The RSK7203 board has the SMSC9118 wired up 'incorrectly'.
Byte-swapping is necessary, and so poor performance is inevitable.
This problem cannot evade by the swap function of CHIP, this can
evade by software Byte-swapping.
And this has problem by FIFO access only. pkt_data_pull/pkt_data_push
functions necessary to solve this problem.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu.nobuhiro@renesas.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of EEPRO100 Ethernet controller to board_eth_init()
Ben Warren [Mon, 1 Sep 2008 03:37:00 +0000 (20:37 -0700)]
Moved initialization of EEPRO100 Ethernet controller to board_eth_init()

Affected boards:
db64360
db64460
katmai
taihu
taishan
yucca
cpc45
cpu87
eXalion
elppc
debris
kvme080
mpc8315erdb
integratorap
ixdp425
oxc
pm826
pm828
pm854
pm856
ppmc7xx
sc3
sc520_spunk
sorcery
tqm8272
tqm85xx
utx8245

Removed initialization of the driver from net/eth.c
Also, wrapped contents of pci_eth_init() by CONFIG_PCI.

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of TULIP Ethernet controller to board_eth_init()
Ben Warren [Sun, 31 Aug 2008 17:45:44 +0000 (10:45 -0700)]
Moved initialization of TULIP Ethernet controller to board_eth_init()

Affected boards:
cu824
bab7xx
adciop
dasa_sim
mousse
mpc8540eval
musenki
mvblue
pcippc2/pcippc6
sbc8240
stxssa

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of E1000 Ethernet controller to board_eth_init()
Ben Warren [Sun, 31 Aug 2008 17:44:19 +0000 (10:44 -0700)]
Moved initialization of E1000 Ethernet controller to board_eth_init()

Affected boards:
ap1000
mvbc_p
PM854

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of plb2800 Ethernet driver to board_eth_init
Ben Warren [Sun, 31 Aug 2008 17:40:51 +0000 (10:40 -0700)]
Moved initialization of plb2800 Ethernet driver to board_eth_init

Affected boards:
purple

Removed initialization of controller from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of MPC5xxx_FEC Ethernet driver to CPU directory
Ben Warren [Sun, 31 Aug 2008 17:39:12 +0000 (10:39 -0700)]
Moved initialization of MPC5xxx_FEC Ethernet driver to CPU directory

Modified board_eth_init() functions of boards that have this FEC in addition
to other Ethernet controllers.

Affected boards:
bc3450
icecube
mvbc_p
o2dnt
pm520
total5200
tq5200

Removed initialization of controller from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of MPC512x_FEC Ethernet driver to CPU directory
Ben Warren [Sun, 31 Aug 2008 17:36:38 +0000 (10:36 -0700)]
Moved initialization of MPC512x_FEC Ethernet driver to CPU directory

Added a cpu_eth_init() function to MPC512x CPU directory and
removed code from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of IncaIP Ethernet controller to board_eth_init
Ben Warren [Sun, 31 Aug 2008 17:16:59 +0000 (10:16 -0700)]
Moved initialization of IncaIP Ethernet controller to board_eth_init

Affected boards:
IncaIP

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of 3COM Ethernet controller (AmigaOne) to board_eth_init()
Ben Warren [Sun, 31 Aug 2008 17:15:26 +0000 (10:15 -0700)]
Moved initialization of 3COM Ethernet controller (AmigaOne) to board_eth_init()

    Affected boards:
        AmigaOneG3SE

    Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of GT6426x Ethernet controller to board_eth_init()
Ben Warren [Sun, 31 Aug 2008 17:13:34 +0000 (10:13 -0700)]
Moved initialization of GT6426x Ethernet controller to board_eth_init()

Affected boards:
EVB64260
P3G4
ZUMA

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of PCNET Ethernet controller to board_eth_init()
Ben Warren [Sun, 31 Aug 2008 17:08:43 +0000 (10:08 -0700)]
Moved initialization of PCNET Ethernet controller to board_eth_init()

Affected boards:
PN62
sc520_cdp

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of NATSEMI Ethernet controller to board_eth_init()
Ben Warren [Sun, 31 Aug 2008 17:07:16 +0000 (10:07 -0700)]
Moved initialization of NATSEMI Ethernet controller to board_eth_init()

Affected boards:
a3000

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of NS8382X Ethernet controller to board_eth_init()
Ben Warren [Sun, 31 Aug 2008 17:03:22 +0000 (10:03 -0700)]
Moved initialization of NS8382X Ethernet controller to board_eth_init()

Affected boards:
bc3450
cpci5200
mecp5200
pf2000
icecube
o2dnt
pm520
sandpoint8245
total5200
tqm5200

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of TSI108 Ethernet controller to board_eth_init()
Ben Warren [Sun, 31 Aug 2008 16:59:33 +0000 (09:59 -0700)]
Moved initialization of TSI108 Ethernet controller to board_eth_init()

Affected boards:
mpc7448hpc2

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of RTL8139 Ethernet controller to board_eth_init()
Ben Warren [Mon, 1 Sep 2008 04:41:08 +0000 (21:41 -0700)]
Moved initialization of RTL8139 Ethernet controller to board_eth_init()

Affected boards:
hidden_dragon
MPC8544DS
MPC8610HPCN
R2DPLUS
TB0229

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of RTL8169 Ethernet controller to board_eth_init()
Ben Warren [Sun, 31 Aug 2008 16:49:42 +0000 (09:49 -0700)]
Moved initialization of RTL8169 Ethernet controller to board_eth_init()

Affected boards:
linkstation
r7780mp

Removed initialization of the driver from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoMoved initialization of Ethernet controllers on Atmel AT91 to board_eth_init()
Ben Warren [Wed, 13 Aug 2008 05:11:53 +0000 (22:11 -0700)]
Moved initialization of Ethernet controllers on Atmel AT91 to board_eth_init()

Removed at91sam9_eth_initialize() from net/eth.c

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoIntroduce netdev.h header file and remove externs
Ben Warren [Mon, 1 Sep 2008 05:22:04 +0000 (22:22 -0700)]
Introduce netdev.h header file and remove externs

This addresses all drivers whose initializers have already
been moved to board_eth_init()/cpu_eth_init().

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoAdd pixis_set_sgmii command
Andy Fleming [Sun, 31 Aug 2008 21:33:30 +0000 (16:33 -0500)]
Add pixis_set_sgmii command

The 8544DS and 8572DS platforms support an optional SGMII riser card to
expose ethernet over an SGMII interface.  Once the card is in, it is also
necessary to configure the board such that it uses the card, rather than
the on-board ethernet ports.  This can either be done by flipping dip switches
on the motherboard, or by modifying registers in the pixis.  Either way
requires a reboot.

This adds a command to allow users to choose which ports are routed through
the SGMII card, and which through the onboard ports.  It also allows users
to revert to the current switch settings.

This code does not work on the 8572, as the PIXIS is different.

Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoAdd SGMII support for the 8544 DS
Andy Fleming [Sun, 31 Aug 2008 21:33:29 +0000 (16:33 -0500)]
Add SGMII support for the 8544 DS

The 8544 DS has an optional SGMII Riser card, which uses different PHY
addresses.  Check if we are in SGMII mode, and invoke the SGMII Riser
setup code if so.

Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoAdd support for Freescale SGMII Riser Card
Andy Fleming [Sun, 31 Aug 2008 21:33:28 +0000 (16:33 -0500)]
Add support for Freescale SGMII Riser Card

The 8544DS and 8572DS systems have an optional SGMII riser card which
exposes new ethernet ports which are connected to the eTSECs via an
SGMII interface.  The SGMII PHYs for this board are offset from the standard
PHY addresses, so this code modifies the passed in tsec_info structure to
use the SGMII PHYs on the card, instead.

Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoAdd SGMII support to the tsec
Andy Fleming [Sun, 31 Aug 2008 21:33:27 +0000 (16:33 -0500)]
Add SGMII support to the tsec

Adds support for configuring the TBI to talk properly with the SerDes.

Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoPass in tsec_info struct through tsec_initialize
Andy Fleming [Sun, 31 Aug 2008 21:33:26 +0000 (16:33 -0500)]
Pass in tsec_info struct through tsec_initialize

The tsec driver contains a hard-coded array of configuration information
for the tsec ethernet controllers.  We create a default function that works
for most tsecs, and allow that to be overridden by board code.  It creates
an array of tsec_info structures, which are then parsed by the corresponding
driver instance to determine configuration.  Also, add regs, miiregs, and
devname fields to the tsec_info structure, so that we don't need the kludgy
"index" parameter.

Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agotsec: Move tsec.h to include/
Andy Fleming [Sun, 31 Aug 2008 21:33:25 +0000 (16:33 -0500)]
tsec: Move tsec.h to include/

This is to prepare the way for board code passing in the tsec_info structure

Signed-off-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
16 years agoPHY: Add support for the M88E1121R Marvell chip.
Sergei Poselenov [Fri, 6 Jun 2008 13:52:44 +0000 (15:52 +0200)]
PHY: Add support for the M88E1121R Marvell chip.

Signed-off-by: Yuri Tikhonov <yur@emcraft.com>
Signed-off-by: Sergei Poselenov <sposelenov@emcraft.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>