From fc79d210e0e70047309806c84aca02a00ae577b8 Mon Sep 17 00:00:00 2001 From: Gabor Juhos Date: Wed, 25 Sep 2013 20:13:12 +0000 Subject: [PATCH] kernel: create firmware partition from MyLoader partition parser This is in preparation for sysupgrade support for Compex devices. Signed-off-by: Gabor Juhos SVN-Revision: 38197 --- target/linux/generic/files/drivers/mtd/myloader.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) 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; -- 2.30.2