diff options
Diffstat (limited to 'cmd/mem.c')
-rw-r--r-- | cmd/mem.c | 68 |
1 files changed, 44 insertions, 24 deletions
diff --git a/cmd/mem.c b/cmd/mem.c index 18f0510098b..9b97f7bf694 100644 --- a/cmd/mem.c +++ b/cmd/mem.c @@ -18,14 +18,22 @@ #include <console.h> #include <flash.h> #include <hash.h> +#include <log.h> #include <mapmem.h> +#include <rand.h> #include <watchdog.h> #include <asm/io.h> +#include <linux/bitops.h> #include <linux/compiler.h> +#include <linux/delay.h> DECLARE_GLOBAL_DATA_PTR; -static int mod_mem(cmd_tbl_t *, int, int, int, char * const []); +#ifndef CONFIG_SYS_MEMTEST_SCRATCH +#define CONFIG_SYS_MEMTEST_SCRATCH 0 +#endif + +static int mod_mem(struct cmd_tbl *, int, int, int, char * const []); /* Display values from last command. * Memory modify remembered values are different from display memory. @@ -42,7 +50,8 @@ static ulong base_address = 0; * md{.b, .w, .l, .q} {addr} {len} */ #define DISP_LINE_LEN 16 -static int do_mem_md(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +static int do_mem_md(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { ulong addr, length, bytes; const void *buf; @@ -92,16 +101,20 @@ static int do_mem_md(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return (rc); } -static int do_mem_mm(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +static int do_mem_mm(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { return mod_mem (cmdtp, 1, flag, argc, argv); } -static int do_mem_nm(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) + +static int do_mem_nm(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { return mod_mem (cmdtp, 0, flag, argc, argv); } -static int do_mem_mw(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +static int do_mem_mw(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { #ifdef MEM_SUPPORT_64BIT_DATA u64 writeval; @@ -162,7 +175,8 @@ static int do_mem_mw(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) } #ifdef CONFIG_CMD_MX_CYCLIC -static int do_mem_mdc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +static int do_mem_mdc(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { int i; ulong count; @@ -177,7 +191,7 @@ static int do_mem_mdc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) /* delay for <count> ms... */ for (i=0; i<count; i++) - udelay (1000); + udelay(1000); /* check for ctrl-c to abort... */ if (ctrlc()) { @@ -189,7 +203,8 @@ static int do_mem_mdc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return 0; } -static int do_mem_mwc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +static int do_mem_mwc(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { int i; ulong count; @@ -204,7 +219,7 @@ static int do_mem_mwc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) /* delay for <count> ms... */ for (i=0; i<count; i++) - udelay (1000); + udelay(1000); /* check for ctrl-c to abort... */ if (ctrlc()) { @@ -217,7 +232,8 @@ static int do_mem_mwc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) } #endif /* CONFIG_CMD_MX_CYCLIC */ -static int do_mem_cmp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +static int do_mem_cmp(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { ulong addr1, addr2, count, ngood, bytes; int size; @@ -297,7 +313,8 @@ static int do_mem_cmp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return rcode; } -static int do_mem_cp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +static int do_mem_cp(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { ulong addr, dest, count; void *src, *dst; @@ -355,8 +372,8 @@ static int do_mem_cp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return 0; } -static int do_mem_base(cmd_tbl_t *cmdtp, int flag, int argc, - char * const argv[]) +static int do_mem_base(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { if (argc > 1) { /* Set new base address. @@ -369,8 +386,8 @@ static int do_mem_base(cmd_tbl_t *cmdtp, int flag, int argc, return 0; } -static int do_mem_loop(cmd_tbl_t *cmdtp, int flag, int argc, - char * const argv[]) +static int do_mem_loop(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { ulong addr, length, i, bytes; int size; @@ -467,8 +484,8 @@ static int do_mem_loop(cmd_tbl_t *cmdtp, int flag, int argc, } #ifdef CONFIG_LOOPW -static int do_mem_loopw(cmd_tbl_t *cmdtp, int flag, int argc, - char * const argv[]) +static int do_mem_loopw(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { ulong addr, length, i, bytes; int size; @@ -914,8 +931,8 @@ static ulong mem_test_quick(vu_long *buf, ulong start_addr, ulong end_addr, * configured using CONFIG_SYS_ALT_MEMTEST. The complete test loops until * interrupted by ctrl-c or by a failure of one of the sub-tests. */ -static int do_mem_mtest(cmd_tbl_t *cmdtp, int flag, int argc, - char * const argv[]) +static int do_mem_mtest(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { ulong start, end; vu_long scratch_space; @@ -1002,7 +1019,8 @@ static int do_mem_mtest(cmd_tbl_t *cmdtp, int flag, int argc, * nm{.b, .w, .l, .q} {addr} */ static int -mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char * const argv[]) +mod_mem(struct cmd_tbl *cmdtp, int incrflag, int flag, int argc, + char *const argv[]) { ulong addr; #ifdef MEM_SUPPORT_64BIT_DATA @@ -1106,7 +1124,8 @@ mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char * const argv[]) #ifdef CONFIG_CMD_CRC32 -static int do_mem_crc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +static int do_mem_crc(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { int flags = 0; int ac; @@ -1131,7 +1150,8 @@ static int do_mem_crc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) #endif #ifdef CONFIG_CMD_RANDOM -static int do_random(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +static int do_random(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { unsigned long addr, len; unsigned long seed; // NOT INITIALIZED ON PURPOSE @@ -1259,8 +1279,8 @@ U_BOOT_CMD( #endif #ifdef CONFIG_CMD_MEMINFO -static int do_mem_info(cmd_tbl_t *cmdtp, int flag, int argc, - char * const argv[]) +static int do_mem_info(struct cmd_tbl *cmdtp, int flag, int argc, + char *const argv[]) { puts("DRAM: "); print_size(gd->ram_size, "\n"); |