summaryrefslogtreecommitdiff
path: root/ubi-utils/mtdinfo.c
diff options
context:
space:
mode:
authorBrian Norris <computersforpeace@gmail.com>2011-11-16 12:03:57 -0800
committerArtem Bityutskiy <Artem.Bityutskiy@intel.com>2011-11-18 00:22:11 +0200
commit97bb4aa681f4df5e784c1f8a8db049a95a0d65c6 (patch)
tree2aa2c8f9323f9fc764b1222be2c6303d65977d77 /ubi-utils/mtdinfo.c
parentdad673ef6b39bab29c939cd70d8317107e56ef12 (diff)
mtdinfo: provide info when used without arguments
If the user specifies neither a MTD argument nor the `-a' flag, we print a cryptic message; i.e., # mtdinfo libmtd: error!: cannot get information about "(null)" error 14 (Bad address) mtdinfo: error!: cannot get information about MTD device "(null)" error 14 (Bad address) This is a regression; previously, mtdinfo would give some short info about number of devices, etc. when used without arguments. To fix this, we revert commit d53c03b0989f8354a7e4dbb947a150fc7fe3f6d1 and call print_general_info() when no device is specified. Signed-off-by: Brian Norris <computersforpeace@gmail.com> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@intel.com>
Diffstat (limited to 'ubi-utils/mtdinfo.c')
-rw-r--r--ubi-utils/mtdinfo.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/ubi-utils/mtdinfo.c b/ubi-utils/mtdinfo.c
index d919673..ead4bce 100644
--- a/ubi-utils/mtdinfo.c
+++ b/ubi-utils/mtdinfo.c
@@ -340,7 +340,8 @@ static int print_dev_info(libmtd_t libmtd, const struct mtd_info *mtd_info, int
return 0;
}
-static int print_general_info(libmtd_t libmtd, const struct mtd_info *mtd_info)
+static int print_general_info(libmtd_t libmtd, const struct mtd_info *mtd_info,
+ int all)
{
int i, err, first = 1;
struct mtd_dev_info mtd;
@@ -367,9 +368,14 @@ static int print_general_info(libmtd_t libmtd, const struct mtd_info *mtd_info)
}
}
printf("\n");
- printf("Sysfs interface supported: %s\n\n",
+ printf("Sysfs interface supported: %s\n",
mtd_info->sysfs_supported ? "yes" : "no");
+ if (!all)
+ return 0;
+
+ printf("\n");
+
for (i = mtd_info->lowest_mtd_num;
i <= mtd_info->highest_mtd_num; i++) {
err = print_dev_info(libmtd, mtd_info, i);
@@ -404,7 +410,7 @@ int main(int argc, char * const argv[])
return sys_errmsg("cannot get MTD information");
}
- if (!args.all) {
+ if (!args.all && args.node) {
int mtdn;
/*
@@ -416,7 +422,7 @@ int main(int argc, char * const argv[])
goto out_libmtd;
err = print_dev_info(libmtd, &mtd_info, mtdn);
} else
- err = print_general_info(libmtd, &mtd_info);
+ err = print_general_info(libmtd, &mtd_info, args.all);
if (err)
goto out_libmtd;