static struct usbd_ops usbd_ops;
-static unsigned int part_id = BOOT_PART_ID;
+static unsigned int part_id;
static unsigned int write_part = 0;
static unsigned long fs_offset = 0x0;
return 0;
}
-static int get_part_id(char *name, int id)
+static int get_part_id(char *name)
{
int nparts = count_mtdparts();
int i;
return i;
}
- printf("Error: Unknown partition -> %s(%d)\n", name, id);
+ printf("Error: Unknown partition -> %s\n", name);
return -1;
}
#else
return -EINVAL;
}
-static int get_part_id(char *name, int id)
+static int get_part_id(char *name)
{
- return id;
+ return 0;
}
#endif
int ret = 0;
int ubi_update = 0;
int ubi_mode = 0;
+ int img_type;
sprintf(ramaddr, "0x%x", (uint) down_ram_addr);
#endif
if (part_id == FILESYSTEM3_PART_ID)
- part_id = get_part_id("UBI", FILESYSTEM_PART_ID);
+ part_id = get_part_id("UBI");
else if (part_id == MODEM_PART_ID)
- part_id = get_part_id("modem", MODEM_PART_ID);
+ part_id = get_part_id("modem");
#ifdef CONFIG_MIRAGE
if (part_id)
part_id--;
case COMMAND_WRITE_PART_1:
printf("COMMAND_WRITE_PART_BOOT\n");
- part_id = get_part_id("bootloader", BOOT_PART_ID);
+ part_id = get_part_id("bootloader");
+ img_type = IMG_BOOT;
break;
case COMMAND_WRITE_PART_2:
case COMMAND_WRITE_PART_3:
printf("COMMAND_WRITE_KERNEL\n");
- part_id = get_part_id("kernel", KERNEL_PART_ID);
+ part_id = get_part_id("kernel");
+ img_type = IMG_KERNEL;
break;
case COMMAND_WRITE_PART_4:
printf("COMMAND_WRITE_ROOTFS\n");
- part_id = get_part_id("Root", RAMDISK_PART_ID);
+ part_id = get_part_id("Root");
+ img_type = IMG_FILESYSTEM;
ubi_update = arg;
break;
case COMMAND_WRITE_PART_5:
printf("COMMAND_WRITE_FACTORYFS\n");
- part_id = get_part_id("Fact", FILESYSTEM_PART_ID);
+ part_id = get_part_id("Fact");
+ img_type = IMG_FILESYSTEM;
ubi_update = arg;
break;
case COMMAND_WRITE_PART_6:
printf("COMMAND_WRITE_DATAFS\n");
- part_id = get_part_id("Data", FILESYSTEM2_PART_ID);
+ part_id = get_part_id("Data");
+ img_type = IMG_FILESYSTEM;
ubi_update = arg;
break;
case COMMAND_WRITE_PART_7:
printf("COMMAND_WRITE_UBI\n");
- part_id = get_part_id("UBI", FILESYSTEM3_PART_ID);
+ part_id = get_part_id("UBI");
+ img_type = IMG_FILESYSTEM;
ubi_update = 0;
/* someday, it will be deleted */
get_part_info();
case COMMAND_WRITE_PART_8:
printf("COMMAND_WRITE_MODEM\n");
- part_id = MODEM_PART_ID;
+ part_id = get_part_id("modem");
+ img_type = IMG_MODEM;
break;
case COMMAND_WRITE_PART_9:
printf("COMMAND_WRITE_MMC\n");
- part_id = MMC_PART_ID;
+ img_type = IMG_MMC;
break;
case COMMAND_WRITE_UBI_INFO:
}
/* Erase and Write to NAND */
- switch (part_id) {
- case BOOT_PART_ID:
+ switch (img_type) {
+ case IMG_BOOT:
#ifdef CONFIG_S5PC1XX
/* Workaround: for prevent revision mismatch */
if (cpu_is_s5pc110() && (down_mode != MODE_FORCE)) {
/* Erase the environment also when write bootloader */
{
int param_id;
- param_id = get_part_id("params", 1);
+ param_id = get_part_id("params");
if (param_id == -1) {
sprintf(offset, "%x", CONFIG_ENV_OFFSET);
}
#endif
/* Fall through for write bootloader */
- case KERNEL_PART_ID:
+ case IMG_KERNEL:
sprintf(offset, "%x", parts[part_id]->offset);
sprintf(length, "%x", parts[part_id]->size);
ret = nand_cmd(1, ramaddr, offset, length);
break;
- /* File System */
- case RAMDISK_PART_ID: /* rootfs */
- case FILESYSTEM_PART_ID: /* factoryfs */
- case FILESYSTEM2_PART_ID: /* datafs */
- case FILESYSTEM3_PART_ID: /* ubifs */
+ /* File Systems */
+ case IMG_FILESYSTEM:
ret = write_file_system(ramaddr, len, offset, length,
part_id, ubi_update);
break;
- case MODEM_PART_ID:
- part_id = get_part_id("modem", MODEM_PART_ID);
-
+ case IMG_MODEM:
sprintf(offset, "%x", parts[part_id]->offset);
sprintf(length, "%x", parts[part_id]->size);
break;
#ifdef CONFIG_CMD_MMC
- case MMC_PART_ID:
+ case IMG_MMC:
write_file_mmc(usbd, ramaddr, len, offset, length);
break;
#endif