rootfs_split: Allow using MTDPART_OFS_APPEND macro for offset of rootfs.

Use offset from struct mtd_part instead of struct mtd_partition for defining
the new partitions. This enables the usage of MTDPART_OFS_APPEND macro in
struct mtd_partition.

Signed-off-by: Jochen Friedrich <jochen@scram.de>

SVN-Revision: 26705
This commit is contained in:
Felix Fietkau
2011-04-17 18:32:28 +00:00
parent 5a0df036b0
commit ede6b0d360
7 changed files with 43 additions and 29 deletions

View File

@@ -37,7 +37,7 @@
/*
* MTD methods which simply translate the effective address and pass through
@@ -618,6 +620,153 @@ int mtd_del_partition(struct mtd_info *m
@@ -618,6 +620,155 @@ int mtd_del_partition(struct mtd_info *m
}
EXPORT_SYMBOL_GPL(mtd_del_partition);
@@ -92,9 +92,11 @@
+{
+ struct mtd_partition *dpart;
+ struct mtd_part *slave = NULL;
+ struct mtd_part *spart;
+ int ret, split_offset = 0;
+
+ ret = split_squashfs(master, part->offset, &split_offset);
+ spart = PART(rpart);
+ ret = split_squashfs(master, spart->offset, &split_offset);
+ if (ret)
+ return ret;
+
@@ -112,7 +114,7 @@
+ dpart->name = (unsigned char *)&dpart[1];
+ strcpy(dpart->name, ROOTFS_SPLIT_NAME);
+
+ dpart->size -= split_offset - dpart->offset;
+ dpart->size = rpart->size - (split_offset - spart->offset);
+ dpart->offset = split_offset;
+
+ if (dpart == NULL)