summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDmitry Eremin-Solenikov2011-05-29 23:02:22 +0200
committerArtem Bityutskiy2011-09-11 14:02:11 +0200
commitb6b0fae717bd01d6fcdcef70989c4bc9b77ac0c0 (patch)
tree618b98f7adcec80419222e62d544cd7cc08e34fb /drivers
parentmtd: m25p80: use ofpart through generic parsing (diff)
downloadkernel-qcow2-linux-b6b0fae717bd01d6fcdcef70989c4bc9b77ac0c0.tar.gz
kernel-qcow2-linux-b6b0fae717bd01d6fcdcef70989c4bc9b77ac0c0.tar.xz
kernel-qcow2-linux-b6b0fae717bd01d6fcdcef70989c4bc9b77ac0c0.zip
mtd: fsl_elbc_nand: use ofpart through generic parsing
Convert the driver to use ofpart partitions parsing through the generic parse_mtd_partitions(). Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> Signed-off-by: Artem Bityutskiy <dedekind1@gmail.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/mtd/nand/fsl_elbc_nand.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/mtd/nand/fsl_elbc_nand.c b/drivers/mtd/nand/fsl_elbc_nand.c
index d4ea5fe013b7..4d225ba33a64 100644
--- a/drivers/mtd/nand/fsl_elbc_nand.c
+++ b/drivers/mtd/nand/fsl_elbc_nand.c
@@ -842,13 +842,15 @@ static int __devinit fsl_elbc_nand_probe(struct platform_device *pdev)
struct resource res;
struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl;
static const char *part_probe_types[]
- = { "cmdlinepart", "RedBoot", NULL };
+ = { "cmdlinepart", "RedBoot", "ofpart", NULL };
struct mtd_partition *parts;
int ret;
int bank;
struct device *dev;
struct device_node *node = pdev->dev.of_node;
+ struct mtd_part_parser_data ppdata;
+ ppdata.of_node = pdev->dev.of_node;
if (!fsl_lbc_ctrl_dev || !fsl_lbc_ctrl_dev->regs)
return -ENODEV;
lbc = fsl_lbc_ctrl_dev->regs;
@@ -934,16 +936,10 @@ static int __devinit fsl_elbc_nand_probe(struct platform_device *pdev)
/* First look for RedBoot table or partitions on the command
* line, these take precedence over device tree information */
- ret = parse_mtd_partitions(&priv->mtd, part_probe_types, &parts, 0);
+ ret = parse_mtd_partitions(&priv->mtd, part_probe_types, &parts, &ppdata);
if (ret < 0)
goto err;
- if (ret == 0) {
- ret = of_mtd_parse_partitions(priv->dev, node, &parts);
- if (ret < 0)
- goto err;
- }
-
mtd_device_register(&priv->mtd, parts, ret);
printk(KERN_INFO "eLBC NAND device at 0x%llx, bank %d\n",