summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2009-10-05 08:36:16 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2009-10-05 08:36:16 +0200
commitd571b52a9615fb9a6ef484471bdc2b8b88568748 (patch)
tree2cee779492722ac303470ec5b548188c58fffbfb /drivers
parent261fdae6dbce5ff8507270d0cfa40340ee109660 (diff)
downloadbarebox-d571b52a9615fb9a6ef484471bdc2b8b88568748.tar.gz
barebox-d571b52a9615fb9a6ef484471bdc2b8b88568748.tar.xz
nand_imx_v2: make nand_boot_test command more flexible
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/nand/nand_imx_v2.c28
1 files changed, 23 insertions, 5 deletions
diff --git a/drivers/nand/nand_imx_v2.c b/drivers/nand/nand_imx_v2.c
index bcf353d3a0..dab60b0d13 100644
--- a/drivers/nand/nand_imx_v2.c
+++ b/drivers/nand/nand_imx_v2.c
@@ -1095,17 +1095,35 @@ void __bare_init imx_nand_load_image(void *dest, int size, int pagesize,
#ifdef IMX_NAND_BOOT_DEBUG
#include <command.h>
-static int do_imgcopy (cmd_tbl_t *cmdtp, int argc, char *argv[])
+static int do_nand_boot_test(cmd_tbl_t *cmdtp, int argc, char *argv[])
{
- imx_nand_load_image((void *)0x80000000, 0x40000, 2048, 16384);
+ void *dest;
+ int size, pagesize, blocksize;
+
+ if (argc < 4) {
+ u_boot_cmd_usage(cmdtp);
+ return 1;
+ }
+
+ dest = (void *)strtoul_suffix(argv[1], NULL, 0);
+ size = strtoul_suffix(argv[2], NULL, 0);
+ pagesize = strtoul_suffix(argv[3], NULL, 0);
+ blocksize = strtoul_suffix(argv[4], NULL, 0);
+
+ imx_nand_load_image(dest, size, pagesize, blocksize * 1024);
+
return 0;
}
+static const __maybe_unused char cmd_nand_boot_test_help[] =
+"Usage: nand_boot_test <dest> <size> <pagesize> <blocksize in kiB>\n";
-U_BOOT_CMD_START(imgcopy)
+U_BOOT_CMD_START(nand_boot_test)
.maxargs = CONFIG_MAXARGS,
- .cmd = do_imgcopy,
- .usage = "",
+ .cmd = do_nand_boot_test,
+ .usage = "load an image from NAND",
+ U_BOOT_CMD_HELP(cmd_nand_boot_test_help)
U_BOOT_CMD_END
+
#endif
#endif