summaryrefslogtreecommitdiff
path: root/target/linux/generic/pending-4.14/400-mtd-add-rootfs-split-support.patch
diff options
context:
space:
mode:
authorRafał Miłecki <rafal@milecki.pl>2018-01-11 11:59:39 +0100
committerRafał Miłecki <rafal@milecki.pl>2018-01-11 12:07:49 +0100
commitbde5e7a632ef06b16ea77af037c1442e10949666 (patch)
tree51dce463c6c4514b9da7ea389cab4133072c3129 /target/linux/generic/pending-4.14/400-mtd-add-rootfs-split-support.patch
parentef27f153302b9f8296f5a8c71d08ae7392e721de (diff)
downloadmtk-20170518-bde5e7a632ef06b16ea77af037c1442e10949666.zip
mtk-20170518-bde5e7a632ef06b16ea77af037c1442e10949666.tar.gz
mtk-20170518-bde5e7a632ef06b16ea77af037c1442e10949666.tar.bz2
kernel: backport mtd implementation for "compatible" in "partitions" subnode
This backports upstream support for "compatible" DT property set for the "partitions" subnode of flash node. It allows specifying how partitions should be created/parsed. Right now only "fixed-partitions" is supported. It should eventually replace our downstream "linux,part-probe" solution. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Diffstat (limited to 'target/linux/generic/pending-4.14/400-mtd-add-rootfs-split-support.patch')
-rw-r--r--target/linux/generic/pending-4.14/400-mtd-add-rootfs-split-support.patch13
1 files changed, 7 insertions, 6 deletions
diff --git a/target/linux/generic/pending-4.14/400-mtd-add-rootfs-split-support.patch b/target/linux/generic/pending-4.14/400-mtd-add-rootfs-split-support.patch
index f0c852a..e722d8c 100644
--- a/target/linux/generic/pending-4.14/400-mtd-add-rootfs-split-support.patch
+++ b/target/linux/generic/pending-4.14/400-mtd-add-rootfs-split-support.patch
@@ -37,20 +37,21 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
depends on m
--- a/drivers/mtd/mtdpart.c
+++ b/drivers/mtd/mtdpart.c
-@@ -29,10 +29,12 @@
+@@ -29,11 +29,13 @@
#include <linux/kmod.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/partitions.h>
+#include <linux/magic.h>
#include <linux/of.h>
#include <linux/err.h>
+ #include <linux/of.h>
#include "mtdcore.h"
+#include "mtdsplit/mtdsplit.h"
/* Our partition linked list */
static LIST_HEAD(mtd_partitions);
-@@ -52,6 +54,8 @@ struct mtd_part {
+@@ -53,6 +55,8 @@ struct mtd_part {
struct list_head list;
};
@@ -59,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.
-@@ -686,6 +690,7 @@ int mtd_add_partition(struct mtd_info *p
+@@ -687,6 +691,7 @@ int mtd_add_partition(struct mtd_info *p
mutex_unlock(&mtd_partitions_mutex);
add_mtd_device(&new->mtd);
@@ -67,7 +68,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
mtd_add_partition_attrs(new);
-@@ -764,6 +769,35 @@ int mtd_del_partition(struct mtd_info *m
+@@ -765,6 +770,35 @@ int mtd_del_partition(struct mtd_info *m
}
EXPORT_SYMBOL_GPL(mtd_del_partition);
@@ -103,7 +104,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
/*
* 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
-@@ -795,6 +829,7 @@ int add_mtd_partitions(struct mtd_info *
+@@ -796,6 +830,7 @@ int add_mtd_partitions(struct mtd_info *
mutex_unlock(&mtd_partitions_mutex);
add_mtd_device(&slave->mtd);
@@ -113,7 +114,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
mtd_parse_part(slave, parts[i].types);
--- a/include/linux/mtd/partitions.h
+++ b/include/linux/mtd/partitions.h
-@@ -109,5 +109,7 @@ int mtd_add_partition(struct mtd_info *m
+@@ -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);