void fb_nand_erase(const char *cmd) { struct part_info *part; struct mtd_info *mtd = NULL; int ret; ret = fb_nand_lookup(cmd, &mtd, &part); if (ret) { error("invalid NAND device"); fastboot_fail("invalid NAND device"); return; } ret = board_fastboot_erase_partition_setup(part->name); if (ret) return; ret = _fb_nand_erase(mtd, part); if (ret) { error("failed erasing from device %s", mtd->name); fastboot_fail("failed erasing from device"); return; } fastboot_okay(""); }
void fb_nand_erase(const char *partname, char *response) { struct part_info *part; nand_info_t *nand = NULL; int ret; /* initialize the response buffer */ response_str = response; ret = fb_nand_lookup(partname, response, &nand, &part); if (ret) { error("invalid NAND device"); fastboot_fail(response_str, "invalid NAND device"); return; } ret = board_fastboot_erase_partition_setup(part->name); if (ret) return; ret = _fb_nand_erase(nand, part); if (ret) { error("failed erasing from device %s", nand->name); fastboot_fail(response_str, "failed erasing from device"); return; } fastboot_okay(response_str, ""); }