X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fopenwrt.git;a=blobdiff_plain;f=target%2Flinux%2Fgeneric%2Ffiles%2Fdrivers%2Fmtd%2Fmyloader.c;fp=target%2Flinux%2Fgeneric%2Ffiles%2Fdrivers%2Fmtd%2Fmyloader.c;h=93b4a9b2867b147c800038ba31ce85a7aa16cf78;hp=72956cdc1c9fa5ffafdeca73e941ffb20c7656e8;hb=fc79d210e0e70047309806c84aca02a00ae577b8;hpb=261fc738ccc74f28767ad70f0004c5c0fdcf312f diff --git a/target/linux/generic/files/drivers/mtd/myloader.c b/target/linux/generic/files/drivers/mtd/myloader.c index 72956cdc1c..93b4a9b286 100644 --- a/target/linux/generic/files/drivers/mtd/myloader.c +++ b/target/linux/generic/files/drivers/mtd/myloader.c @@ -89,8 +89,12 @@ static int myloader_parse_partitions(struct mtd_info *master, goto out_free_buf; } - /* The MyLoader and the Partition Table is always present */ - num_parts = 2; + /* + * The MyLoader and the Partition Table is always present. + * Additionally, an extra partition is generated to cover + * everything after the bootloader. + */ + num_parts = 3; /* Detect number of used partitions */ for (i = 0; i < MYLO_MAX_PARTITIONS; i++) { @@ -121,6 +125,13 @@ static int myloader_parse_partitions(struct mtd_info *master, mtd_part++; names += PART_NAME_LEN; + strncpy(names, "firmware", PART_NAME_LEN); + mtd_part->name = names; + mtd_part->offset = offset; + mtd_part->size = master->size - offset; + mtd_part++; + names += PART_NAME_LEN; + strncpy(names, "partition_table", PART_NAME_LEN); mtd_part->name = names; mtd_part->offset = offset;