project/bcm63xx/u-boot.git
12 years agodfu:usb:fix: Read the "filesize" environment variable only when file read
Łukasz Majewski [Thu, 23 Aug 2012 23:33:56 +0000 (23:33 +0000)]
dfu:usb:fix: Read the "filesize" environment variable only when file read

The "filesize" environment variable shall be read only when relevant
file is read.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agodfu:usb: Support for ext4
Łukasz Majewski [Thu, 23 Aug 2012 23:33:55 +0000 (23:33 +0000)]
dfu:usb: Support for ext4

Support for ext4 file system handling at DFU.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agoMerge branch 'ext4'
Tom Rini [Thu, 20 Sep 2012 18:27:35 +0000 (11:27 -0700)]
Merge branch 'ext4'

Update Makefile change for LIBS -> LIBS-y change.

Conflicts:
Makefile

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoext4: cache-align buffers so the invalidation works
Stephen Warren [Tue, 18 Sep 2012 08:05:28 +0000 (08:05 +0000)]
ext4: cache-align buffers so the invalidation works

DMA buffer cache invalidation requires that buffers have cache-aligned
buffer locations and sizes. Use memalign() and ALLOC_CACHE_ALIGN_BUFFER()
to ensure this.

On Tegra at least, without this fix, the following fail commands fail in
u-boot-master/ext4, but succeeded at the branch's branch point in
u-boot/master. With this fix, the commands work again:

ext2ls mmc 0:1 /
ext2load mmc 0:1 /boot/zImage

Cc: Uma Shankar <uma.shankar@samsung.com>
Cc: Manjunatha C Achar <a.manjunatha@samsung.com>
Cc: Iqbal Shareef <iqbal.ams@samsung.com>
Cc: Hakgoo Lee <goodguy.lee@samsung.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Tom Rini <trini@ti.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
12 years agoFlex bus definition update for Coldfire 5253.
Jason Jin [Thu, 20 Sep 2012 06:17:46 +0000 (14:17 +0800)]
Flex bus definition update for Coldfire 5253.

originally work by Jate Sujjavanich <jsujjavanich@syntech-fuelmaster.com>
----
The defines in arch/m68k/include/coldfire/flexbus.h are not compatible with
the 5235 processor. The registers in struct fbcs are different sizes from
those in the 5235. Also, the defines are a little different.

This is what I have so far. Comments?
----

Reformat the patch manually by Jason Jin

Signed-off-by: Jate Sujjavanich <jsujjavanich@syntech-fuelmaster.com>
Signed-off-by: Jason Jin <Jason.jin@freescale.com>
12 years agoColdFire: Queued SPI driver
Richard Retanubun [Thu, 24 Mar 2011 08:58:11 +0000 (08:58 +0000)]
ColdFire: Queued SPI driver

This patch adds a driver for Freescale Colfire Queued SPI bus.
Coded to work with 8 bits per transfer to use with SPI flash.
CPOL, CPHA, and CS_ACTIVE_HIGH can be configured.

Tested with MCF5270 which have 4 chip selects.

Activate by #define CONFIG_CF_QSPI in board config.

Signed-off-by: Richard Retanubun <richardretanubun@ruggedcom.com>
12 years agoColdFire: Clean up checkpatch warnings for MCF54451 and MCF54455
Alison Wang [Mon, 26 Mar 2012 21:49:08 +0000 (21:49 +0000)]
ColdFire: Clean up checkpatch warnings for MCF54451 and MCF54455

Signed-off-by: Alison Wang <b18965@freescale.com>
12 years agoColdFire: Clean up checkpatch warnings for MCF547x and MCF548x
Alison Wang [Mon, 26 Mar 2012 21:49:07 +0000 (21:49 +0000)]
ColdFire: Clean up checkpatch warnings for MCF547x and MCF548x

Signed-off-by: Alison Wang <b18965@freescale.com>
12 years agoColdFire: Clean up checkpatch warnings for MCF523x
Alison Wang [Mon, 26 Mar 2012 21:49:06 +0000 (21:49 +0000)]
ColdFire: Clean up checkpatch warnings for MCF523x

Signed-off-by: Alison Wang <b18965@freescale.com>
12 years agoColdFire: Clean up checkpatch warnings for MCF532x/MCF537x/MCF5301x
Alison Wang [Mon, 26 Mar 2012 21:49:05 +0000 (21:49 +0000)]
ColdFire: Clean up checkpatch warnings for MCF532x/MCF537x/MCF5301x

Signed-off-by: Alison Wang <b18965@freescale.com>
12 years agoColdFire: Clean up checkpatch warnings for MCF52x2
Alison Wang [Mon, 26 Mar 2012 21:49:04 +0000 (21:49 +0000)]
ColdFire: Clean up checkpatch warnings for MCF52x2

Signed-off-by: Alison Wang <b18965@freescale.com>
12 years agoColdFire: Clean up checkpatch warnings for MCF5227x
Alison Wang [Mon, 26 Mar 2012 21:49:03 +0000 (21:49 +0000)]
ColdFire: Clean up checkpatch warnings for MCF5227x

Signed-off-by: Alison Wang <b18965@freescale.com>
12 years agoColdFire: Add clear and set bits macros for ColdFire platform
Alison Wang [Mon, 26 Mar 2012 21:49:02 +0000 (21:49 +0000)]
ColdFire: Add clear and set bits macros for ColdFire platform

Signed-off-by: Alison Wang <b18965@freescale.com>
12 years agoColdFire: Update the bitops for ColdFire platform
Alison Wang [Sun, 25 Mar 2012 19:18:49 +0000 (19:18 +0000)]
ColdFire: Update the bitops for ColdFire platform

This patch uses the general ffs definition to replace the
platform ffs definition.

This patch also fixes the build error by adding hweightN
definition for m5329evb and m5373evb.

Signed-off-by: Jason Jin <Jason.jin@freescale.com>
Signed-off-by: Alison Wang <b18965@freescale.com>
12 years agoColdFire: Rename NANDFLASH_SIZE into CONFIG_NANDFLASH_SIZE for MCF537x
Alison Wang [Sun, 25 Mar 2012 19:18:14 +0000 (19:18 +0000)]
ColdFire: Rename NANDFLASH_SIZE into CONFIG_NANDFLASH_SIZE for MCF537x

This patch fixes the build error for MCF537x. As the NANDFLASH_SIZE is
redefined in boards.cfg, it is needed to rename NANDFLASH_SIZE into
CONFIG_NANDFLASH_SIZE in include/configs/M5373EVB.h.

Signed-off-by: Alison Wang <b18965@freescale.com>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-mpc83xx
Tom Rini [Tue, 18 Sep 2012 21:56:31 +0000 (14:56 -0700)]
Merge branch 'master' of git://git.denx.de/u-boot-mpc83xx

12 years agompc8308rdb: add support for eSDHC MMC controller
Ira W. Snyder [Wed, 12 Sep 2012 21:17:35 +0000 (14:17 -0700)]
mpc8308rdb: add support for eSDHC MMC controller

Add support for the onboard eSDHC MMC controller. The hardware on the
MPC8308RDB has the following errata:

- ESDHC111: manual asynchronous CMD12 is broken
- DMA is broken (PIO works)

Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
[added include fsl_esdhc header to prevent implicit declarations of
fsl_esdhc_mmc_init() and fdt_fixup_esdhc()]

Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
12 years agompc8308rdb: add support for FIT images
Ira W. Snyder [Wed, 12 Sep 2012 21:17:34 +0000 (14:17 -0700)]
mpc8308rdb: add support for FIT images

This is very useful on a modern system.

Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
12 years agompc8308rdb: add support for Spansion SPI flash on header J8
Ira W. Snyder [Wed, 12 Sep 2012 21:17:32 +0000 (14:17 -0700)]
mpc8308rdb: add support for Spansion SPI flash on header J8

The SPI pins are routed to header J8 for testing SPI functionality. A
Spansion flash has been wired up and tested on this header.

This patch breaks support for the second TSEC interface, since the GPIO
pin used as a chip select is pinmuxed with some of the TSEC pins.

Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
12 years agompc8xxx_spi: fix SPI support on MPC8308RDB
Ira W. Snyder [Wed, 12 Sep 2012 21:17:31 +0000 (14:17 -0700)]
mpc8xxx_spi: fix SPI support on MPC8308RDB

The MPC8308RDB Reference Manual states that no bits in the SPMODE
register are allowed to change while the enable (EN) bit is set.

This driver changes the character length bits (LEN) while the enable
(EN) bit is set. Clearing the EN bit while changing the LEN bits makes
the driver work correctly on MPC8308RDB.

Signed-off-by: Ira W. Snyder <iws@ovro.caltech.edu>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
12 years agoFAT: Fix file contents listed as directory
Benoît Thébaudeau [Fri, 20 Jul 2012 03:20:29 +0000 (03:20 +0000)]
FAT: Fix file contents listed as directory

With:
fatls mmc 0 /dir/file
dir: regular directory
file: regular file

The previous code read the contents of file as if it were directory entries to
list. This patch refuses to list file contents as if it were a folder.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoenv: delete selected vars not present in imported env
Gerlando Falauto [Sun, 26 Aug 2012 21:53:00 +0000 (21:53 +0000)]
env: delete selected vars not present in imported env

When variables explicitly specified on the command line are not present
in the imported env, delete them from the running env.
If the variable is also missing from the running env, issue a warning.

Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agoenv: make "env default" selective, check and apply
Gerlando Falauto [Fri, 24 Aug 2012 00:11:41 +0000 (00:11 +0000)]
env: make "env default" selective, check and apply

Change the syntax (user API) for "env default":
  -f: override write-once variables
  var... : accept individual variable(s)
  -a: all (resetting the whole env is NOT the default behavior)

Enable variable checking and make changes effective by
enabling do_apply argument to himport_r().

Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com>
12 years agoenv: check and apply changes on delete/destroy
Gerlando Falauto [Fri, 24 Aug 2012 00:11:40 +0000 (00:11 +0000)]
env: check and apply changes on delete/destroy

Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agoenv: add check/apply logic to himport_r()
Gerlando Falauto [Fri, 24 Aug 2012 00:11:39 +0000 (00:11 +0000)]
env: add check/apply logic to himport_r()

Change hashtable so that a callback function will decide whether a
variable can be overwritten, and possibly apply the changes.

So add a new field to struct hsearch_data:

 o "apply" callback function to check whether a variable can be
    overwritten, and possibly immediately apply the changes;
    when NULL, no check is performed.

And a new argument to himport_r():
 o "do_apply": whether to call the apply callback function

NOTE: This patch does not change the current behavior.

Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agoenv: make himport_r() selective on variables
Gerlando Falauto [Fri, 24 Aug 2012 00:11:38 +0000 (00:11 +0000)]
env: make himport_r() selective on variables

Add 2 new arguments to himport_r():

 o "nvars", "vars": number and list of variables to take into account
   (0 means ALL)

NOTE: This patch does not change the current behaviour.

Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agoenv: unify logic to check and apply changes
Gerlando Falauto [Fri, 24 Aug 2012 00:11:37 +0000 (00:11 +0000)]
env: unify logic to check and apply changes

The logic of checking special parameters (e.g. baudrate, stdin, stdout,
for a valid value and/or whether can be overwritten) and applying the
new value to the running system is now all within a single function
env_check_apply() which can be called whenever changes are made
to the environment, no matter if by set, default or import.

With this patch env_check_apply() is only called by "env set",
retaining previous behavior.

Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agoenv: cosmetic: drop assignment i = iomux_doenv()
Gerlando Falauto [Fri, 24 Aug 2012 00:11:36 +0000 (00:11 +0000)]
env: cosmetic: drop assignment i = iomux_doenv()

iomux_doenv() can only return 0 or 1.
So there is no need to save its return value in variable i, as checking
its truth value within an if statement is enough.

Signed-off-by: Gerlando Falauto <gerlando.falauto@keymile.com>
Reviewed-by: Marek Vasut <marex@denx.de>
12 years agofw_env: Add env vars describing U-Boot target board
Benoît Thébaudeau [Fri, 10 Aug 2012 07:45:15 +0000 (07:45 +0000)]
fw_env: Add env vars describing U-Boot target board

Commit 5e724ca did the same thing for env_common and env_embedded, but forgot
fw_env.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoenv_common: Add missing ethprime
Benoît Thébaudeau [Fri, 10 Aug 2012 07:45:31 +0000 (07:45 +0000)]
env_common: Add missing ethprime

The ethprime env var was missing from env_common.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Wolfgang Denk <wd@denx.de>
12 years agoenv import/export: Remove from help if disabled
Benoît Thébaudeau [Fri, 10 Aug 2012 07:45:44 +0000 (07:45 +0000)]
env import/export: Remove from help if disabled

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Wolfgang Denk <wd@denx.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
12 years agomemsize: Fix for bug in memory sizing code
Iwo Mergler [Sun, 9 Sep 2012 20:16:58 +0000 (20:16 +0000)]
memsize: Fix for bug in memory sizing code

The original memory sizing code in get_ram_size clobbers the word
at the base address, but forgets to restore it.

Signed-off-by: Iwo Mergler <Iwo.Mergler@netcommwireless.com>
12 years agoenv_nand: fix incorrect size parameter to ALLOC_CACHE_ALIGN_BUFFER
Stephen Warren [Fri, 7 Sep 2012 09:15:33 +0000 (09:15 +0000)]
env_nand: fix incorrect size parameter to ALLOC_CACHE_ALIGN_BUFFER

The third parameter to ALLOC_CACHE_ALIGN_BUFFER is not size (as named),
but rather count (number of elements of the type to allocate). The
current code ends up allocating one copy of env_t for each byte in its
size, which quite possibly ends up overflowing RAM.

This fixes a bug in commit 3801a15 "env_nand: align NAND buffers".

Reported-by: Prabhakar Lad <prabhakar.csengg@gmail.com>
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Reported-by: Prabhakar Lad <prabhakar.lad@ti.com>
12 years agoARM: Remove apollon board
Marek Vasut [Wed, 5 Sep 2012 17:16:55 +0000 (17:16 +0000)]
ARM: Remove apollon board

This board is the only board that still sticks to OneNAND IPL.
Remove this board, since we have SPL around for a while and
OneNAND is well supported in the SPL framework. The board can
be revived if necessary.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Tom Rini <trini@ti.com>
12 years agoIPL: Remove remains of OneNAND IPL
Marek Vasut [Wed, 5 Sep 2012 17:09:08 +0000 (17:09 +0000)]
IPL: Remove remains of OneNAND IPL

After removing the Apollon board, remove the OneNAND IPL too.
There are no users for it any more.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Albert Aribaud <albert.u.boot@aribaud.net>
Cc: Minkyu Kang <promsoft@gmail.com>
Cc: Tom Rini <trini@ti.com>
Acked-by: Minkyu Kang <mk7.kang@samsung.com>
12 years agospl: remove forced linking of commands into SPL
Tyler Olmstead [Wed, 8 Aug 2012 16:24:13 +0000 (16:24 +0000)]
spl: remove forced linking of commands into SPL

Remove linker command line options from the SPL makefile
that force the inclusion of unreferenced command code from
linked object files. As commands are not used in the SPL,
these options resulted in an unnecessary increase in the
image size, in addition to introducing the possibility of
tricky link errors in the case where the command code
contained symbols that were not resolved by linking in the
limited objects compiled in the SPL build.

Signed-off-by: Tyler Olmstead <tyler.j.olmstead@gmail.com>
Acked-by: Tom Rini <trini@ti.com>
12 years agodm: sparc: Fixup the compile warnings in sparc code
Marek Vasut [Fri, 27 Jul 2012 08:04:34 +0000 (08:04 +0000)]
dm: sparc: Fixup the compile warnings in sparc code

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Daniel Hellstrom <daniel@gaisler.com>
Cc: u-boot-dm@lists.denx.de
12 years agodm: sparc: common: Fixup cmd_bdinfo warnings
Marek Vasut [Fri, 27 Jul 2012 08:04:33 +0000 (08:04 +0000)]
dm: sparc: common: Fixup cmd_bdinfo warnings

cmd_bdinfo.c: In function ‘do_bdinfo’:
cmd_bdinfo.c:220:9: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘int’ [-Wformat]
cmd_bdinfo.c:222:9: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘int’ [-Wformat]
cmd_bdinfo.c:224:9: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘int’ [-Wformat]
cmd_bdinfo.c:226:9: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘int’ [-Wformat]
cmd_bdinfo.c:228:9: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘int’ [-Wformat]

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Daniel Hellstrom <daniel@gaisler.com>
Cc: u-boot-dm@lists.denx.de
12 years agodm: sparc: net: Fixup greth compile warnings
Marek Vasut [Fri, 27 Jul 2012 08:04:32 +0000 (08:04 +0000)]
dm: sparc: net: Fixup greth compile warnings

greth.c: In function ‘greth_recv’:
greth.c:507:3: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘unsigned int’ [-Wformat]
greth.c:507:3: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘unsigned int’ [-Wformat]
greth.c:541:6: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
greth.c: In function ‘greth_initialize’:
greth.c:623:2: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 2 has type ‘struct greth_regs *’ [-Wformat]
greth.c:655:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 2 has type ‘struct greth_regs *’ [-Wformat]
greth.c:684:2: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 2 has type ‘struct greth_regs *’ [-Wformat]

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Daniel Hellstrom <daniel@gaisler.com>
Cc: u-boot-dm@lists.denx.de
12 years agomxc nand: Fix warning on !MXC_NFC_V2_1
Tom Rini [Tue, 18 Sep 2012 16:24:22 +0000 (09:24 -0700)]
mxc nand: Fix warning on !MXC_NFC_V2_1

In board_nand_init() we only need the 'tmp' variable if MXC_NFC_V2_1 is
defined.

Signed-off-by: Tom Rini <trini@ti.com>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-nand-flash
Tom Rini [Tue, 18 Sep 2012 14:55:07 +0000 (07:55 -0700)]
Merge branch 'master' of git://git.denx.de/u-boot-nand-flash

12 years agomxc nand: Homogenize IP revisions with Linux
Benoît Thébaudeau [Mon, 13 Aug 2012 20:50:53 +0000 (22:50 +0200)]
mxc nand: Homogenize IP revisions with Linux

Use the same IP revisions as in Linux in order to make the comparison more
clear.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomxc nand: Let driver detect IP revision
Benoît Thébaudeau [Mon, 13 Aug 2012 20:50:42 +0000 (22:50 +0200)]
mxc nand: Let driver detect IP revision

There is no reason to have board configs to select the NFC IP revision. Just let
the driver detect it. BTW, remove broken NFC IP revision configs from board
config files.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomtd mxc nand: Merge init functions
Benoît Thébaudeau [Mon, 13 Aug 2012 20:50:30 +0000 (22:50 +0200)]
mtd mxc nand: Merge init functions

Merge mxc_setup_config1() into board_nand_init() in order to ease the addition
of i.MX5 support in the following patches.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomtd mxc nand: Fix ECC state after read_page_raw_syndrome()
Benoît Thébaudeau [Mon, 13 Aug 2012 20:50:19 +0000 (22:50 +0200)]
mtd mxc nand: Fix ECC state after read_page_raw_syndrome()

mxc_nand_read_page_raw_syndrome() should reenable ECC upon exit. This fixes ECC
errors left uncorrected after a call to this function.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomtd mxc nand: Use _mxc_nand_enable_hwecc()
Benoît Thébaudeau [Mon, 13 Aug 2012 20:50:07 +0000 (22:50 +0200)]
mtd mxc nand: Use _mxc_nand_enable_hwecc()

Use _mxc_nand_enable_hwecc() instead of duplicating its code.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agospl mxc nand: Fix broken boot for correctable ECC errors
Benoît Thébaudeau [Mon, 13 Aug 2012 20:49:53 +0000 (22:49 +0200)]
spl mxc nand: Fix broken boot for correctable ECC errors

Do not stop boot as soon as an ECC error is detected. Only stop boot for
uncorrectable ECC errors.

This fixes boards no longer booting after some time because a NAND Flash bit has
flipped.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomxc nand: Access all ecc_status_result fields
Benoît Thébaudeau [Mon, 13 Aug 2012 20:49:42 +0000 (22:49 +0200)]
mxc nand: Access all ecc_status_result fields

On the NFC IP 1.1, the 32-bit ecc_status_result value comes from 2
consecutive 16-bit registers. This patch reads all the fields of this value,
which makes a difference for 4-kiB NF pages.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agospl mxc nand: Set symmetric mode
Benoît Thébaudeau [Mon, 13 Aug 2012 20:49:31 +0000 (22:49 +0200)]
spl mxc nand: Set symmetric mode

Set the spl mxc nand driver for IP 1.1 in symmetric mode, like the mtd driver.
In this way, for both drivers, one input clock period of the NFC IP will produce
one R/W cycle.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agospl mxc nand: Remove duplicated code
Benoît Thébaudeau [Mon, 13 Aug 2012 20:49:15 +0000 (22:49 +0200)]
spl mxc nand: Remove duplicated code

The ECC_EN and INT_MSK bits of CONFIG1 are not volatile, so it is sufficient to
set them once in nfc_nand_init().

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agospl mxc nand: Merge duplicated code
Benoît Thébaudeau [Mon, 13 Aug 2012 20:48:56 +0000 (22:48 +0200)]
spl mxc nand: Merge duplicated code

Merge duplicated code into functions, which is better for SPL size too.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomxc nand: cosmectic: Light cleanup
Benoît Thébaudeau [Mon, 13 Aug 2012 20:48:26 +0000 (22:48 +0200)]
mxc nand: cosmectic: Light cleanup

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomxc nand: Merge mtd and spl register definitions
Benoît Thébaudeau [Mon, 13 Aug 2012 20:48:12 +0000 (22:48 +0200)]
mxc nand: Merge mtd and spl register definitions

This patches fixes the TODO to use same register definitions in mtd mxc_nand and
nand_spl fsl nfc drivers.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomtd: nand: allow NAND_NO_SUBPAGE_WRITE to be set from driver
Marek Vasut [Thu, 30 Aug 2012 13:39:38 +0000 (13:39 +0000)]
mtd: nand: allow NAND_NO_SUBPAGE_WRITE to be set from driver

This is based on Linux kernel -next:

commit 14f44abf1dafc20ba42ce8616a8fc8fbd1b3712b
Author: Brian Norris <computersforpeace@gmail.com>
Date:   Fri Jul 13 09:28:24 2012 -0700

    mtd: nand: allow NAND_NO_SUBPAGE_WRITE to be set from driver

    The NAND_CHIPOPTIONS_MSK has limited utility and is causing real bugs. It
    silently masks off at least one flag that might be set by the driver
    (NAND_NO_SUBPAGE_WRITE). This breaks the GPMI NAND driver and possibly
    others.

    Really, as long as driver writers exercise a small amount of care with
    NAND_* options, this mask is not necessary at all; it was only here to
    prevent certain options from accidentally being set by the driver. But the
    original thought turns out to be a bad idea occasionally. Thus, kill it.

    Note, this patch fixes some major gpmi-nand breakage.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Brian Norris <computersforpeace@gmail.com>
Cc: Eric Nelson <eric.nelson@boundarydevices.com>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Otavio Salvador <otavio@ossystems.com.br>
Cc: Scott Wood <scottwood@freescale.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: Make NAND lock status compatible with Micron
Joe Hershberger [Wed, 22 Aug 2012 21:49:45 +0000 (16:49 -0500)]
nand: Make NAND lock status compatible with Micron

Micron NAND flash (e.g. MT29F4G08ABADAH4) BLOCK LOCK READ STATUS is not
the same as others.  Instead of bit 1 being lock, it is #lock_tight.
To make the driver support either format, ignore bit 1 and use only
bit 0 and bit 2.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: consolidate duplicated constants
Joe Hershberger [Wed, 22 Aug 2012 21:49:44 +0000 (16:49 -0500)]
nand: consolidate duplicated constants

NAND_CMD_ constants for lock/unlock should be in the header

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: Change ulong to loff_t and size_t
Joe Hershberger [Wed, 22 Aug 2012 21:49:43 +0000 (16:49 -0500)]
nand: Change ulong to loff_t and size_t

Missed in previous cleanup.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agonand: Add support for unlock.invert
Joe Hershberger [Wed, 22 Aug 2012 21:49:42 +0000 (16:49 -0500)]
nand: Add support for unlock.invert

NAND unlock command allows an invert bit to be set to unlock all but
the selected page range.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
[scottwood@freescale.com: updated docs and added comment about invert bit]
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agomtd: support ONFI multi lun NAND
Matthieu CASTET [Mon, 19 Mar 2012 14:35:25 +0000 (15:35 +0100)]
mtd: support ONFI multi lun NAND

With onfi a flash is organized into one or more logical units (LUNs).
A logical unit (LUN) is the minimum unit that can independently execute
commands and report status.

Mtd does not exploit LUN, so make it see a big single flash where size is
lun_size * number_of_lun.

Without this patch MT29F8G08ADBDAH4 size is 512MiB instead of 1GiB.

Artem: split long line on 2 shorter ones.

This is commit 637957551c0ac80de8dfc7650d320c5a98c2c0c0 from Linux

Signed-off-by: Matthieu Castet <matthieu.castet@parrot.com>
Acked-by: Florian Fainelli <ffainelli@freebox.fr>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
[scottwood@freescale.com: picked from Linux into U-Boot]
Reported-by: Rafael Beims <rafael.beims@gmail.com>
Signed-off-by: Scott Wood <scottwood@freescale.com>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-i2c
Tom Rini [Mon, 17 Sep 2012 18:39:03 +0000 (11:39 -0700)]
Merge branch 'master' of git://git.denx.de/u-boot-i2c

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-fdt
Tom Rini [Mon, 17 Sep 2012 18:34:08 +0000 (11:34 -0700)]
Merge branch 'master' of git://git.denx.de/u-boot-fdt

12 years agoi2c:soft:multi: Enable soft I2C multibus at Trats development board
Łukasz Majewski [Tue, 4 Sep 2012 23:15:21 +0000 (23:15 +0000)]
i2c:soft:multi: Enable soft I2C multibus at Trats development board

This commit enables multibus handling at Samsung's Trats development board.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Acked-by: Heiko Schocher <hs@denx.de>
12 years agoi2c:soft:multi: Support for multiple soft I2C buses at Samsung boards
Łukasz Majewski [Tue, 4 Sep 2012 23:15:20 +0000 (23:15 +0000)]
i2c:soft:multi: Support for multiple soft I2C buses at Samsung boards

Support for multiple soft I2C buses.

Multibus I2C support is achieved by defining get_multi_{sda|scl}_pin
functions to switch between multiple "soft" I2C buses.

Common definition of I2C_X I2C buses is provided at <i2c.h>.

TEST HW:
     Samsung's Exynos4210 evt.0.1 - Trats development board

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: Heiko Schocher <hs@denx.de>
Cc: Minkyu Kang <mk7.kang@samsung.com>
Acked-by: Heiko Schocher <hs@denx.de>
12 years agofdt: Check if the FDT address is configured
Marek Vasut [Wed, 5 Sep 2012 06:34:44 +0000 (08:34 +0200)]
fdt: Check if the FDT address is configured

In case the "fdt addr" command wasn't ran yet and any other "fdt"
subcommand was issued, the system crashed due to NULL pointer being
used.

This is caused by "fdt addr" command setting up a pointer to the
FDT memory location. Prior issuing "fdt addr", the pointer is NULL
so calling any other subcommands crashed the u-boot.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Simon Glass <sjg@chromium.org>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-mips
Tom Rini [Fri, 14 Sep 2012 14:15:48 +0000 (07:15 -0700)]
Merge branch 'master' of git://git.denx.de/u-boot-mips

12 years agoMerge branch 'master' of git://git.denx.de/u-boot-avr32
Tom Rini [Thu, 13 Sep 2012 17:34:24 +0000 (10:34 -0700)]
Merge branch 'master' of git://git.denx.de/u-boot-avr32

12 years agoavr32: add atngw100mkii board
Andreas Bießmann [Tue, 4 Sep 2012 11:33:29 +0000 (11:33 +0000)]
avr32: add atngw100mkii board

This patch is derived from an older patch provided by atmel in its
buildroot-avr32-v3.0.0.tar.bz2

Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
cc: Hans-Christian Egtvedt <egtvedt@samfundet.no>
Acked-by: Hans-Christian Egtvedt <egtvedt@samfundet.no>
12 years agoFix strict-aliasing warning in dlmalloc
Simon Glass [Tue, 4 Sep 2012 11:31:07 +0000 (11:31 +0000)]
Fix strict-aliasing warning in dlmalloc

This fixes the following warnings in dlmalloc seen with my gcc 4.6.

dlmalloc.c: In function 'malloc_bin_reloc':
dlmalloc.c:1493: warning: dereferencing pointer 'p' does break strict-aliasing rules
dlmalloc.c:1493: warning: dereferencing pointer 'p' does break strict-aliasing rules
dlmalloc.c:1490: note: initialized from here
dlmalloc.c:1493: note: initialized from here

This version is tested on avr32 arch boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
12 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-ubi
Tom Rini [Wed, 12 Sep 2012 17:26:48 +0000 (10:26 -0700)]
Merge branch 'master' of git://denx.de/git/u-boot-ubi

12 years agoMerge branch 'master' of git://www.denx.de/git/u-boot-mmc
Tom Rini [Wed, 12 Sep 2012 17:26:06 +0000 (10:26 -0700)]
Merge branch 'master' of git://denx.de/git/u-boot-mmc

12 years agomicroblaze: board: Use bi_flashstart instead of CONFIG_SYS_FLASH_BASE
Michal Simek [Tue, 10 Jul 2012 08:21:25 +0000 (10:21 +0200)]
microblaze: board: Use bi_flashstart instead of CONFIG_SYS_FLASH_BASE

Prepare for device-tree driven configuration.

Signed-off-by: Michal Simek <monstr@monstr.eu>
Acked-by: Stephan Linz <linz@li-pro.net>
12 years agomicroblaze: Clean microblaze initialization
Michal Simek [Wed, 4 Jul 2012 11:12:37 +0000 (13:12 +0200)]
microblaze: Clean microblaze initialization

Move board specific function to board_init function in board/ folder
Remove externs from generic board.c
Use board_init_f function in board.c file.

Signed-off-by: Michal Simek <monstr@monstr.eu>
Acked-by: Stephan Linz <linz@li-pro.net>
12 years agomicroblaze: timer: Prepare for device-tree initialization
Michal Simek [Fri, 29 Jun 2012 11:46:54 +0000 (13:46 +0200)]
microblaze: timer: Prepare for device-tree initialization

Fix CONFIG_SYS_HZ usage in board config.

Do not use hardcoded value. Use CONFIG_SYS_HZ instead.
Separate static configuration to single block.

Signed-off-by: Michal Simek <monstr@monstr.eu>
12 years agomicroblaze: intc: Coding style cleanup
Michal Simek [Fri, 29 Jun 2012 11:27:28 +0000 (13:27 +0200)]
microblaze: intc: Coding style cleanup

Just coding style cleanup.
Remove unneeded externs.

Signed-off-by: Michal Simek <monstr@monstr.eu>
Acked-by: Simon Glass <sjg@chromium.org>
Acked-by: Stephan Linz <linz@li-pro.net>
12 years agomicroblaze: intc: Registering interrupt should return value
Michal Simek [Fri, 29 Jun 2012 12:21:52 +0000 (14:21 +0200)]
microblaze: intc: Registering interrupt should return value

Return value to find out if un/registration was succesful.

Signed-off-by: Michal Simek <monstr@monstr.eu>
12 years agomicroblaze: board: Remove compilation warning
Michal Simek [Fri, 29 Jun 2012 08:29:46 +0000 (10:29 +0200)]
microblaze: board: Remove compilation warning

Variable is used when CONFIG_SYS_FLASH_CHECKSUM is used.

Warning log:
board.c: In function 'board_init':
board.c:101: warning: unused variable 's'

Signed-off-by: Michal Simek <monstr@monstr.eu>
Acked-by: Stephan Linz <linz@li-pro.net>
12 years agomicroblaze: Add support for device tree driven board configuration
Michal Simek [Thu, 28 Jun 2012 12:34:32 +0000 (14:34 +0200)]
microblaze: Add support for device tree driven board configuration

This is minimum code required to be able to use device-tree
for u-boot initialization.
Currently only for device driver initialization.

Linker script change ensures DTB to be aligned
for both options CONFIG_OF_EMBED and CONFIG_OF_SEPARATE.

Signed-off-by: Michal Simek <monstr@monstr.eu>
Acked-by: Stephan Linz <linz@li-pro.net>
CC: Simon Glass <sjg@chromium.org>
12 years agospi: xilinx: Remove unused variable
Stephan Linz [Tue, 7 Aug 2012 21:29:39 +0000 (23:29 +0200)]
spi: xilinx: Remove unused variable

Warning is:

xilinx_spi.c: In function 'spi_setup_slave':
xilinx_spi.c:81: warning: unused variable 'regs'

Signed-off-by: Stephan Linz <linz@li-pro.net>
CC: Michal Simek <monstr@monstr.eu>
12 years agoserial: uartlite: Init all uartlites for serial multi
Michal Simek [Mon, 2 Jul 2012 08:32:18 +0000 (10:32 +0200)]
serial: uartlite: Init all uartlites for serial multi

Initialize all possible uartlites and return the first
initialized port. For static configuration is initialization
done in userial_ports array.

Signed-off-by: Michal Simek <monstr@monstr.eu>
Acked-by: Stephan Linz <linz@li-pro.net>
12 years agoserial: Support serial multi for Microblaze
Michal Simek [Mon, 2 Jul 2012 10:38:14 +0000 (12:38 +0200)]
serial: Support serial multi for Microblaze

enable serial multi for Microblaze.

Signed-off-by: Michal Simek <monstr@monstr.eu>
Acked-by: Stephan Linz <linz@li-pro.net>
12 years agoblock: systemace: Simplify base and width initialization
Michal Simek [Wed, 4 Jul 2012 10:09:45 +0000 (12:09 +0200)]
block: systemace: Simplify base and width initialization

Use CONFIG parameters only at one location to simplify
the code. Also create ace_readw/writew functions.

Signed-off-by: Michal Simek <monstr@monstr.eu>
12 years agoubifs: Fix ubifsload when using ZLIB
Veli-Pekka Peltola [Wed, 5 Sep 2012 15:05:14 +0000 (18:05 +0300)]
ubifs: Fix ubifsload when using ZLIB

Using ZLIB compression with UBIFS fails if last data node is not a size of
UBIFS_BLOCK_SIZE (4096 bytes).

Easiest way to test this is trying to read a file smaller than 4k:
=> ubifsload 41000000 /etc/fstab
Loading file '/etc/fstab' to addr 0x41000000 with size 704 (0x000002c0)...
UBIFS error (pid 0): read_block: bad data node (block 0, inode 2506)
UBIFS error (pid 0): do_readpage: cannot read page 0 of inode 2506, error -22
Error reading file '/etc/fstab'
/etc/fstab not found!
exit not allowed from main input shell.
=>

With this patch:

=> ubifsload 41000000 /etc/fstab
Loading file '/etc/fstab' to addr 0x41000000 with size 704 (0x000002c0)...
Done
=>

Signed-off-by: Veli-Pekka Peltola <veli-pekka.peltola@bluegiga.com>
Cc: kmpark@infradead.org
Tested-by: Andreas Bießmann <andreas.devel@googlemail.com>
Signed-off-by: Stefan Roese <sr@denx.de>
12 years agommc: Remove incorrect cmd->flags usage
Andy Fleming [Thu, 6 Sep 2012 20:23:13 +0000 (15:23 -0500)]
mmc: Remove incorrect cmd->flags usage

There were a couple of drivers that were actually using the flags
field of the cmd structure, despite the fact that no one ever
*set* that field. When we removed the field, those drivers failed
to compile. Replaced the references with the correct usage of
resp_type.

Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agoomap4 i2c: add support for i2c bus 4
Koen Kooi [Wed, 8 Aug 2012 00:57:35 +0000 (00:57 +0000)]
omap4 i2c: add support for i2c bus 4

Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
12 years agommc: s5p_sdhci: add the set_mmc_clk for cmu control
Jaehoon Chung [Thu, 30 Aug 2012 16:24:11 +0000 (16:24 +0000)]
mmc: s5p_sdhci: add the set_mmc_clk for cmu control

Samsung SoC use the cmu control to set clock.

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommc: s5p_sdhci: fixed wrong function argument
Jaehoon Chung [Thu, 30 Aug 2012 16:24:10 +0000 (16:24 +0000)]
mmc: s5p_sdhci: fixed wrong function argument

Useless code is removed, and get buswidth value.
buswidth value will be used to choice the 4bit or 8bit.
(Now used 4bit mode in sdhci.c by default)

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Kyungmin Park <kyungin.park@samsung.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommc: s5p_sdhci: set the SDHCI_QUIRK_BROKEN_R1B
Jaehoon Chung [Thu, 30 Aug 2012 16:24:08 +0000 (16:24 +0000)]
mmc: s5p_sdhci: set the SDHCI_QUIRK_BROKEN_R1B

Samsung SoC is broken busy waiting for R1b type.
And clk delay control value is modified the previosuly value.
(that value used at the s5p_mmc.c)

Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommc: Add a SDHCI quirk for boards that have no CD
Joe Hershberger [Fri, 17 Aug 2012 10:18:55 +0000 (10:18 +0000)]
mmc: Add a SDHCI quirk for boards that have no CD

Some boards have no Card Detect wired.  In that case, set the CD test
bits in the standard interface.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommc: Fix version check for clock API in sdhci driver
Joe Hershberger [Fri, 17 Aug 2012 10:18:54 +0000 (10:18 +0000)]
mmc: Fix version check for clock API in sdhci driver

When setting up the clocks in the sdhci driver, the "spec version"
must be masked off.  Otherwise any time the vendor version is not 0,
the check will allways assume the interface is version 3.  This breaks
when the interface is actually version 1 or 2.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommcinfo: Fix help message
Benoît Thébaudeau [Fri, 10 Aug 2012 09:07:38 +0000 (09:07 +0000)]
mmcinfo: Fix help message

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Andy Fleming <afleming@gmail.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommc_get_dev: Return error if mmc_init fails
Benoît Thébaudeau [Fri, 10 Aug 2012 08:59:12 +0000 (08:59 +0000)]
mmc_get_dev: Return error if mmc_init fails

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Andy Fleming <afleming@gmail.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agotegra: put eMMC environment into the boot sectors
Stephen Warren [Mon, 30 Jul 2012 10:55:45 +0000 (10:55 +0000)]
tegra: put eMMC environment into the boot sectors

When I set up Tegra's config files to put the environment into eMMC, I
assumed that CONFIG_ENV_OFFSET was a linearized address relative to the
start of the eMMC device, and spanning HW partitions boot0, boot1,
general* and the user area in order. However, it turns out that the
offset is actually relative to the beginning of the user area. Hence,
the environment block ended up in a different location to expected and
documented.

Set CONFIG_SYS_MMC_ENV_PART=2 (boot1) to solve this, and adjust
CONFIG_ENV_OFFSET to be relative to the start of boot1, not the entire
eMMC.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agoenv_mmc: allow environment to be in an eMMC partition
Stephen Warren [Mon, 30 Jul 2012 10:55:44 +0000 (10:55 +0000)]
env_mmc: allow environment to be in an eMMC partition

eMMC devices may have hardware-level partitions: 2 boot partitions,
up to 4 general partitions, plus the user area. This change introduces
optional config variable CONFIG_SYS_MMC_ENV_PART to indicate which
partition the environment should be stored in: 0=user, 1=boot0, 2=boot1,
4..7=general0..3. This allows the environment to be kept out of the user
area, which simplifies the management of OS-/user-level (MBR/GPT)
partitions within the user area.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommc: detect boot sectors using EXT_CSD_BOOT_MULT too
Stephen Warren [Mon, 30 Jul 2012 10:55:43 +0000 (10:55 +0000)]
mmc: detect boot sectors using EXT_CSD_BOOT_MULT too

Some eMMC devices contain boot partitions, but do not set the PART_SUPPORT
bit in EXT_CSD_PARTITIONING_SUPPORT. Allow partition selection on such
devices, by enabling partition switching when EXT_CSD_BOOT_MULT is set.

Note that the Linux kernel enables access to boot partitions solely based
on the value of EXT_CSD_BOOT_MULT; EXT_CSD_PARTITIONING_SUPPORT only
influences access to "general" partitions.

eMMC devices affected by this issue exist on various NVIDIA Tegra
platforms (and presumably many others too), such as Harmony (plug-in eMMC),
Seaboard, Springbank, and Whistler (plug-in eMMC).

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agoMMC: u-boot-spl may be compiled without partition support
Mikhail Kshevetskiy [Mon, 9 Jul 2012 08:53:38 +0000 (08:53 +0000)]
MMC: u-boot-spl may be compiled without partition support

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@gmail.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommc: fix capacity calculation when EXT_CSD_SEC_CNT is used
Yoshihiro Shimoda [Thu, 7 Jun 2012 19:09:11 +0000 (19:09 +0000)]
mmc: fix capacity calculation when EXT_CSD_SEC_CNT is used

Since the type of "ext_csd" was array of char, the following
calculation might fail when the value of ext_csd[EXT_CSD_SEC_CNT]
was minus.

capacity = ext_csd[EXT_CSD_SEC_CNT] << 0
| ext_csd[EXT_CSD_SEC_CNT + 1] << 8
| ext_csd[EXT_CSD_SEC_CNT + 2] << 16
| ext_csd[EXT_CSD_SEC_CNT + 3] << 24;

So, this patch changes the type of "ext_csd" to array of u8.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommc: sh_mmcif: enable MMC_MODE_HC
Yoshihiro Shimoda [Thu, 7 Jun 2012 16:39:52 +0000 (16:39 +0000)]
mmc: sh_mmcif: enable MMC_MODE_HC

The controller can control high capacity cards. So, the patch adds
the flag. If the flag is not set, "mmcinfo" will fail when a high
capacity card is used.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agommc: fix wrong timeout check in mmc_send_status()
Jongman Heo [Sun, 3 Jun 2012 21:32:13 +0000 (21:32 +0000)]
mmc: fix wrong timeout check in mmc_send_status()

(!timeout) condition check in mmc_send_status() can never be met,
because do-while loop ends up with negative timeout value, -1.

Fix the check to handle TIMEOUT case correctly.

Signed-off-by: Jongman Heo <jongman.heo@gmail.com>
Signed-off-by: Andy Fleming <afleming@freescale.com>
12 years agoMerge branch 'master' of git://git.denx.de/u-boot-avr32
Wolfgang Denk [Tue, 4 Sep 2012 07:17:27 +0000 (09:17 +0200)]
Merge branch 'master' of git://git.denx.de/u-boot-avr32

* 'master' of git://git.denx.de/u-boot-avr32:
  net:macb: add line break
  avr32:portmux: fix setup for macb1
  avr32: Remove redundant LDSCRIPT definition

Signed-off-by: Wolfgang Denk <wd@denx.de>
12 years agonet:macb: add line break
Andreas Bießmann [Thu, 16 Aug 2012 01:50:04 +0000 (01:50 +0000)]
net:macb: add line break

Without this patch we see annoying output like this:

---8<---
U-Boot> dhcp
macb1: PHY not foundmacb0: PHY present at 1
macb0: Starting autonegotiation...
--->8---

Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
cc: Joe Hershberger <joe.hershberger@gmail.com>