kernel: add DT binding support to the TRX and minor parsers
authorRafał Miłecki <rafal@milecki.pl>
Sun, 9 Dec 2018 12:58:54 +0000 (13:58 +0100)
committerRafał Miłecki <rafal@milecki.pl>
Sun, 9 Dec 2018 12:58:54 +0000 (13:58 +0100)
It allows specifying those parsers directly in the DT.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c
target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_trx.c

index f971f0a650fb2c80234e682fcb6d7aa823f21961..d709a13cf6a109a2198f60f267dce41ee6c33f2e 100644 (file)
@@ -100,9 +100,22 @@ static int mtdsplit_parse_minor(struct mtd_info *master,
        return MINOR_NR_PARTS;
 }
 
+#include <linux/version.h>
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
+static const struct of_device_id mtdsplit_minor_of_match_table[] = {
+       { .compatible = "mikrotik,minor" },
+       {},
+};
+MODULE_DEVICE_TABLE(of, mtdsplit_minor_of_match_table);
+#endif
+
 static struct mtd_part_parser mtdsplit_minor_parser = {
        .owner = THIS_MODULE,
        .name = "minor-fw",
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
+       .of_match_table = mtdsplit_minor_of_match_table,
+#endif
        .parse_fn = mtdsplit_parse_minor,
        .type = MTD_PARSER_TYPE_FIRMWARE,
 };
index 53aebc5987e88257261eb74a35d07bbd650a01cd..d5e33727b5f777b8ce5355e42ac64f2fc37672f1 100644 (file)
@@ -130,9 +130,22 @@ err:
        return ret;
 }
 
+#include <linux/version.h>
+
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
+static const struct of_device_id trx_parser_of_match_table[] = {
+       { .compatible = "openwrt,trx" },
+       {},
+};
+MODULE_DEVICE_TABLE(of, trx_parser_of_match_table);
+#endif
+
 static struct mtd_part_parser trx_parser = {
        .owner = THIS_MODULE,
        .name = "trx-fw",
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
+       .of_match_table = trx_parser_of_match_table,
+#endif
        .parse_fn = mtdsplit_parse_trx,
        .type = MTD_PARSER_TYPE_FIRMWARE,
 };