X-Git-Url: https://repo.jachan.dev/J-u-boot.git/blobdiff_plain/e6de55ec5bf306df3b3cc8e7a4cc17fa1e78ca6c..d901d76eca773ebbbdbbfc54ba0b40912a909cf0:/cmd/read.c diff --git a/cmd/read.c b/cmd/read.c index 61d8ce73e49..99c7e3854e1 100644 --- a/cmd/read.c +++ b/cmd/read.c @@ -12,13 +12,13 @@ #include #include -int do_read(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +int do_read(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { char *ep; struct blk_desc *dev_desc = NULL; int dev; int part = 0; - disk_partition_t part_info; + struct disk_partition part_info; ulong offset = 0u; ulong limit = 0u; void *addr; @@ -30,13 +30,13 @@ int do_read(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return 1; } - dev = (int)simple_strtoul(argv[2], &ep, 16); + dev = (int)hextoul(argv[2], &ep); if (*ep) { if (*ep != ':') { printf("Invalid block device %s\n", argv[2]); return 1; } - part = (int)simple_strtoul(++ep, NULL, 16); + part = (int)hextoul(++ep, NULL); } dev_desc = blk_get_dev(argv[1], dev); @@ -45,9 +45,9 @@ int do_read(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return 1; } - addr = (void *)simple_strtoul(argv[3], NULL, 16); - blk = simple_strtoul(argv[4], NULL, 16); - cnt = simple_strtoul(argv[5], NULL, 16); + addr = (void *)hextoul(argv[3], NULL); + blk = hextoul(argv[4], NULL); + cnt = hextoul(argv[5], NULL); if (part != 0) { if (part_get_info(dev_desc, part, &part_info)) { @@ -66,7 +66,7 @@ int do_read(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return 1; } - if (blk_read(dev_desc, offset + blk, cnt, addr) < 0) { + if (blk_dread(dev_desc, offset + blk, cnt, addr) != cnt) { printf("Error reading blocks\n"); return 1; }