diff options
author | Tom Rini <trini@ti.com> | 2013-04-15 07:46:11 -0400 |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2013-04-15 07:46:11 -0400 |
commit | 17059f972fa6768ebf15a575c00083b3a431b79a (patch) | |
tree | 30df6b88fa1dc57dada54f9a16ab1619cc4f3c52 /arch/arm/cpu/armv7/omap3/board.c | |
parent | 277f037074fbb73be10a7bff27079b6eb0a3bfbb (diff) | |
parent | 8960af8ba9488fc54e2e4733cbada26d3cece225 (diff) | |
download | talos-obmc-uboot-17059f972fa6768ebf15a575c00083b3a431b79a.tar.gz talos-obmc-uboot-17059f972fa6768ebf15a575c00083b3a431b79a.zip |
Merge branch 'master' of git://git.denx.de/u-boot-arm
Diffstat (limited to 'arch/arm/cpu/armv7/omap3/board.c')
-rw-r--r-- | arch/arm/cpu/armv7/omap3/board.c | 31 |
1 files changed, 23 insertions, 8 deletions
diff --git a/arch/arm/cpu/armv7/omap3/board.c b/arch/arm/cpu/armv7/omap3/board.c index c6d9a425a5..b72fadc257 100644 --- a/arch/arm/cpu/armv7/omap3/board.c +++ b/arch/arm/cpu/armv7/omap3/board.c @@ -328,14 +328,25 @@ void abort(void) *****************************************************************************/ static int do_switch_ecc(cmd_tbl_t * cmdtp, int flag, int argc, char * const argv[]) { - if (argc != 2) + if (argc < 2 || argc > 3) goto usage; - if (strncmp(argv[1], "hw", 2) == 0) - omap_nand_switch_ecc(1); - else if (strncmp(argv[1], "sw", 2) == 0) - omap_nand_switch_ecc(0); - else + + if (strncmp(argv[1], "hw", 2) == 0) { + if (argc == 2) { + omap_nand_switch_ecc(1, 1); + } else { + if (strncmp(argv[2], "hamming", 7) == 0) + omap_nand_switch_ecc(1, 1); + else if (strncmp(argv[2], "bch8", 4) == 0) + omap_nand_switch_ecc(1, 8); + else + goto usage; + } + } else if (strncmp(argv[1], "sw", 2) == 0) { + omap_nand_switch_ecc(0, 0); + } else { goto usage; + } return 0; @@ -345,9 +356,13 @@ usage: } U_BOOT_CMD( - nandecc, 2, 1, do_switch_ecc, + nandecc, 3, 1, do_switch_ecc, "switch OMAP3 NAND ECC calculation algorithm", - "[hw/sw] - Switch between NAND hardware (hw) or software (sw) ecc algorithm" + "hw [hamming|bch8] - Switch between NAND hardware 1-bit hamming and" + " 8-bit BCH\n" + " ecc calculation (second parameter may" + " be omitted).\n" + "nandecc sw - Switch to NAND software ecc algorithm." ); #endif /* CONFIG_NAND_OMAP_GPMC & !CONFIG_SPL_BUILD */ |