Thread (1 message) 1 message, 1 author, 2015-05-17

Re: [PATCH 6/7] mtd: brcmnand: run bcm47xxpart part parser in addition

From: Jonas Gorski <hidden>
Date: 2015-05-17 16:05:00

Hi Hauke,

On Sun, May 17, 2015 at 5:41 PM, Hauke Mehrtens [off-list ref] wrote:
quoted hunk
On the bcm53xx and bcm47xx SoC the bcm47xxpart partition parser is able
to parse the partitions automatically by reading some special header
used on these SoCs flash partition and some guessing. Without this
patch the default list is used, with this patch this partition parser
is used if the others haven't found a partition.

Signed-off-by: Hauke Mehrtens <hauke-5/S+JYg5SzeELgA04lAiVw@public.gmane.org>
---
 drivers/mtd/nand/brcmnand/brcmnand.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/mtd/nand/brcmnand/brcmnand.c b/drivers/mtd/nand/brcmnand/brcmnand.c
index 468a212..cc5dc1e 100644
--- a/drivers/mtd/nand/brcmnand/brcmnand.c
+++ b/drivers/mtd/nand/brcmnand/brcmnand.c
@@ -1879,6 +1879,9 @@ static int brcmnand_setup_dev(struct brcmnand_host *host)
        return 0;
 }

+static const char * const probes[] = {"cmdlinepart", "ofpart", "bcm47xxpart",
+                                     NULL};
+
I know this is a bit more work, but how about moving the
"linux,part-probe" parsing code from drivers/mtd/maps/physmap_of.c to
mtd_device_parse_register?

then mtd_device_parse_register could do something like

 if (!probes && ppdata && ppdata->of_node)
    probes = of_get_probes(ppdata->of_node);

and you could just add a linux,part-probe = "..."; property to the dts files

(It looks too easy/obvious so I guess I'm overlooking something fundamental ;P)
quoted hunk
 static int brcmnand_init_cs(struct brcmnand_host *host)
 {
        struct brcmnand_controller *ctrl = host->ctrl;
@@ -1956,7 +1959,7 @@ static int brcmnand_init_cs(struct brcmnand_host *host)
        if (nand_scan_tail(mtd))
                return -ENXIO;

-       return mtd_device_parse_register(mtd, NULL, &ppdata, NULL, 0);
+       return mtd_device_parse_register(mtd, probes, &ppdata, NULL, 0);
 }
Then you wouldn't need to change this at all.


Regards
Jonas
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help