diff options
author | Jagannadha Sutradharudu Teki <jaganna@xilinx.com> | 2013-05-26 14:52:52 +0530 |
---|---|---|
committer | Jagannadha Sutradharudu Teki <jaganna@xilinx.com> | 2013-06-03 00:04:41 +0530 |
commit | 60b6614ac8d189b8e31b9a7564fe5babb374bffa (patch) | |
tree | 016d8cfd422980953e3322fe5cc60cc7cfd45f07 /common/cmd_sf.c | |
parent | 96bbf55651fc2bedc175830d22179e384d640d99 (diff) | |
download | u-boot-imx-60b6614ac8d189b8e31b9a7564fe5babb374bffa.zip u-boot-imx-60b6614ac8d189b8e31b9a7564fe5babb374bffa.tar.gz u-boot-imx-60b6614ac8d189b8e31b9a7564fe5babb374bffa.tar.bz2 |
cmd_sf: Add print mesgs on sf read/write commands
This patch adds a print messages while using 'sf read' and
'sf write' commands to make sure that how many bytes read/written
from/into flash device.
Signed-off-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com>
Acked-by: Tom Rini <trini@ti.com>
Diffstat (limited to 'common/cmd_sf.c')
-rw-r--r-- | common/cmd_sf.c | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/common/cmd_sf.c b/common/cmd_sf.c index 7f12a49..19b0dc9 100644 --- a/common/cmd_sf.c +++ b/common/cmd_sf.c @@ -234,7 +234,7 @@ static int do_spi_flash_read_write(int argc, char * const argv[]) unsigned long len; void *buf; char *endp; - int ret; + int ret = 1; if (argc < 4) return -1; @@ -264,19 +264,23 @@ static int do_spi_flash_read_write(int argc, char * const argv[]) if (strcmp(argv[0], "update") == 0) ret = spi_flash_update(flash, offset, len, buf); - else if (strcmp(argv[0], "read") == 0) - ret = spi_flash_read(flash, offset, len, buf); - else - ret = spi_flash_write(flash, offset, len, buf); + else if (strncmp(argv[0], "read", 4) == 0 || + strncmp(argv[0], "write", 5) == 0) { + int read; + + read = strncmp(argv[0], "read", 4) == 0; + if (read) + ret = spi_flash_read(flash, offset, len, buf); + else + ret = spi_flash_write(flash, offset, len, buf); + + printf("SF: %zu bytes @ %#x %s: %s\n", (size_t)len, (u32)offset, + read ? "Read" : "Written", ret ? "ERROR" : "OK"); + } unmap_physmem(buf, len); - if (ret) { - printf("SPI flash %s failed\n", argv[0]); - return 1; - } - - return 0; + return ret == 0 ? 0 : 1; } static int do_spi_flash_erase(int argc, char * const argv[]) |