[OpenWrt-Devel] [PATCH][RFC][bcm53xx] mtd: nand: bcm_nand: switch from cmdlinepart to ofpart
Hauke Mehrtens
hauke at hauke-m.de
Sun Dec 7 10:08:02 EST 2014
On 12/07/2014 01:18 AM, Rafał Miłecki wrote:
> bcm_nand uses (and depends on) OF, so there isn't much sense to use
> cmdlinepart
>
> Signed-off-by: Rafał Miłecki <zajec5 at gmail.com>
> ---
> drivers/mtd/nand/bcm_nand.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/mtd/nand/bcm_nand.c b/drivers/mtd/nand/bcm_nand.c
> index 3c5b1d1..f2bd79e 100644
> --- a/drivers/mtd/nand/bcm_nand.c
> +++ b/drivers/mtd/nand/bcm_nand.c
> @@ -40,6 +40,7 @@
>
> #include <linux/mtd/mtd.h>
> #include <linux/mtd/nand.h>
> +#include <linux/mtd/partitions.h>
>
> #define NANDC_MAX_CHIPS 2 /* Only 2 CSn supported in NorthStar */
>
> @@ -1494,13 +1495,14 @@ static int __init bcmnand_idm_init(struct bcmnand_ctrl *ctrl)
> return 0;
> }
>
> -static const char * const part_probes[] = { "bcm47xxpart", "cmdlinepart", NULL };
> +static const char * const part_probes[] = { "bcm47xxpart", "ofpart", NULL };
This makes sense. Shouldn't ofpart be the first thing we probe for? This
way we can provide a partition map through device tree and overwrite the
auto probed one.
>
> /*
> * Top-level init function
> */
> static int bcmnand_probe(struct bcma_device *core)
> {
> + struct mtd_part_parser_data parser_data;
> struct device *dev = &core->dev;
> struct device_node *np = dev->of_node;
> struct bcmnand_ctrl *ctrl;
> @@ -1539,7 +1541,8 @@ static int bcmnand_probe(struct bcma_device *core)
> if (res)
> return res;
>
> - res = mtd_device_parse_register(&ctrl->mtd, part_probes, NULL, NULL, 0);
> + parser_data.of_node = np;
> + res = mtd_device_parse_register(&ctrl->mtd, part_probes, &parser_data, NULL, 0);
Is this needed for ofpart?
> if (res) {
> pr_err("%s: Failed to register MTD device: %d\n", DRV_NAME, res);
> return res;
>
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list