ubi: add new ubi command "ubi detach"
simple detachs ubi from the mtd partition. Signed-off-by: Heiko Schocher <hs@denx.de>
This commit is contained in:
parent
3c5d51fffc
commit
cddfc97d1f
38
cmd/ubi.c
38
cmd/ubi.c
@ -443,14 +443,8 @@ static int ubi_dev_scan(struct mtd_info *info, char *ubidev,
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ubi_part(char *part_name, const char *vid_header_offset)
|
||||
int ubi_detach(void)
|
||||
{
|
||||
int err = 0;
|
||||
char mtd_dev[16];
|
||||
struct mtd_device *dev;
|
||||
struct part_info *part;
|
||||
u8 pnum;
|
||||
|
||||
if (mtdparts_init() != 0) {
|
||||
printf("Error initializing mtdparts!\n");
|
||||
return 1;
|
||||
@ -466,17 +460,28 @@ int ubi_part(char *part_name, const char *vid_header_offset)
|
||||
cmd_ubifs_umount();
|
||||
#endif
|
||||
|
||||
/* todo: get dev number for NAND... */
|
||||
ubi_dev.nr = 0;
|
||||
|
||||
/*
|
||||
* Call ubi_exit() before re-initializing the UBI subsystem
|
||||
*/
|
||||
if (ubi_initialized) {
|
||||
ubi_exit();
|
||||
del_mtd_partitions(ubi_dev.mtd_info);
|
||||
ubi_initialized = 0;
|
||||
}
|
||||
|
||||
ubi_dev.selected = 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
int ubi_part(char *part_name, const char *vid_header_offset)
|
||||
{
|
||||
int err = 0;
|
||||
char mtd_dev[16];
|
||||
struct mtd_device *dev;
|
||||
struct part_info *part;
|
||||
u8 pnum;
|
||||
|
||||
ubi_detach();
|
||||
/*
|
||||
* Search the mtd device number where this partition
|
||||
* is located
|
||||
@ -517,6 +522,15 @@ static int do_ubi(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||
if (argc < 2)
|
||||
return CMD_RET_USAGE;
|
||||
|
||||
|
||||
if (strcmp(argv[1], "detach") == 0) {
|
||||
if (argc < 2)
|
||||
return CMD_RET_USAGE;
|
||||
|
||||
return ubi_detach();
|
||||
}
|
||||
|
||||
|
||||
if (strcmp(argv[1], "part") == 0) {
|
||||
const char *vid_header_offset = NULL;
|
||||
|
||||
@ -661,7 +675,9 @@ static int do_ubi(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
|
||||
U_BOOT_CMD(
|
||||
ubi, 6, 1, do_ubi,
|
||||
"ubi commands",
|
||||
"part [part] [offset]\n"
|
||||
"detach"
|
||||
" - detach ubi from a mtd partition\n"
|
||||
"ubi part [part] [offset]\n"
|
||||
" - Show or set current partition (with optional VID"
|
||||
" header offset)\n"
|
||||
"ubi info [l[ayout]]"
|
||||
|
Loading…
Reference in New Issue
Block a user