19 Sep, 2012
25 commits
-
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
[added include fsl_esdhc header to prevent implicit declarations of
fsl_esdhc_mmc_init() and fdt_fixup_esdhc()]Signed-off-by: Kim Phillips
-
This is very useful on a modern system.
Signed-off-by: Ira W. Snyder
Signed-off-by: Kim Phillips -
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
Signed-off-by: Kim Phillips -
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
Signed-off-by: Kim Phillips -
With:
fatls mmc 0 /dir/file
dir: regular directory
file: regular fileThe 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
Cc: Wolfgang Denk -
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
Reviewed-by: Marek Vasut -
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
-
Signed-off-by: Gerlando Falauto
Reviewed-by: Marek Vasut -
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 functionNOTE: This patch does not change the current behavior.
Signed-off-by: Gerlando Falauto
Reviewed-by: Marek Vasut -
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
Reviewed-by: Marek Vasut -
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
Reviewed-by: Marek Vasut -
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
Reviewed-by: Marek Vasut -
Commit 5e724ca did the same thing for env_common and env_embedded, but forgot
fw_env.Signed-off-by: Benoît Thébaudeau
Cc: Wolfgang Denk -
The ethprime env var was missing from env_common.
Signed-off-by: Benoît Thébaudeau
Cc: Wolfgang Denk -
Signed-off-by: Benoît Thébaudeau
Cc: Wolfgang Denk
Acked-by: Mike Frysinger -
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
-
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
Signed-off-by: Stephen Warren
Reported-by: Prabhakar Lad -
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
Cc: Albert Aribaud
Cc: Kyungmin Park
Cc: Tom Rini -
After removing the Apollon board, remove the OneNAND IPL too.
There are no users for it any more.Signed-off-by: Marek Vasut
Cc: Albert Aribaud
Cc: Minkyu Kang
Cc: Tom Rini
Acked-by: Minkyu Kang -
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
Acked-by: Tom Rini -
Signed-off-by: Marek Vasut
Cc: Daniel Hellstrom
Cc: u-boot-dm@lists.denx.de -
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
Cc: Daniel Hellstrom
Cc: u-boot-dm@lists.denx.de -
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
Cc: Joe Hershberger
Cc: Daniel Hellstrom
Cc: u-boot-dm@lists.denx.de -
In board_nand_init() we only need the 'tmp' variable if MXC_NFC_V2_1 is
defined.Signed-off-by: Tom Rini
18 Sep, 2012
15 commits
-
Use the same IP revisions as in Linux in order to make the comparison more
clear.Signed-off-by: Benoît Thébaudeau
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
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
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
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
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
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
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
Use _mxc_nand_enable_hwecc() instead of duplicating its code.
Signed-off-by: Benoît Thébaudeau
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
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
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
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
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
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
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
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
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
Merge duplicated code into functions, which is better for SPL size too.
Signed-off-by: Benoît Thébaudeau
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
Signed-off-by: Benoît Thébaudeau
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
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
Cc: Scott Wood
Cc: Stefano Babic
Signed-off-by: Scott Wood -
This is based on Linux kernel -next:
commit 14f44abf1dafc20ba42ce8616a8fc8fbd1b3712b
Author: Brian Norris
Date: Fri Jul 13 09:28:24 2012 -0700mtd: 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
Cc: Brian Norris
Cc: Eric Nelson
Cc: Fabio Estevam
Cc: Otavio Salvador
Cc: Scott Wood
Signed-off-by: Scott Wood -
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
Signed-off-by: Scott Wood