struct mtd_info *mtd;
int err = 0;
+ if (ubi && ubi->mtd && !strcmp(ubi->mtd->name, part_name)) {
+ printf("UBI partition '%s' already selected\n", part_name);
+ return 0;
+ }
+
ubi_detach();
mtd_probe_devices();
return 1;
}
- addr = simple_strtoul(argv[2], NULL, 16);
- size = simple_strtoul(argv[4], NULL, 16);
+ addr = hextoul(argv[2], NULL);
+ size = hextoul(argv[4], NULL);
if (strlen(argv[1]) == 10 &&
strncmp(argv[1] + 5, ".part", 5) == 0) {
(void *)addr, size);
} else {
size_t full_size;
- full_size = simple_strtoul(argv[5], NULL, 16);
+ full_size = hextoul(argv[5], NULL);
ret = ubi_volume_begin_write(argv[3],
(void *)addr, size, full_size);
}
/* E.g., read volume size */
if (argc == 5) {
- size = simple_strtoul(argv[4], NULL, 16);
+ size = hextoul(argv[4], NULL);
argc--;
}
/* E.g., read volume */
if (argc == 4) {
- addr = simple_strtoul(argv[2], NULL, 16);
+ addr = hextoul(argv[2], NULL);
argc--;
}