@@ -246,9 +246,7 @@ static void print_region_info(const struct mtd_dev_info *mtd)
/*
* If we don't have any region info, just return
*
- * FIXME: We can't get region_info (via ioctl) without having the MTD
- * node path. This is a problem for `mtdinfo -a', for example,
- * since it doesn't provide any filepath information.
+ * FIXME: We still need the filepath for the region map
*/
if (!args.node || (!args.map && mtd->region_cnt == 0))
return;
@@ -267,14 +265,12 @@ static void print_region_info(const struct mtd_dev_info *mtd)
if (mtd->region_cnt) {
for (r = 0; r < mtd->region_cnt; ++r) {
printf("Eraseblock region %i: ", r);
- if (mtd_regioninfo(fd, r, ®info) == 0) {
- printf(" offset: %#x size: %#x numblocks: %#x\n",
- reginfo.offset, reginfo.erasesize,
- reginfo.numblocks);
- if (args.map)
- print_region_map(mtd, fd, ®info);
- } else
- printf(" info is unavailable\n");
+ printf(" offset: %#x size: %#x numblocks: %#x\n",
+ mtd->reginfo[r].offset,
+ mtd->reginfo[r].erasesize,
+ mtd->reginfo[r].numblocks);
+ if (args.map)
+ print_region_map(mtd, fd, &(mtd->reginfo[r]));
}
} else {
reginfo.offset = 0;
Signed-off-by: Marian Rotariu <marian_rotariu@mentor.com> --- ubi-utils/mtdinfo.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-)