From: Piotr Zierhoffer <piotr.zierhof...@cs.put.poznan.pl> The usage of the command is:
a20_nandread <address> <offset> <bytes> It allows user to copy data from NAND to memory. It employs nand_spl_load_image from the sunxi NAND driver. It is added only when the NAND support is enabled. Signed-off-by: Peter Gielda <pgie...@antmicro.com> Signed-off-by: Tomasz Gorochowik <tgorocho...@antmicro.com> Signed-off-by: Mateusz Holenko <mhole...@antmicro.com> Signed-off-by: Piotr Zierhoffer <pzierhof...@antmicro.com> --- common/Makefile | 1 + common/cmd_a20_nandread.c | 25 +++++++++++++++++++++++++ include/configs/sunxi-common.h | 2 ++ 3 files changed, 28 insertions(+) create mode 100644 common/cmd_a20_nandread.c diff --git a/common/Makefile b/common/Makefile index d6c1d48..ef31646 100644 --- a/common/Makefile +++ b/common/Makefile @@ -126,6 +126,7 @@ obj-$(CONFIG_ID_EEPROM) += cmd_mac.o obj-$(CONFIG_CMD_MD5SUM) += cmd_md5sum.o obj-$(CONFIG_CMD_MEMORY) += cmd_mem.o obj-$(CONFIG_CMD_IO) += cmd_io.o +obj-$(CONFIG_CMD_A20_NANDREAD) += cmd_a20_nandread.o obj-$(CONFIG_CMD_MFSL) += cmd_mfsl.o obj-$(CONFIG_MII) += miiphyutil.o obj-$(CONFIG_CMD_MII) += miiphyutil.o diff --git a/common/cmd_a20_nandread.c b/common/cmd_a20_nandread.c new file mode 100644 index 0000000..6469535 --- /dev/null +++ b/common/cmd_a20_nandread.c @@ -0,0 +1,25 @@ +#include <common.h> +#include <command.h> +#include <nand.h> + +static int do_a20_nandread(cmd_tbl_t *cmdtp, int flag, int argc, + char * const argv[]) +{ + if (argc != 4) { + printf("usage: a20_nandread <destination> <source> <size>\n"); + return 1; + } + + uint32_t dst = simple_strtoul(argv[1], NULL, 16); + uint32_t src = simple_strtoul(argv[2], NULL, 16); + uint32_t cnt = simple_strtoul(argv[3], NULL, 16); + printf("Reading 0x%08X bytes from NAND @ 0x%08X to MEM @ 0x%08X...\n", + cnt, src, dst); + nand_spl_load_image(src, cnt, (void *)dst); + printf("\n"); + return 0; +} + +U_BOOT_CMD(a20_nandread, CONFIG_SYS_MAXARGS, 3, + do_a20_nandread, "a20_nandread", "[destination source size]\n" " " +); diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h index 83922ab..e9cfa9a 100644 --- a/include/configs/sunxi-common.h +++ b/include/configs/sunxi-common.h @@ -148,6 +148,8 @@ #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x008000 #define CONFIG_SYS_NAND_PAGE_SIZE 0x002000 /* 8kb*/ #define CONFIG_SUNXI_ECC_STRENGTH 40 + +#define CONFIG_CMD_A20_NANDREAD #endif /* mmc config */ -- 2.3.6 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot