ath79: etactica-eg200: fix restore button
[openwrt/openwrt.git] / target / linux / generic / pending-4.14 / 400-mtd-add-rootfs-split-support.patch
index b68e25381904b8ed962a24ac686d61e1a13c789f..5f8899ea6195d45f547c3ea728beda63c371b1b4 100644 (file)
@@ -60,7 +60,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  /*
   * Given a pointer to the MTD object in the mtd_part structure, we can retrieve
   * the pointer to that structure.
-@@ -658,6 +662,7 @@ int mtd_add_partition(struct mtd_info *p
+@@ -668,6 +672,7 @@ int mtd_add_partition(struct mtd_info *p
        mutex_unlock(&mtd_partitions_mutex);
  
        add_mtd_device(&new->mtd);
@@ -68,7 +68,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
        mtd_add_partition_attrs(new);
  
-@@ -736,6 +741,36 @@ int mtd_del_partition(struct mtd_info *m
+@@ -746,6 +751,29 @@ int mtd_del_partition(struct mtd_info *m
  }
  EXPORT_SYMBOL_GPL(mtd_del_partition);
  
@@ -82,11 +82,6 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 +{
 +}
 +
-+void __weak arch_split_mtd_part(struct mtd_info *master, const char *name,
-+                                int offset, int size)
-+{
-+}
-+
 +static void mtd_partition_split(struct mtd_info *master, struct mtd_part *part)
 +{
 +      static int rootfs_found = 0;
@@ -98,14 +93,12 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
 +          !strcmp(part->mtd.name, SPLIT_FIRMWARE_NAME) &&
 +          !of_find_property(mtd_get_of_node(&part->mtd), "compatible", NULL))
 +              split_firmware(master, part);
-+
-+      arch_split_mtd_part(master, part->mtd.name, part->offset,
-+                          part->mtd.size);
 +}
++
  /*
   * This function, given a master MTD object and a partition table, creates
   * and registers slave MTD objects which are bound to the master according to
-@@ -767,6 +802,7 @@ int add_mtd_partitions(struct mtd_info *
+@@ -777,6 +805,7 @@ int add_mtd_partitions(struct mtd_info *
                mutex_unlock(&mtd_partitions_mutex);
  
                add_mtd_device(&slave->mtd);
@@ -113,13 +106,3 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
                mtd_add_partition_attrs(slave);
                /* Look for subpartitions */
                parse_mtd_partitions(&slave->mtd, parts[i].types, NULL);
---- a/include/linux/mtd/partitions.h
-+++ b/include/linux/mtd/partitions.h
-@@ -110,5 +110,7 @@ int mtd_add_partition(struct mtd_info *m
-                     long long offset, long long length);
- int mtd_del_partition(struct mtd_info *master, int partno);
- uint64_t mtd_get_device_size(const struct mtd_info *mtd);
-+extern void __weak arch_split_mtd_part(struct mtd_info *master,
-+                                     const char *name, int offset, int size);
- #endif