aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic
diff options
context:
space:
mode:
authorRafał Miłecki <rafal@milecki.pl>2019-08-06 06:35:23 +0200
committerRafał Miłecki <rafal@milecki.pl>2019-08-06 06:41:52 +0200
commit4b755ce06abe6f7a58325e77e1711a755c1bcbcc (patch)
tree7f45b2a7b974f4255ddcd8611410ab3fee30c068 /target/linux/generic
parent19cfbb1b34de5a6f7234c8615edaf3a497ba4d55 (diff)
downloadupstream-4b755ce06abe6f7a58325e77e1711a755c1bcbcc.tar.gz
upstream-4b755ce06abe6f7a58325e77e1711a755c1bcbcc.tar.bz2
upstream-4b755ce06abe6f7a58325e77e1711a755c1bcbcc.zip
Revert "kernel: generic: fix fonfxc uimage parser"
This reverts commit e92a14709d37f64dcba8c81fa51e61e5f10f439a. mtdsplit_uimage_parse_fonfxc() gets called in two situations: 1) It was /requested/ from DT using "fonfxc,uimage" compatible string 2) It was called by parsing code after finding "firmware" (MTD_SPLIT_FIRMWARE_NAME) due to the parser's type Code added in the /fix/ commit basically just disabled the second case. If that's the real goal it could be achieved by simply dropping type MTD_PARSER_TYPE_FIRMWARE. It may however require another solution as it's possible that some non-DT target actually needs fonfxc uImage parsing. Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Diffstat (limited to 'target/linux/generic')
-rw-r--r--target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_uimage.c21
1 files changed, 7 insertions, 14 deletions
diff --git a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_uimage.c b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_uimage.c
index 2ac559a3f3..091403ae91 100644
--- a/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_uimage.c
+++ b/target/linux/generic/files/drivers/mtd/mtdsplit/mtdsplit_uimage.c
@@ -398,29 +398,22 @@ static ssize_t uimage_find_fonfxc(u_char *buf, size_t len, int *extralen)
return 0;
}
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
-static const struct of_device_id mtdsplit_uimage_fonfxc_of_match_table[] = {
- { .compatible = "fonfxc,uimage" },
- {},
-};
-#endif
-
static int
mtdsplit_uimage_parse_fonfxc(struct mtd_info *master,
const struct mtd_partition **pparts,
struct mtd_part_parser_data *data)
{
- struct device_node *np_mtd;
-
- np_mtd = mtd_get_of_node(master);
- if (!np_mtd ||
- !of_match_node(mtdsplit_uimage_fonfxc_of_match_table, np_mtd))
- return -ENODEV;
-
return __mtdsplit_parse_uimage(master, pparts, data,
uimage_find_fonfxc);
}
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 9, 0)
+static const struct of_device_id mtdsplit_uimage_fonfxc_of_match_table[] = {
+ { .compatible = "fonfxc,uimage" },
+ {},
+};
+#endif
+
static struct mtd_part_parser uimage_fonfxc_parser = {
.owner = THIS_MODULE,
.name = "fonfxc-fw",