summaryrefslogtreecommitdiff
path: root/target/linux/mediatek/patches-4.9/0201-block2mtd.patch
diff options
context:
space:
mode:
authorJohn Crispin <john@phrozen.org>2017-02-16 09:53:03 +0100
committerJohn Crispin <john@phrozen.org>2017-02-16 09:53:30 +0100
commit53f5d59fa17049d94a3992d1067ded1fa90f61f8 (patch)
tree5596104b74bfe2a96f1abdb2303314a40c74322b /target/linux/mediatek/patches-4.9/0201-block2mtd.patch
parentf885edef5a3bfcddcfe85732ee65c1d475c4a8f6 (diff)
downloadmtk-20170518-53f5d59fa17049d94a3992d1067ded1fa90f61f8.zip
mtk-20170518-53f5d59fa17049d94a3992d1067ded1fa90f61f8.tar.gz
mtk-20170518-53f5d59fa17049d94a3992d1067ded1fa90f61f8.tar.bz2
mediatek: bump to v4.9
Signed-off-by: John Crispin <john@phrozen.org>
Diffstat (limited to 'target/linux/mediatek/patches-4.9/0201-block2mtd.patch')
-rw-r--r--target/linux/mediatek/patches-4.9/0201-block2mtd.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/target/linux/mediatek/patches-4.9/0201-block2mtd.patch b/target/linux/mediatek/patches-4.9/0201-block2mtd.patch
new file mode 100644
index 0000000..395884b
--- /dev/null
+++ b/target/linux/mediatek/patches-4.9/0201-block2mtd.patch
@@ -0,0 +1,32 @@
+--- a/drivers/mtd/devices/block2mtd.c
++++ b/drivers/mtd/devices/block2mtd.c
+@@ -32,6 +32,8 @@
+ #include <linux/slab.h>
+ #include <linux/major.h>
+
++static const char * const block2mtd_probe_types[] = { "cmdlinepart", NULL };
++
+ /* Info for the block device */
+ struct block2mtd_dev {
+ struct list_head list;
+@@ -227,6 +229,7 @@ static struct block2mtd_dev *add_device(
+ #endif
+ const fmode_t mode = FMODE_READ | FMODE_WRITE | FMODE_EXCL;
+ struct block_device *bdev = ERR_PTR(-ENODEV);
++ struct mtd_part_parser_data ppdata = { 0 };
+ struct block2mtd_dev *dev;
+ struct mtd_partition *part;
+ char *name;
+@@ -307,11 +310,7 @@ static struct block2mtd_dev *add_device(
+ dev->mtd.priv = dev;
+ dev->mtd.owner = THIS_MODULE;
+
+- part = kzalloc(sizeof(struct mtd_partition), GFP_KERNEL);
+- part->name = name;
+- part->offset = 0;
+- part->size = dev->mtd.size;
+- if (mtd_device_register(&dev->mtd, part, 1)) {
++ if (mtd_device_parse_register(&dev->mtd, block2mtd_probe_types, &ppdata, NULL, 0)) {
+ /* Device didn't get added, so free the entry */
+ goto err_destroy_mutex;
+ }