From 4d3a53b9ef8f47d308875fe0be20585fa40726d0 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rafa=C5=82=20Mi=C5=82ecki?= Date: Sun, 9 Dec 2018 13:58:54 +0100 Subject: [PATCH] kernel: add DT binding support to the TRX and minor parsers MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit It allows specifying those parsers directly in the DT. Signed-off-by: Rafał Miłecki --- .../files/drivers/mtd/mtdsplit/mtdsplit_minor.c | 13 +++++++++++++ .../files/drivers/mtd/mtdsplit/mtdsplit_trx.c | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c index f971f0a650f..d709a13cf6a 100644 --- a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c +++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_minor.c @@ -100,9 +100,22 @@ static int mtdsplit_parse_minor(struct mtd_info *master, return MINOR_NR_PARTS; } +#include + +#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, }; diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_trx.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_trx.c index 53aebc5987e..d5e33727b5f 100644 --- a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_trx.c +++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_trx.c @@ -130,9 +130,22 @@ err: return ret; } +#include + +#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, }; -- 2.30.2