Signed-off-by: Peter Tyser <[EMAIL PROTECTED]> --- common/cmd_mem.c | 32 ++++++++++++++++++++++---------- 1 files changed, 22 insertions(+), 10 deletions(-)
diff --git a/common/cmd_mem.c b/common/cmd_mem.c index f3299bd..6eb1fd4 100644 --- a/common/cmd_mem.c +++ b/common/cmd_mem.c @@ -43,6 +43,8 @@ || defined(CONFIG_CMD_PCI) \ || defined(CONFIG_CMD_PORTIO) +DECLARE_GLOBAL_DATA_PTR; + int cmd_get_data_size(char* arg, int default_size) { /* Check for a size specification .b, .w or .l. @@ -83,7 +85,7 @@ uint dp_last_addr, dp_last_size; uint dp_last_length = 0x40; uint mm_last_addr, mm_last_size; -static ulong base_address = 0; +static ulong base_address __attribute__ ((section(".data"))) = 0; /* Memory Display * @@ -103,8 +105,10 @@ int do_mem_md ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) /* We use the last specified parameters, unless new ones are * entered. */ - addr = dp_last_addr; - size = dp_last_size; + if (gd->flags & GD_FLG_RELOC) { + addr = dp_last_addr; + size = dp_last_size; + } length = dp_last_length; if (argc < 2) { @@ -183,9 +187,12 @@ int do_mem_md ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) } #endif - dp_last_addr = addr; - dp_last_length = length; - dp_last_size = size; + if (gd->flags & GD_FLG_RELOC) { + dp_last_addr = addr; + dp_last_length = length; + dp_last_size = size; + } + return (rc); } @@ -1025,8 +1032,10 @@ mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char *argv[]) /* We use the last specified parameters, unless new ones are * entered. */ - addr = mm_last_addr; - size = mm_last_size; + if (gd->flags & GD_FLG_RELOC) { + addr = mm_last_addr; + size = mm_last_size; + } if ((flag & CMD_FLAG_REPEAT) == 0) { /* New command specified. Check for a size specification. @@ -1106,8 +1115,11 @@ mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char *argv[]) } } while (nbytes); - mm_last_addr = addr; - mm_last_size = size; + if (gd->flags & GD_FLG_RELOC) { + mm_last_addr = addr; + mm_last_size = size; + } + return 0; } -- 1.5.4.3 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot