Signed-off-by: Michael Grzeschik <m.grzeschik@xxxxxxxxxxxxxx> --- This will only work once and bring the nand chip into a undefined state after a second call. Any ideas for doing this save? arch/arm/boards/omap/board-beagle.c | 28 +++++++++++++++++++++++++++- 1 files changed, 27 insertions(+), 1 deletions(-) diff --git a/arch/arm/boards/omap/board-beagle.c b/arch/arm/boards/omap/board-beagle.c index c0b6b43..99766af 100644 --- a/arch/arm/boards/omap/board-beagle.c +++ b/arch/arm/boards/omap/board-beagle.c @@ -53,6 +53,7 @@ */ #include <common.h> +#include <command.h> #include <console.h> #include <init.h> #include <driver.h> @@ -324,7 +325,6 @@ static int beagle_devices_init(void) /* WP is made high and WAIT1 active Low */ gpmc_generic_init(0x10); #endif - gpmc_generic_nand_devices_init(0, 16, 1); armlinux_add_dram(&sdram_dev); armlinux_set_bootparams((void *)0x80000100); @@ -333,3 +333,29 @@ failed: return ret; } device_initcall(beagle_devices_init); + +static int do_ecc(struct command *cmdtp, int argc, char *argv[]) +{ + if (*argv[0] == 's') { + gpmc_generic_nand_devices_init(0, 16, 0); + } else { + gpmc_generic_nand_devices_init(0, 16, 1); + } + return 0; +} + +static const __maybe_unused char cmd_ecc_help[] = +"Usage: (s|h)whwcc <device>\n" +"set software or hardware ecc for nand controller \n"; + +BAREBOX_CMD_START(hwecc) + .cmd = do_ecc, + .usage = "enable HWECC support in NAND", + BAREBOX_CMD_HELP(cmd_ecc_help) +BAREBOX_CMD_END + +BAREBOX_CMD_START(swecc) + .cmd = do_ecc, + .usage = "enable SWECC support in NAND", + BAREBOX_CMD_HELP(cmd_ecc_help) +BAREBOX_CMD_END -- 1.7.1 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox