oweals/u-boot.git
15 years agoat91: Extended soft_i2c driver for AT91SAM9263 SoC
Daniel Gorsulowski [Mon, 18 May 2009 11:20:54 +0000 (13:20 +0200)]
at91: Extended soft_i2c driver for AT91SAM9263 SoC

While hard_i2c support is not available
(see http://lists.denx.de/pipermail/u-boot/2009-March/049751.html),
this patch enables soft_i2c on AT91SAM9263 SoC.

Signed-off-by: Daniel Gorsulowski <Daniel.Gorsulowski@esd.eu>
15 years agoAdd 'true' and 'false' commands
Peter Tyser [Fri, 16 Oct 2009 22:36:27 +0000 (17:36 -0500)]
Add 'true' and 'false' commands

These commands are only enabled when the hush shell is enabled and can
be useful in scripts such as:

while true do
    echo "Booting OS...";
    run $bootcmd;
    echo "Booting OS failed";
    sleep 10;
done

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agocmd_help: General cleanup
Peter Tyser [Fri, 16 Oct 2009 22:36:26 +0000 (17:36 -0500)]
cmd_help: General cleanup

Shorten the overly-verbose help message of 'help' and clean up some
redundant ifdefery while we're at it.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agocommand.c: Break commands out to appropriate cmd_*.c files
Peter Tyser [Fri, 16 Oct 2009 22:36:25 +0000 (17:36 -0500)]
command.c: Break commands out to appropriate cmd_*.c files

command.c should contain common code related to commands, not
miscellaneous command implementations.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agoMerge branch 'next' of git://git.denx.de/u-boot-nand-flash into next
Wolfgang Denk [Sat, 21 Nov 2009 22:17:57 +0000 (23:17 +0100)]
Merge branch 'next' of git://git.denx.de/u-boot-nand-flash into next

15 years agoMerge branch 'next' of git://www.denx.de/git/u-boot-ppc4xx into next
Wolfgang Denk [Sat, 21 Nov 2009 22:14:58 +0000 (23:14 +0100)]
Merge branch 'next' of git://denx.de/git/u-boot-ppc4xx into next

15 years agoNAND: Add Support for 4K page size in DaVinci NAND driver
Sandeep Paulraj [Fri, 20 Nov 2009 04:04:42 +0000 (23:04 -0500)]
NAND: Add Support for 4K page size in DaVinci NAND driver

This patch adds support for NAND devices with a page size of
4K in the DaVinci NAND driver. The layout matches the layout that TI uses
for 4K page size NAND devices in the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoppc4xx: Remove unused features from PMC440 board support
Matthias Fuchs [Wed, 18 Nov 2009 15:29:29 +0000 (16:29 +0100)]
ppc4xx: Remove unused features from PMC440 board support

This patch shrinks the PMC440 u-boot binary (from next branch)
to fit into 384kB again.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Remove confusing comment
Matthias Fuchs [Wed, 18 Nov 2009 15:28:42 +0000 (16:28 +0100)]
ppc4xx: Remove confusing comment

This is not the sequoia board.

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: alpr: Remove some not needed commands to make image fit again
Stefan Roese [Tue, 17 Nov 2009 14:53:00 +0000 (15:53 +0100)]
ppc4xx: alpr: Remove some not needed commands to make image fit again

The latest changes in the u-boot/next branch increased the size of the
alpr image a bit more. Now it doesn't fit into the 256k reserved for it.
This patch now removes the commands "askenv" and "irq" which are not
needed in the production systems.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Pieter Voorthuijsen <pieter.voorthuijsen@prodrive.nl>
15 years agoppc4xx: Consolidate pci_master_init() function
Stefan Roese [Thu, 12 Nov 2009 16:19:37 +0000 (17:19 +0100)]
ppc4xx: Consolidate pci_master_init() function

This patch removes the duplicted implementations of the pci_master_init()
function by introducing a weak default function for it. It can be
overridden by a board specific version.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Consolidate pci_pre_init() function
Stefan Roese [Thu, 12 Nov 2009 15:41:09 +0000 (16:41 +0100)]
ppc4xx: Consolidate pci_pre_init() function

This patch removes the duplicted implementations of the pci_pre_init()
function by introducing a weak default function for it. This weak default
has a different implementation for some PPC variants. It can be
overridden by a board specific version.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Consolidate pci_target_init() function
Stefan Roese [Thu, 12 Nov 2009 11:00:49 +0000 (12:00 +0100)]
ppc4xx: Consolidate pci_target_init() function

This patch removes the duplicted implementations of the pci_target_init()
function by introducing a weak default function for it. This weak default
has a different implementation for 440EP(x)/GR(x) PPC's. It can be
overridden by a board specific version (e.g. PMC440, korat).

Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Matthias Fuchs <matthias.fuchs@esd.eu>
15 years agoS3C2410 NAND Flash Add Missing Function
Hui.Tang [Wed, 18 Nov 2009 08:24:04 +0000 (16:24 +0800)]
S3C2410 NAND Flash Add Missing Function

This patch add nand_read_buf() for S3C2410 NAND SPL.
In nand_spl/nand_boot.c, nand_boot() will check nand->select_chip,
so nand->select_chip should also be initialized.

Signed-off-by: Hui.Tang <zetalabs@gmail.com>
15 years agoNAND: Update read_read_subpage API check
Sandeep Paulraj [Mon, 16 Nov 2009 18:32:01 +0000 (13:32 -0500)]
NAND: Update read_read_subpage API check

This patch updates a check condition in the NAND driver.
The check condition is similat to what is in linux/next.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND:Extending the nand_ecclayout structure
Sandeep Paulraj [Mon, 16 Nov 2009 18:31:47 +0000 (13:31 -0500)]
NAND:Extending the nand_ecclayout structure

NANDs with page size of lesser than and equal to 2K are
reaching EOL. They are bing replaced with NANDs of
page size 4K and above.
To support this we have to extend the eccpos field

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoOMAP2/3: I2C: Add support for second and third bus
Dirk Behme [Mon, 2 Nov 2009 19:36:26 +0000 (20:36 +0100)]
OMAP2/3: I2C: Add support for second and third bus

Add support to use second and third I2C bus, too.

Bus 0 is still the default, but by calling i2c_set_bus_num(1/2) before doing
I2C accesses, code can switch to bus 1 and 2, too. Don't forget to switch
back afterwards, then.

Signed-off-by: Dirk Behme <dirk.behme@googlemail.com>
15 years agoMerge branch 'master' into next
Wolfgang Denk [Sun, 15 Nov 2009 22:13:40 +0000 (23:13 +0100)]
Merge branch 'master' into next

15 years agoMerge branch 'master' of git://git.denx.de/u-boot-net
Wolfgang Denk [Sun, 15 Nov 2009 21:50:52 +0000 (22:50 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-net

15 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Sun, 15 Nov 2009 21:48:02 +0000 (22:48 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

15 years agoMerge branch 'master-sync' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Sun, 15 Nov 2009 21:27:16 +0000 (22:27 +0100)]
Merge branch 'master-sync' of git://git.denx.de/u-boot-arm

15 years agoENV Variable support for Flex-OneNAND
Amul Kumar Saha [Wed, 4 Nov 2009 05:08:46 +0000 (10:38 +0530)]
ENV Variable support for Flex-OneNAND

Define and use CONFIG_ENV_ADDR_FLEX and CONFIG_ENV_SIZE_FLEX
for storing environment variables.

Signed-off-by: Rohit Hagargundgi <h.rohit@samsung.com>
Signed-off-by: Amul Kumar Saha <amul.saha@samsung.com>
15 years agoFlex-OneNAND driver support
Amul Kumar Saha [Fri, 6 Nov 2009 11:45:31 +0000 (17:15 +0530)]
Flex-OneNAND driver support

This patch adds support for Flex-OneNAND devices.

Signed-off-by: Rohit Hagargundgi <h.rohit@samsung.com>
Signed-off-by: Amul Kumar Saha <amul.saha@samsung.com>
15 years agofsl_elbc_nand: remove the bbt descriptors relocation fixup
Mingkai Hu [Tue, 20 Oct 2009 08:58:17 +0000 (16:58 +0800)]
fsl_elbc_nand: remove the bbt descriptors relocation fixup

The commit 66372fe2 manually relocated the bbt pattern pointer,
which can be removed by using full relocation.

Signed-off-by: Mingkai Hu <Mingkai.hu@freescale.com>
15 years agoppc/85xx: make boot from NAND full relocation to RAM
Mingkai Hu [Tue, 20 Oct 2009 08:58:16 +0000 (16:58 +0800)]
ppc/85xx: make boot from NAND full relocation to RAM

Take advantage of the latest full relocation commit of PPC platform
for boot from NAND.

Signed-off-by: Mingkai Hu <Mingkai.hu@freescale.com>
Acked-by: Kumar Gala <galak@kernel.crashing.org>
15 years agoNAND: fix "raw" reads with ECC syndrome layouts
David Brownell [Sat, 7 Nov 2009 21:27:01 +0000 (16:27 -0500)]
NAND: fix "raw" reads with ECC syndrome layouts

The syndrome based page read/write routines store ECC, and possibly other
"OOB" data, right after each chunk of ECC'd data.  With ECC chunk size of
512 bytes and a large page (2KiB) NAND, the layout is:

  data-0 OOB-0 data-1 OOB-1 data-2 OOB-2 data-3 OOB-3 OOB-leftover

Where OOBx is (prepad, ECC, postpad).  However, the current "raw" routines
use a traditional layout -- data OOB, disregarding the prepad and postpad
values -- so when they're used with that type of ECC hardware, those calls
mix up the data and OOB.  Which means, in particular, that bad block
tables won't be found on startup, with data corruption and related chaos
ensuing.

The current syndrome-based drivers in mainline all seem to use one chunk
per page; presumably they haven't noticed such bugs.

Fix this, by adding read/write page_raw_syndrome() routines as siblings of
the existing non-raw routines; "raw" just means to bypass the ECC
computations, not change data and OOB layout.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
15 years agoNAND: Don't walk past end of oobfree[]
Sandeep Paulraj [Sat, 7 Nov 2009 19:25:18 +0000 (14:25 -0500)]
NAND: Don't walk past end of oobfree[]

When computing oobavail from the list of free areas in the OOB,
don't assume there will always be an unused slot at the end.
This syncs up with the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Update check condition for nand_read_page_hwecc API
Sandeep Paulraj [Sat, 7 Nov 2009 19:25:03 +0000 (14:25 -0500)]
NAND: Update check condition for nand_read_page_hwecc API

The patch updates the check condition for determining
whether the ECC corrections has failed.
This makes it similar to what is in the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Updating comments/explanations in the NAND driver
Sandeep Paulraj [Sat, 7 Nov 2009 19:24:50 +0000 (14:24 -0500)]
NAND: Updating comments/explanations in the NAND driver

Patch updates the comments and explanations for
the arguments to various functions.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Subpage shift for ecc_steps equal to 16
Sandeep Paulraj [Sat, 7 Nov 2009 19:24:34 +0000 (14:24 -0500)]
NAND: Subpage shift for ecc_steps equal to 16

This was originally part of Thomas Gleixner's patch for
adding support for 4KiB pages.
This is not part of the U-Boot NAND driver so updating the
driver with this to sync up with the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Remove commented out code
Sandeep Paulraj [Sat, 7 Nov 2009 19:24:20 +0000 (14:24 -0500)]
NAND: Remove commented out code

Patch removes already commented out dead code

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Correct the "chip_shift" calculation
Sandeep Paulraj [Sat, 7 Nov 2009 19:24:06 +0000 (14:24 -0500)]
NAND: Correct the "chip_shift" calculation

This patch updates the "chip_shift" calculation in the
NAND driver. This is being done to sync up the NAND driver with
the kernel NAND driver.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoNAND: Update to support 64 bit device size
Sandeep Paulraj [Fri, 30 Oct 2009 17:51:23 +0000 (13:51 -0400)]
NAND: Update to support 64 bit device size

This patch adds support for NANDs greater than 2 GB.
Patch is based on the MTD NAND driver in the kernel.

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
15 years agocmd_nand: Move conditional compilation to Makefile
Peter Tyser [Thu, 15 Oct 2009 15:48:18 +0000 (10:48 -0500)]
cmd_nand: Move conditional compilation to Makefile

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agocmd_nand: Remove duplicate include
Peter Tyser [Thu, 15 Oct 2009 15:48:17 +0000 (10:48 -0500)]
cmd_nand: Remove duplicate include

Also remove vague, unnecessary comment

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agoppc/85xx: Fix how we determine the number of CAM entries
Kumar Gala [Fri, 13 Nov 2009 14:52:21 +0000 (08:52 -0600)]
ppc/85xx: Fix how we determine the number of CAM entries

We were incorrectly use the max CAM size as the number of entries in
the array for setting up the addrmap.  We should be using the NENTRY
field which is the low 12-bits of TLB1CFG.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agosmc911x: make smc911x_initialize return correct value
Mike Rapoport [Thu, 12 Nov 2009 13:35:08 +0000 (15:35 +0200)]
smc911x: make smc911x_initialize return correct value

Make smc911x_initialize return -1 on error and number of interfaces
detected otherwise.

Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Acked-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agosmc911x_eeprom: fix building after smc911x overhaul
Mike Frysinger [Fri, 13 Nov 2009 03:26:02 +0000 (22:26 -0500)]
smc911x_eeprom: fix building after smc911x overhaul

When the smc911x driver was converted to NET_MULTI, the smc911x eeprom was
missed.  The config option needed updating as well as overhauling of the
rergister read/write functions.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Tested-by: Mike Rapoport <mike.rapoport@gmail.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agofsl-ddr: Fix the chip-select interleaving issue
Dave Liu [Wed, 11 Nov 2009 23:26:37 +0000 (07:26 +0800)]
fsl-ddr: Fix the chip-select interleaving issue

commit 1542fbdeec0d1e2a6df13189df8dcb1ce8802be3
introduced one new bug to chip-select interleaving.

Single DDR controller also can do the chip-select
interleaving if there is dual-rank or qual-rank DIMMs.

Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agoMerge branch 'master' of git://git.denx.de/u-boot-net
Wolfgang Denk [Wed, 11 Nov 2009 22:10:34 +0000 (23:10 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-net

15 years agoMerge branch 'master' of git://git.denx.de/u-boot-ppc4xx
Wolfgang Denk [Wed, 11 Nov 2009 21:58:30 +0000 (22:58 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-ppc4xx

15 years agomxc_fec: avoid free() calls to already freed pointers.
javier Martin [Thu, 29 Oct 2009 07:22:43 +0000 (08:22 +0100)]
mxc_fec: avoid free() calls to already freed pointers.

Sometimes, inside NetLoop, eth_halt() is called before eth_init() has
been called. This is harmless except for free() calls to pointers
which have not been allocated yet.

This patch initializes those pointers to NULL and allocates them only
the first time. This way we can get rid of free calls in halt callback.

This has been tested in i.MX27 Litekit board and eldk-4.2 toolchains.

Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agomxc_fec: fix some erroneous PHY accesses.
javier Martin [Thu, 29 Oct 2009 07:18:34 +0000 (08:18 +0100)]
mxc_fec: fix some erroneous PHY accesses.

This patch fixes erroneous access to the ethernet PHY which broke the driver.
1. Selector field in the auto-negotiation register must be 0x00001 for
using 802.3, not 0x00000 which is reseved.
2. Access to the PHY address specified by CONFIG_FEC_MXC_PHYADDR, not
0x0 fixed address.

This has been tested in i.MX27 Litekit board and eldk-4.2 toolchains.

Now using proper defines for auto-negotiation register.

Signed-off-by: Javier Martin <javier.martin@vista-silicon.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoARM Don't inline weak symbols
Ron Lee [Wed, 5 Aug 2009 18:14:01 +0000 (20:14 +0200)]
ARM Don't inline weak symbols

------------------------------------------------------------------------

GCC 4.4 complains about this now.

Signed-off-by: Ron Lee <ron@debian.org>
15 years agoppc4xx: Katmai: Add chip_config command
Stefan Roese [Mon, 9 Nov 2009 13:15:42 +0000 (14:15 +0100)]
ppc4xx: Katmai: Add chip_config command

This patch removes the Katmai "bootstrap" command and replaces it
with the now common command "chip_config".

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Switch to I2C bus numer 0 for chip_config command
Stefan Roese [Mon, 9 Nov 2009 13:13:43 +0000 (14:13 +0100)]
ppc4xx: Switch to I2C bus numer 0 for chip_config command

All currently available 4xx derivats have the I2C bootstrap EEPROM
located on I2C bus number 0. This patch now first sets this bus number,
so that the chip_config command also works for board with multiple
I2C busses, like Katmai.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Add UBI support to PLU405 boards
Matthias Fuchs [Tue, 27 Oct 2009 11:19:11 +0000 (12:19 +0100)]
ppc4xx: Add UBI support to PLU405 boards

-add UBI support
-increase malloc'able memory size
-cleanup MONITOR|FLASH_BASE|LEN constants

Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu>
Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoFix SMC91111 regression: lpd7a40x build failures
Ben Warren [Mon, 9 Nov 2009 21:09:57 +0000 (13:09 -0800)]
Fix SMC91111 regression: lpd7a40x build failures

Both lpd7a400 and lpd7a404 failed to compile because they had
CONFIG_SMC_USE_IOFUNCS defined:

examples/standalone/smc91111_eeprom.c:388: undefined reference to `SMC_outw'

Also removed an orphaned paren in lpd7a404.h

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoSMC91111: Clean up SMC_inx macros on xsengine and xaeniax
Ben Warren [Mon, 9 Nov 2009 22:01:08 +0000 (14:01 -0800)]
SMC91111: Clean up SMC_inx macros on xsengine and xaeniax

This patch fixes the following warnings:

Configuring for xaeniax board...
smc91111_eeprom.c: In function 'print_macaddr':
smc91111_eeprom.c:278: warning: suggest parentheses around + or - in operand of &
smc91111_eeprom.c:281: warning: suggest parentheses around + or - in operand of &
...
Configuring for xsengine board...
smc91111_eeprom.c: In function 'print_macaddr':
smc91111_eeprom.c:278: warning: suggest parentheses around + or - inside shift
smc91111_eeprom.c:281: warning: suggest parentheses around + or - inside shift

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoMerge branch 'master-sync' of git://git.denx.de/u-boot-arm
Wolfgang Denk [Mon, 9 Nov 2009 21:46:32 +0000 (22:46 +0100)]
Merge branch 'master-sync' of git://git.denx.de/u-boot-arm

15 years agoFix CS8900 regression on impa7 board
Ben Warren [Mon, 9 Nov 2009 19:43:18 +0000 (11:43 -0800)]
Fix CS8900 regression on impa7 board

The following error was seen on impa7 board, due to its use of a 32-bit bus
on CS8900.
cs8900.c:137:37: error: macro "get_reg_init_bus" passed 2 arguments, but takes just 1

This patch gives the macro the correct number of arguments

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoclarify eth driver halt/recv steps
Mike Frysinger [Mon, 2 Nov 2009 03:39:56 +0000 (22:39 -0500)]
clarify eth driver halt/recv steps

The dev->halt() func can be called at any time, and the dev->recv() func
does not need to use NetRxPackets[] when calling NetReceive().

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoFix cs8900 dev->priv not init issue
Hui.Tang [Thu, 5 Nov 2009 01:58:44 +0000 (09:58 +0800)]
Fix cs8900 dev->priv not init issue

Ensure all CS8900 data structures are assigned before accessing device

Signed-off-by: Hui.Tang <zetalabs@gmail.com>
Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agoppc4xx: 44x_spd_ddr2.c: Fix register macro ECCCR -> ECCES (SDRAM_ECCES)
Stefan Roese [Tue, 3 Nov 2009 13:34:45 +0000 (14:34 +0100)]
ppc4xx: 44x_spd_ddr2.c: Fix register macro ECCCR -> ECCES (SDRAM_ECCES)

This error only appears when DEBUG is enabled in this driver. That's why
it went unnoticed till now.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Canyonlands: Change EBC bus config to drive always (no high-z)
Stefan Roese [Thu, 29 Oct 2009 17:37:45 +0000 (18:37 +0100)]
ppc4xx: Canyonlands: Change EBC bus config to drive always (no high-z)

This patch fixes a problem only seen very occasionally on Canyonlands.
The NOR flash interface (CFI driver) doesn't work reliably in all cases.
Erasing and/or programming sometimes doesn't work. Sometimes with
an error message, like "flash not erased" when trying to program an
area that should have just been erased. And sometimes without any error
messages. As mentioned above, this problem was only seen rarely and with
some PLL configuration (CPU speed, EBC speed).

Now I spotted this problem a few times, when running my Canyonlands with
the following setup (chip_config):

1000-nor         - NOR  CPU:1000 PLB: 200 OPB: 100 EBC: 100

Changing the EBC configuration to not release the bus into high
impedance state inbetween the transfers (ATC, DTC and CTC bits set to 1
in EBC0_CFG) seems to fix this problem. I haven't seen any failure
anymore with this patch applied.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: David Mitchell <dmitchell@amcc.com>
Cc: Jeff Mann <MannJ@embeddedplanet.com>
15 years agoppc4xx: Fix NAND booting targets after 4xx linker script consolidation
Stefan Roese [Mon, 9 Nov 2009 12:01:19 +0000 (13:01 +0100)]
ppc4xx: Fix NAND booting targets after 4xx linker script consolidation

Somehow I missed the NAND booting targets in the 4xx linker script
consolidation patchset. This patch fixes this issue.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Remove duplicated is_pci_host() functions
Stefan Roese [Thu, 29 Oct 2009 15:54:52 +0000 (16:54 +0100)]
ppc4xx: Remove duplicated is_pci_host() functions

This patch introduces a weak default function for is_pci_host(),
returning 1. This is the default behaviour, since most boards only
implement PCI host functionality. This weak default can be overridden
by a board specific version if needed.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Consolidate 4xx PCIe board specific configuration
Stefan Roese [Thu, 29 Oct 2009 14:04:35 +0000 (15:04 +0100)]
ppc4xx: Consolidate 4xx PCIe board specific configuration

This patch consolidates the PPC4xx board specific PCIe configuration
code. This way the duplicated code is removed. Boards can implement a
special, non standard behaviour (e.g. number of PCIe slots, etc) by
overriding the weak default functions.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoARM: Use Linux version for unaligned access code
Remy Bohmer [Thu, 29 Oct 2009 11:29:37 +0000 (12:29 +0100)]
ARM: Use Linux version for unaligned access code

The asm-arm/unaligned.h includes linux/unaligned/access_ok.h
This file is unsafe to be used on ARM, since it does an unaligned memory
accesses which fails on ARM.

Lookin at Linux the basic difference seems to be the header
"include/asm-arm/unaligned.h". The Linux version of "unaligned.h"
does *not* include "access_ok.h" at all. It includes "le_byteshift.h"
and "be_byteshift.h" instead.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
Signed-off-by: Stefan Roese <sr@denx.de>
--
 include/asm-arm/unaligned.h            |    3 -
 include/linux/unaligned/be_byteshift.h |   70 +++++++++++++++++++++++++++++++++
 include/linux/unaligned/le_byteshift.h |   70 +++++++++++++++++++++++++++++++++
 3 files changed, 142 insertions(+), 1 deletion(-)
 create mode 100644 include/linux/unaligned/be_byteshift.h
 create mode 100644 include/linux/unaligned/le_byteshift.h

15 years agoppc/85xx: Fix inclusion of 83xx immap in 85xx builds
Kumar Gala [Thu, 5 Nov 2009 00:02:10 +0000 (18:02 -0600)]
ppc/85xx: Fix inclusion of 83xx immap in 85xx builds

The nand_boot_fsl_elbc.c is shared between 83xx & 85xx however we should
not be including the immap_83xx.h when building 85xx.  We can just get
this all from common.h

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years ago86xx: Remove redundant code in initdram
Becky Bruce [Wed, 4 Nov 2009 23:34:04 +0000 (17:34 -0600)]
86xx: Remove redundant code in initdram

The same code exists both inside an #ifdef and outside of it.
Remove the extra code for all the 86xx boards.

Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agofsl_pci_init_port end-point initialization is broken
Ed Swarthout [Mon, 2 Nov 2009 15:05:49 +0000 (09:05 -0600)]
fsl_pci_init_port end-point initialization is broken

commit 70ed869e broke fsl pcie end-point initialization.
Returning 0 is not correct.  The function must return the first free
bus number for the next controller.

fsl_pci_init() must still be called and a bus allocated even if the
controller is an end-point.

Signed-off-by: Ed Swarthout <Ed.Swarthout@freescale.com>
Acked-by: Vivek Mahajan <vivek.mahajan@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agoRevert "ppc/85xx/pci: fsl_pci_init: pcie agent mode support"
Kumar Gala [Wed, 4 Nov 2009 07:29:04 +0000 (01:29 -0600)]
Revert "ppc/85xx/pci: fsl_pci_init: pcie agent mode support"

This reverts commit 70ed869ea5f6b1d13d7b140c83ec0dcd8a127ddc.

There isn't any need to modify the API for fsl_pci_init_port to pass the
status of host/agent(end-point) status.  We can determine that
internally to fsl_pci_init_port.  Revert the patch that makes the API
change.

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agoppc4xx: Remove board specific linker scripts from most PPC4xx boards
Stefan Roese [Tue, 27 Oct 2009 15:20:05 +0000 (16:20 +0100)]
ppc4xx: Remove board specific linker scripts from most PPC4xx boards

All these linker scripts can be removed since the new common ppc4xx
linker script should be able to handle all of those boards.

Please test and report problems. Thanks.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Add common ppc4xx linker script
Stefan Roese [Tue, 27 Oct 2009 15:11:26 +0000 (16:11 +0100)]
ppc4xx: Add common ppc4xx linker script

This linker script can be used by all PPC4xx platforms. It works for
PPC405 and PPC440 platforms. Boards which need a board specific linker
script can override this default linker script in board/*/config.mk.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Add custom linker script to board/*/config.mk
Stefan Roese [Tue, 27 Oct 2009 15:16:13 +0000 (16:16 +0100)]
ppc4xx: Add custom linker script to board/*/config.mk

These boards have special linker scripts right now. We can't use the
common 4xx linker script here. So overrride the linker script (LDSCRIPT)
in board/*/config.mk and choose the board specific version.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: Fix problems in some ppc4xx board Makefiles
Stefan Roese [Tue, 27 Oct 2009 14:57:24 +0000 (15:57 +0100)]
ppc4xx: Fix problems in some ppc4xx board Makefiles

Some 4xx Makefiles didn't add $(SOBJ) to their board library. This was
no till now problem, since those boards included this object (init.o
most of the time) directly from their linker scripts. This patch clean
this up, so that all objects are now collected in the board library. This
is in preparation for the upcoming PPC4xx linker script consolidation.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc4xx: sc3: Remove unreferenced external declarations from sc3.h
Stefan Roese [Tue, 27 Oct 2009 10:20:53 +0000 (11:20 +0100)]
ppc4xx: sc3: Remove unreferenced external declarations from sc3.h

Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Heiko Schocher <hs@denx.de>
15 years agomkconfig: Create board directory (CONFIG_BOARDDIR) in include/config.h
Stefan Roese [Tue, 27 Oct 2009 10:46:23 +0000 (11:46 +0100)]
mkconfig: Create board directory (CONFIG_BOARDDIR) in include/config.h

This patch extends the mkconfig script to automatically create a define
for the board directory in include/config.h:

#define CONFIG_BOARDDIR board/amcc/canyonlands

This is needed for the upcoming PPC4xx linker script consolidation,
where the PPC440 platforms need to include a board specific file in
the common linker script.

Signed-off-by: Stefan Roese <sr@denx.de>
15 years agoppc/85xx: Fix misc L2 cache enabling bug
Dave Liu [Fri, 30 Oct 2009 23:59:55 +0000 (07:59 +0800)]
ppc/85xx: Fix misc L2 cache enabling bug

We need loop-check the flash clear lock and enable bit for L2 cache.

Signed-off-by: Dave Liu <daveliu@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
15 years agompc52xx: add support for the IPEK01 board
Wolfgang Grandegger [Fri, 23 Oct 2009 10:03:16 +0000 (12:03 +0200)]
mpc52xx: add support for the IPEK01 board

This patch adds support for the board IPEK01 based on the MPC5200.
The Futjitsu Lime graphics controller is configured in 16 bpp mode.

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
15 years agoMerge branch 'next' of git://git.denx.de/u-boot-video into next
Wolfgang Denk [Sat, 31 Oct 2009 15:13:18 +0000 (16:13 +0100)]
Merge branch 'next' of git://git.denx.de/u-boot-video into next

15 years agoMerge branch 'master' of /home/wd/git/u-boot/custodians
Wolfgang Denk [Sat, 31 Oct 2009 15:03:08 +0000 (16:03 +0100)]
Merge branch 'master' of /home/wd/git/u-boot/custodians

15 years agovideo: mb862xx: add option VIDEO_FB_16BPP_WORD_SWAP for IPEK01
Wolfgang Grandegger [Fri, 23 Oct 2009 10:03:15 +0000 (12:03 +0200)]
video: mb862xx: add option VIDEO_FB_16BPP_WORD_SWAP for IPEK01

In 16 bpp mode, the new IPEK01 board only requires swapping of D16 words
for D32 accesses due to the diffferent connecting to the GDC bus. This
patch introduces the configuration option VIDEO_FB_16BPP_WORD_SWAP,
which should be set for all board using the mb862xx in 16 bpp mode. For
the IPEK01, VIDEO_FB_16BPP_PIXEL_SWAP should not be set.

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
15 years agovideo: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for 32bpp mode
Anatolij Gustschin [Fri, 23 Oct 2009 10:03:14 +0000 (12:03 +0200)]
video: mb862xx: add option CONFIG_VIDEO_MB862xx_ACCEL for 32bpp mode

The new IPEK01 board can use the 32 bpp mode for the Lime graphics
controller. For this mode, video accelaration does not work. This patch
makes the accelaration configurable via CONFIG_VIDEO_MB862xx_ACCEL,
which is enabled for the lwmon5 and the socrates board for backward
compatibility.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
Signed-off-by: Wolfgang Grandegger <wg@denx.de>
15 years agovideo: mb862xx: improve board-specific Lime configuration
Wolfgang Grandegger [Fri, 23 Oct 2009 10:03:13 +0000 (12:03 +0200)]
video: mb862xx: improve board-specific Lime configuration

To avoid board-specific code accessing the mb862xx registers directly,
the public function mb862xx_probe() has been introduced. Furthermore,
the "Change of Clock Frequency" and "Set Memory I/F Mode" registers
are now defined by CONFIG_SYS_MB862xx_CCF and CONFIG_SYS_MB862xx__MMR,
respectively. The BSPs for the socrates and lwmon5 boards have been
adapted accordingly.

Signed-off-by: Wolfgang Grandegger <wg@denx.de>
15 years agonew PCA9564 i2c bridge driver
Valentin Yakovenkov [Mon, 26 Oct 2009 22:49:06 +0000 (18:49 -0400)]
new PCA9564 i2c bridge driver

Signed-off-by: Valentin Yakovenkov <yakovenkov@niistt.ru>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
15 years agoBlackfin: TWI/I2C: implement bus speed get/set functions
Mike Frysinger [Wed, 14 Oct 2009 23:27:27 +0000 (19:27 -0400)]
Blackfin: TWI/I2C: implement bus speed get/set functions

While we're here, improve the speed calculation a bit to match the HRM.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
15 years agoBlackfin: TWI/I2C: add timeout to transfer
Mike Frysinger [Wed, 14 Oct 2009 23:27:26 +0000 (19:27 -0400)]
Blackfin: TWI/I2C: add timeout to transfer

The current transfer code relies on ctrlc() to abort transfers, but this
requires user interactivity.  Naturalize the process with a timeout.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
15 years agosh: Update lowlevel_init.S of espt-giga
Nobuhiro Iwamatsu [Fri, 30 Oct 2009 01:16:27 +0000 (10:16 +0900)]
sh: Update lowlevel_init.S of espt-giga

There was the point that did not use write macro.
Change to write macro.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
15 years agosh: Move some defs to convince 'pcrel too far'
Nobuhiro Iwamatsu [Fri, 30 Oct 2009 01:01:25 +0000 (10:01 +0900)]
sh: Move some defs to convince 'pcrel too far'

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
Signed-off-by: Takashi Yoshii <yoshii.takashi@gmail.com>
15 years agosh: Remove malloc_bin_reloc from lib_sh, lib_nios2 and lib_nios.
Nobuhiro Iwamatsu [Thu, 15 Oct 2009 04:36:34 +0000 (13:36 +0900)]
sh: Remove malloc_bin_reloc from lib_sh, lib_nios2 and lib_nios.

By "arm/microblaze/nios/nios2/sh: Remove relocation fixups"
(commit: 0630535e2d062dd73c1ceca5c6125c86d1127a49", doesn't need
malloc_bin_reloc function. This commit remove this.

Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
15 years agoFix DM9000 MAC address handling
Ben Warren [Thu, 22 Oct 2009 04:53:39 +0000 (21:53 -0700)]
Fix DM9000 MAC address handling

Proper behavior is to pull MAC address from NVRAM in the initialization() an
stuff it in dev->address, then program the device from dev->address in
the init() function.

Signed-off-by: Ben Warren <biggerbadderben@gmail.com>
15 years agosbc8349: fix incorrect comment
Wolfgang Denk [Wed, 28 Oct 2009 21:07:56 +0000 (22:07 +0100)]
sbc8349: fix incorrect comment

The comment for the BR0_PRELIM port size initialization incorrectly
stated 32 bit, while it's actually 16 bit. The code is correct.

Reported-by: Guenter Koellner <guenter.koellner@nsn.com>
Signed-off-by: Wolfgang Denk <wd@denx.de>
15 years agoMerge branch 'master' of git://git.denx.de/u-boot-cfi-flash
Wolfgang Denk [Wed, 28 Oct 2009 20:50:09 +0000 (21:50 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-cfi-flash

15 years agoMerge branch 'master' of git://git.denx.de/u-boot-sparc
Wolfgang Denk [Wed, 28 Oct 2009 20:48:40 +0000 (21:48 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-sparc

15 years agoFix Compliation warning for TNY-A9260 and TNY-A9G20
Sandeep Paulraj [Wed, 28 Oct 2009 15:05:03 +0000 (11:05 -0400)]
Fix Compliation warning for TNY-A9260 and TNY-A9G20

The patch fixes a compilation warning by defining
CONFIG_SYS_64BIT_VSPRINTF in the config file

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agoFix Compliation warning for SBC35-A9G20 board
Sandeep Paulraj [Wed, 28 Oct 2009 15:04:53 +0000 (11:04 -0400)]
Fix Compliation warning for SBC35-A9G20 board

The patch fixes a compilation warning by defining
CONFIG_SYS_64BIT_VSPRINTF in the config file

Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
15 years agogalaxy5200: Add default environment variables
Eric Millbrandt [Wed, 28 Oct 2009 14:37:33 +0000 (09:37 -0500)]
galaxy5200: Add default environment variables

Extend bootdelay to 10 seconds.  Set boot retry time to 120 seconds and use
reset to retry.  Define default bootcommand and bootargs for production.

Signed-off-by: Eric Millbrandt <emillbrandt@dekaresearch.com>
15 years agocfi: Add weak default function for flash_cmd_reset()
Stefan Roese [Tue, 27 Oct 2009 14:15:55 +0000 (15:15 +0100)]
cfi: Add weak default function for flash_cmd_reset()

Currently the CFI driver issues both AMD and Intel reset commands.
This is because the driver doesn't know yet which chips are connected.
This dual reset seems to cause problems with the M29W128G chips as
reported by Richard Retanubun. This patch now introduces a weak default
function for the CFI reset command, still with both resets. This can
be overridden by a board specific version if necessary.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Richard Retanubun <RichardRetanubun@ruggedcom.com>
15 years agoCoding Style cleanup; update CHANGELOG, prepare -rc1 v2009.11-rc1
Wolfgang Denk [Tue, 27 Oct 2009 23:49:47 +0000 (00:49 +0100)]
Coding Style cleanup; update CHANGELOG, prepare -rc1

Signed-off-by: Wolfgang Denk <wd@denx.de>
15 years agoAdd 'editenv' command
Peter Tyser [Sun, 25 Oct 2009 20:12:56 +0000 (15:12 -0500)]
Add 'editenv' command

The editenv command can be used to edit an environment variable.
Editing an environment variable is useful when one wants to tweak an
existing variable, for example fix a typo or change the baudrate in the
'bootargs' environment variable.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agosetenv(): Delete 0-length environment variables
Peter Tyser [Sun, 25 Oct 2009 20:12:55 +0000 (15:12 -0500)]
setenv(): Delete 0-length environment variables

Previously setenv() would only delete an environment variable if it
was passed a NULL string pointer as a value.  It should also delete an
environment variable when it encounters a valid string pointer of
0-length.

This change/fix is generally useful and is necessary for the upcoming
"editenv" command.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agoreadline(): Add ability to modify a string buffer
Peter Tyser [Sun, 25 Oct 2009 20:12:54 +0000 (15:12 -0500)]
readline(): Add ability to modify a string buffer

If the 'buf' parameter is a non-0-length string, its contents will be
edited.  Previously, the initial contents of 'buf' were ignored and the
user entered its contents from scratch.

This change is necessary to support the upcoming "editenv" command but
could also be used for future commands which require a user to modify
an existing string.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agocread_line(): Remove unused variables
Peter Tyser [Sun, 25 Oct 2009 20:12:53 +0000 (15:12 -0500)]
cread_line(): Remove unused variables

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agoCheck for NULL prompt in readline_into_buffer()
Peter Tyser [Sun, 25 Oct 2009 20:12:52 +0000 (15:12 -0500)]
Check for NULL prompt in readline_into_buffer()

Previously, passing readline() or readline_into_buffer() a NULL 'prompt'
parameter would result in puts() printing garbage when
CONFIG_CMDLINE_EDITING was enabled.

Note that no board currently triggers this bug.  Enabling
CONFIG_CMDLINE_EDITING on some boards (eg bab7xx) would result in
the bug appearing.  This change is only intended to prevent someone
from running into this issue in the future.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
15 years agodrivers/net/phy/miiphybb.c: fix warning: no newline at end of file
Wolfgang Denk [Sun, 25 Oct 2009 22:00:09 +0000 (23:00 +0100)]
drivers/net/phy/miiphybb.c: fix warning: no newline at end of file

Add missing newline.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Cc: Luigi Mantellini <luigi.mantellini@idf-hit.com>
Cc: Ben Warren <biggerbadderben@gmail.com>
15 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc85xx
Wolfgang Denk [Tue, 27 Oct 2009 19:56:31 +0000 (20:56 +0100)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc85xx

15 years agoRevert "env: only build env_embedded and envcrc when needed"
Wolfgang Denk [Mon, 26 Oct 2009 23:03:32 +0000 (00:03 +0100)]
Revert "env: only build env_embedded and envcrc when needed"

Breaks building on many boards, and no really clean fix available yet.

This reverts commit 6dab6add2d8ee80905234b326abc3de11be1d178.

15 years agompc85xx: Configure QE USB for MPC8569E-MDS boards
Anton Vorontsov [Thu, 15 Oct 2009 13:47:16 +0000 (17:47 +0400)]
mpc85xx: Configure QE USB for MPC8569E-MDS boards

Setup QE pin multiplexing for USB function, configure needed BCSRs
and add some fdt fixups.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>