diff options
author | Jonas Gorski <jonas.gorski@gmail.com> | 2016-08-09 11:23:32 +0200 |
---|---|---|
committer | Jonas Gorski <jonas.gorski@gmail.com> | 2016-08-13 15:49:35 +0200 |
commit | 0ddae04c226983e1e064d8750b8bb8724f077ad9 (patch) | |
tree | 84f901cf5188629c2bd08d24c9cf743d29f01497 /target/linux/brcm63xx/patches-4.4/000-4.5-04-mtd-spi-nor-drop-unnecessary-partition-parser-data.patch | |
parent | 86ec4104181992400363e5602c11079e79524d9c (diff) | |
download | mtk-20170518-0ddae04c226983e1e064d8750b8bb8724f077ad9.zip mtk-20170518-0ddae04c226983e1e064d8750b8bb8724f077ad9.tar.gz mtk-20170518-0ddae04c226983e1e064d8750b8bb8724f077ad9.tar.bz2 |
brcm63xx: backport mtd of node changes from upstream
Should fix parser data containing uninitialized values for of probed
physmap flashes, which could break e.g. the redboot parser.
Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com>
Diffstat (limited to 'target/linux/brcm63xx/patches-4.4/000-4.5-04-mtd-spi-nor-drop-unnecessary-partition-parser-data.patch')
-rw-r--r-- | target/linux/brcm63xx/patches-4.4/000-4.5-04-mtd-spi-nor-drop-unnecessary-partition-parser-data.patch | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/patches-4.4/000-4.5-04-mtd-spi-nor-drop-unnecessary-partition-parser-data.patch b/target/linux/brcm63xx/patches-4.4/000-4.5-04-mtd-spi-nor-drop-unnecessary-partition-parser-data.patch new file mode 100644 index 0000000..dafde16 --- /dev/null +++ b/target/linux/brcm63xx/patches-4.4/000-4.5-04-mtd-spi-nor-drop-unnecessary-partition-parser-data.patch @@ -0,0 +1,83 @@ +From df02c885f8697546da41665f28dde5e30ce99674 Mon Sep 17 00:00:00 2001 +From: Brian Norris <computersforpeace@gmail.com> +Date: Fri, 30 Oct 2015 20:33:26 -0700 +Subject: [PATCH] mtd: spi-nor: drop unnecessary partition parser data + +Now that the SPI-NOR/MTD framework pass the 'flash_node' through to the +partition parsing code, we don't have to do it ourselves. + +Also convert to mtd_device_register(), since we don't need the 2nd and +3rd parameters anymore. + +Signed-off-by: Brian Norris <computersforpeace@gmail.com> +Reviewed-by: Boris Brezillon <boris.brezillon@free-electrons.com> +--- + drivers/mtd/devices/m25p80.c | 8 ++------ + drivers/mtd/spi-nor/fsl-quadspi.c | 4 +--- + drivers/mtd/spi-nor/nxp-spifi.c | 4 +--- + 3 files changed, 4 insertions(+), 12 deletions(-) + +--- a/drivers/mtd/devices/m25p80.c ++++ b/drivers/mtd/devices/m25p80.c +@@ -197,7 +197,6 @@ static int m25p80_erase(struct spi_nor * + */ + static int m25p_probe(struct spi_device *spi) + { +- struct mtd_part_parser_data ppdata; + struct flash_platform_data *data; + struct m25p *flash; + struct spi_nor *nor; +@@ -249,11 +248,8 @@ static int m25p_probe(struct spi_device + if (ret) + return ret; + +- ppdata.of_node = spi->dev.of_node; +- +- return mtd_device_parse_register(&nor->mtd, NULL, &ppdata, +- data ? data->parts : NULL, +- data ? data->nr_parts : 0); ++ return mtd_device_register(&nor->mtd, data ? data->parts : NULL, ++ data ? data->nr_parts : 0); + } + + +--- a/drivers/mtd/spi-nor/fsl-quadspi.c ++++ b/drivers/mtd/spi-nor/fsl-quadspi.c +@@ -927,7 +927,6 @@ static void fsl_qspi_unprep(struct spi_n + static int fsl_qspi_probe(struct platform_device *pdev) + { + struct device_node *np = pdev->dev.of_node; +- struct mtd_part_parser_data ppdata; + struct device *dev = &pdev->dev; + struct fsl_qspi *q; + struct resource *res; +@@ -1038,8 +1037,7 @@ static int fsl_qspi_probe(struct platfor + if (ret) + goto mutex_failed; + +- ppdata.of_node = np; +- ret = mtd_device_parse_register(mtd, NULL, &ppdata, NULL, 0); ++ ret = mtd_device_register(mtd, NULL, 0); + if (ret) + goto mutex_failed; + +--- a/drivers/mtd/spi-nor/nxp-spifi.c ++++ b/drivers/mtd/spi-nor/nxp-spifi.c +@@ -271,7 +271,6 @@ static void nxp_spifi_dummy_id_read(stru + static int nxp_spifi_setup_flash(struct nxp_spifi *spifi, + struct device_node *np) + { +- struct mtd_part_parser_data ppdata; + enum read_mode flash_read; + u32 ctrl, property; + u16 mode = 0; +@@ -361,8 +360,7 @@ static int nxp_spifi_setup_flash(struct + return ret; + } + +- ppdata.of_node = np; +- ret = mtd_device_parse_register(&spifi->nor.mtd, NULL, &ppdata, NULL, 0); ++ ret = mtd_device_register(&spifi->nor.mtd, NULL, 0); + if (ret) { + dev_err(spifi->dev, "mtd device parse failed\n"); + return ret; |